class Humr::Handler::Time

Public Instance Methods

_apache_common_log_time(s) click to toggle source
# File lib/humr/handler/time.rb, line 18
def _apache_common_log_time(s)
  ::Time.strptime(s, '%d/%b/%Y:%H:%M:%S %Z')
end
_ctime(s) click to toggle source
# File lib/humr/handler/time.rb, line 22
def _ctime(s)
  ::Time.strptime(s, '%c')
end
parse(s) click to toggle source
# File lib/humr/handler/time.rb, line 26
def parse(s)
  for parser in parsers
    parsed = parser[s] rescue nil
    return parsed if parsed
  end

  nil
end
parsers() click to toggle source
# File lib/humr/handler/time.rb, line 8
def parsers
  @parsers ||= [
    method(:_apache_common_log_time),
    method(:_ctime),
    ::Time.method(:iso8601),
    ::Time.method(:httpdate),
    ::Time.method(:rfc822)
  ]
end
replace(s, &block) click to toggle source
# File lib/humr/handler/time.rb, line 35
def replace(s, &block)
  parsed = parse(s)
  parsed.to_s.sub(/.*/, &block) if parsed
end