Class: ActionDispatch::Http::ContentDisposition
- Defined in:
- actionpack/lib/action_dispatch/http/content_disposition.rb
Overview
:nodoc:
Constant Summary collapse
- TRADITIONAL_ESCAPED_CHAR =
/[^ A-Za-z0-9!\#$+.^_`|~-]/
- RFC_5987_ESCAPED_CHAR =
/[^A-Za-z0-9!\#$&+.^_`|~-]/
Instance Attribute Summary collapse
-
#disposition ⇒ Object
readonly
Returns the value of attribute disposition.
-
#filename ⇒ Object
readonly
Returns the value of attribute filename.
Class Method Summary collapse
Instance Method Summary collapse
- #ascii_filename ⇒ Object
-
#initialize(disposition:, filename:) ⇒ ContentDisposition
constructor
A new instance of ContentDisposition.
- #to_s ⇒ Object
- #utf8_filename ⇒ Object
Constructor Details
#initialize(disposition:, filename:) ⇒ ContentDisposition
Returns a new instance of ContentDisposition.
12 13 14 15 |
# File 'actionpack/lib/action_dispatch/http/content_disposition.rb', line 12 def initialize(disposition:, filename:) @disposition = disposition @filename = filename end |
Instance Attribute Details
#disposition ⇒ Object (readonly)
Returns the value of attribute disposition
10 11 12 |
# File 'actionpack/lib/action_dispatch/http/content_disposition.rb', line 10 def disposition @disposition end |
#filename ⇒ Object (readonly)
Returns the value of attribute filename
10 11 12 |
# File 'actionpack/lib/action_dispatch/http/content_disposition.rb', line 10 def filename @filename end |
Class Method Details
.format(disposition:, filename:) ⇒ Object
6 7 8 |
# File 'actionpack/lib/action_dispatch/http/content_disposition.rb', line 6 def self.format(disposition:, filename:) new(disposition: disposition, filename: filename).to_s end |
Instance Method Details
#ascii_filename ⇒ Object
19 20 21 |
# File 'actionpack/lib/action_dispatch/http/content_disposition.rb', line 19 def ascii_filename 'filename="' + percent_escape(I18n.transliterate(filename), TRADITIONAL_ESCAPED_CHAR) + '"' end |
#to_s ⇒ Object
29 30 31 32 33 34 35 |
# File 'actionpack/lib/action_dispatch/http/content_disposition.rb', line 29 def to_s if filename "#{disposition}; #{ascii_filename}; #{utf8_filename}" else "#{disposition}" end end |
#utf8_filename ⇒ Object
25 26 27 |
# File 'actionpack/lib/action_dispatch/http/content_disposition.rb', line 25 def utf8_filename "filename*=UTF-8''" + percent_escape(filename, RFC_5987_ESCAPED_CHAR) end |