Class: Mail::ContentDispositionField
Constant Summary
collapse
- FIELD_NAME =
'content-disposition'
- CAPITALIZED_FIELD =
'Content-Disposition'
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, #match_to_s, #paren, #quote_atom, #quote_phrase, #quote_token, #token_safe?, #unbracket, #underscoreize, #unparen, #unquote, #uri_escape, #uri_unescape
#default, #field_length, #name, #name=, #responsible_for?, #to_s, #value, #value=
Constructor Details
10
11
12
13
14
15
|
# File 'lib/mail/fields/content_disposition_field.rb', line 10
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
#decoded ⇒ Object
59
60
61
62
63
64
65
66
|
# File 'lib/mail/fields/content_disposition_field.rb', line 59
def decoded
if parameters.length > 0
p = "; #{parameters.decoded}"
else
p = ""
end
"#{disposition_type}" + p
end
|
#disposition_type ⇒ Object
27
28
29
|
# File 'lib/mail/fields/content_disposition_field.rb', line 27
def disposition_type
element.disposition_type
end
|
#element ⇒ Object
23
24
25
|
# File 'lib/mail/fields/content_disposition_field.rb', line 23
def element
@element ||= Mail::ContentDispositionElement.new(value)
end
|
#encoded ⇒ Object
50
51
52
53
54
55
56
57
|
# File 'lib/mail/fields/content_disposition_field.rb', line 50
def encoded
if parameters.length > 0
p = ";\r\n\t#{parameters.encoded}\r\n"
else
p = ""
end
"#{CAPITALIZED_FIELD}: #{disposition_type}" + p
end
|
#filename ⇒ Object
37
38
39
40
41
42
43
44
45
46
47
|
# File 'lib/mail/fields/content_disposition_field.rb', line 37
def filename
case
when !parameters['filename'].blank?
@filename = parameters['filename']
when !parameters['name'].blank?
@filename = parameters['name']
else
@filename = nil
end
@filename
end
|
#parameters ⇒ Object
31
32
33
34
35
|
# File 'lib/mail/fields/content_disposition_field.rb', line 31
def parameters
@parameters = ParameterHash.new
element.parameters.each { |p| @parameters.merge!(p) }
@parameters
end
|
#parse(val = value) ⇒ Object
17
18
19
20
21
|
# File 'lib/mail/fields/content_disposition_field.rb', line 17
def parse(val = value)
unless val.blank?
@element = Mail::ContentDispositionElement.new(val)
end
end
|