Module: Rya::CoreExtensions::Time

Included in:
Process
Defined in:
lib/rya/core_extensions.rb

Instance Method Summary collapse

Instance Method Details

#date_and_time(fmt = "%F %T.%L") ⇒ Object

Nicely format date and time



113
114
115
# File 'lib/rya/core_extensions.rb', line 113

def date_and_time fmt = "%F %T.%L"
  Object::Time.now.strftime fmt
end

#time_it(title = "", logger = nil, run: true) ⇒ Object

Run whatever is in the block and log the time it takes.



118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
# File 'lib/rya/core_extensions.rb', line 118

def time_it title = "", logger = nil, run: true
  if run
    t = Object::Time.now

    yield

    time = Object::Time.now - t

    if title == ""
      msg = "Finished in #{time} seconds"
    else
      msg = "#{title} finished in #{time} seconds"
    end

    if logger
      logger.info msg
    else
      STDERR.puts msg
    end
  end
end