Class: Mail::ReceivedElement

Inherits:
Object
  • Object
show all
Includes:
Utilities
Defined in:
lib/mail/elements/received_element.rb

Constant Summary

Constants included from Patterns

Patterns::ATOM_UNSAFE, Patterns::CONTROL_CHAR, Patterns::CRLF, Patterns::FIELD_BODY, Patterns::FIELD_LINE, Patterns::FIELD_NAME, Patterns::FWS, Patterns::HEADER_LINE, Patterns::PHRASE_UNSAFE, Patterns::QP_SAFE, Patterns::QP_UNSAFE, Patterns::TEXT, Patterns::TOKEN_UNSAFE, Patterns::WSP

Instance Method Summary collapse

Methods included from Utilities

#atom_safe?, #bracket, #capitalize_field, #constantize, #dasherize, #dquote, #escape_paren, #map_lines, #map_with_index, #match_to_s, #paren, #quote_atom, #quote_phrase, #quote_token, #token_safe?, #unbracket, #underscoreize, #unparen, #unquote, #uri_escape, #uri_unescape

Constructor Details

#initialize(string) ⇒ ReceivedElement

Returns a new instance of ReceivedElement.



7
8
9
10
11
12
13
14
15
# File 'lib/mail/elements/received_element.rb', line 7

def initialize( string )
  parser = Mail::ReceivedParser.new
  if tree = parser.parse(string)
    @date_time = ::DateTime.parse("#{tree.date_time.date.text_value} #{tree.date_time.time.text_value}")
    @info = tree.name_val_list.text_value
  else
    raise Mail::Field::ParseError, "ReceivedElement can not parse |#{string}|\nReason was: #{parser.failure_reason}\n"
  end
end

Instance Method Details

#date_timeObject



17
18
19
# File 'lib/mail/elements/received_element.rb', line 17

def date_time
  @date_time
end

#infoObject



21
22
23
# File 'lib/mail/elements/received_element.rb', line 21

def info
  @info
end

#to_s(*args) ⇒ Object



25
26
27
# File 'lib/mail/elements/received_element.rb', line 25

def to_s(*args)
  "#{@info}; #{@date_time.to_s(*args)}"
end