Class: Mail::ContentDispositionField

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

Constant Summary collapse

FIELD_NAME =
'content-disposition'
CAPITALIZED_FIELD =
'Content-Disposition'

Instance Method Summary collapse

Methods inherited from StructuredField

#default

Methods included from Utilities

included

Methods included from CommonField

included

Constructor Details

#initialize(*args) ⇒ ContentDispositionField

Returns a new instance of ContentDispositionField.



11
12
13
# File 'lib/mail/fields/content_disposition_field.rb', line 11

def initialize(*args)
  super(CAPITALIZED_FIELD, strip_field(FIELD_NAME, args.last))
end

Instance Method Details

#decodedObject



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

def decoded
  value
end

#disposition_typeObject



24
25
26
# File 'lib/mail/fields/content_disposition_field.rb', line 24

def disposition_type
  element.disposition_type
end

#elementObject



20
21
22
# File 'lib/mail/fields/content_disposition_field.rb', line 20

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

#encodedObject

TODO: Fix this up



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

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

#filenameObject



34
35
36
37
38
39
40
41
42
43
44
# File 'lib/mail/fields/content_disposition_field.rb', line 34

def filename
  case
  when !parameters['filename'].blank?
    @filename = parameters['filename']
  when !parameters['name'].blank?
    @filename = parameters['name']
  else 
    @filename = nil
  end
  @filename
end

#parametersObject



28
29
30
31
32
# File 'lib/mail/fields/content_disposition_field.rb', line 28

def parameters
  @parameters = ParameterHash.new
  element.parameters.each { |p| @parameters.merge!(p) }
  @parameters
end

#treeObject



15
16
17
18
# File 'lib/mail/fields/content_disposition_field.rb', line 15

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