Class: Mail::ReceivedField
Constant Summary
collapse
- FIELD_NAME =
'received'
- CAPITALIZED_FIELD =
'Received'
Constants included
from Patterns
Patterns::ATOM_UNSAFE, Patterns::CONTROL_CHAR, Patterns::CRLF, Patterns::FIELD_BODY, Patterns::FIELD_LINE, 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
#charset, #charset=, #default, #errors
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_parser, #uri_unescape
#default, #field_length, #name, #name=, #responsible_for?, #to_s, #value, #value=
Constructor Details
#initialize(value = nil, charset = 'utf-8') ⇒ ReceivedField
Returns a new instance of ReceivedField.
28
29
30
31
32
33
34
|
# File 'lib/mail/fields/received_field.rb', line 28
def initialize(value = nil, charset = 'utf-8')
self.charset = charset
super(CAPITALIZED_FIELD, strip_field(FIELD_NAME, value), charset)
self.parse
self
end
|
Instance Method Details
#date_time ⇒ Object
46
47
48
|
# File 'lib/mail/fields/received_field.rb', line 46
def date_time
@datetime ||= ::DateTime.parse("#{element.date_time}")
end
|
66
67
68
69
70
71
72
|
# File 'lib/mail/fields/received_field.rb', line 66
def decoded
if value.blank?
""
else
"#{info}; #{formatted_date}"
end
end
|
42
43
44
|
# File 'lib/mail/fields/received_field.rb', line 42
def element
@element ||= Mail::ReceivedElement.new(value)
end
|
58
59
60
61
62
63
64
|
# File 'lib/mail/fields/received_field.rb', line 58
def encoded
if value.blank?
"#{CAPITALIZED_FIELD}: \r\n"
else
"#{CAPITALIZED_FIELD}: #{info}; #{formatted_date}\r\n"
end
end
|
54
55
56
|
# File 'lib/mail/fields/received_field.rb', line 54
def formatted_date
date_time.strftime("%a, %d %b %Y %H:%M:%S ") + date_time.zone.delete(':')
end
|
50
51
52
|
# File 'lib/mail/fields/received_field.rb', line 50
def info
element.info
end
|
#parse(val = value) ⇒ Object
36
37
38
39
40
|
# File 'lib/mail/fields/received_field.rb', line 36
def parse(val = value)
unless val.blank?
@element = Mail::ReceivedElement.new(val)
end
end
|