Class: Mail::ContentIdField

Inherits:
StructuredField show all
Defined in:
lib/mail/fields/content_id_field.rb

Constant Summary collapse

FIELD_NAME =
'content-id'
CAPITALIZED_FIELD =
"Content-ID"

Instance Method Summary collapse

Methods inherited from StructuredField

#default

Methods included from Utilities

included

Methods included from CommonField

included

Constructor Details

#initialize(*args) ⇒ ContentIdField

Returns a new instance of ContentIdField.



11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/mail/fields/content_id_field.rb', line 11

def initialize(*args)
  @uniq = 1
  if args.last.blank?
    self.name = CAPITALIZED_FIELD
    self.value = generate_content_id
  else
    super(CAPITALIZED_FIELD, strip_field(FIELD_NAME, args.last))
  end
  self.parse
  self

end

Instance Method Details

#content_idObject



38
39
40
# File 'lib/mail/fields/content_id_field.rb', line 38

def content_id
  element.message_id
end

#decodedObject



51
52
53
# File 'lib/mail/fields/content_id_field.rb', line 51

def decoded
  "#{to_s}"
end

#elementObject



30
31
32
# File 'lib/mail/fields/content_id_field.rb', line 30

def element
  @element ||= Mail::MessageIdsElement.new(value)
end

#encodedObject

TODO: Fix this up



47
48
49
# File 'lib/mail/fields/content_id_field.rb', line 47

def encoded
  "#{CAPITALIZED_FIELD}: #{to_s}\r\n"
end

#nameObject



34
35
36
# File 'lib/mail/fields/content_id_field.rb', line 34

def name
  'Content-ID'
end

#parse(val = value) ⇒ Object



24
25
26
27
28
# File 'lib/mail/fields/content_id_field.rb', line 24

def parse(val = value)
  unless val.blank?
    @element = Mail::MessageIdsElement.new(val)
  end
end

#to_sObject



42
43
44
# File 'lib/mail/fields/content_id_field.rb', line 42

def to_s
  "<#{content_id}>"
end