Class: Embargoed::MaintenancePage::Base
- Inherits:
-
Object
- Object
- Embargoed::MaintenancePage::Base
- Defined in:
- lib/embargoed/maintenance_page/base.rb
Instance Attribute Summary collapse
-
#reason ⇒ Object
readonly
Returns the value of attribute reason.
Class Method Summary collapse
-
.extension ⇒ Object
Override with a file extension value like ‘html’ or ‘json’.
-
.media_types ⇒ Object
Override with an array of media type strings.
Instance Method Summary collapse
- #custom_path ⇒ Object
- #extension ⇒ Object
-
#initialize(reason = nil, options = {}) ⇒ Base
constructor
A new instance of Base.
- #media_types ⇒ Object
- #rack_response(code = nil, retry_after = nil) ⇒ Object
Constructor Details
#initialize(reason = nil, options = {}) ⇒ Base
6 7 8 9 |
# File 'lib/embargoed/maintenance_page/base.rb', line 6 def initialize(reason = nil, = {}) = .is_a?(Hash) ? : {} @reason = reason end |
Instance Attribute Details
#reason ⇒ Object (readonly)
Returns the value of attribute reason.
4 5 6 |
# File 'lib/embargoed/maintenance_page/base.rb', line 4 def reason @reason end |
Class Method Details
.extension ⇒ Object
Override with a file extension value like ‘html’ or ‘json’
23 24 25 |
# File 'lib/embargoed/maintenance_page/base.rb', line 23 def self.extension raise NotImplementedError, '.extension must be overridden in subclasses' end |
.media_types ⇒ Object
Override with an array of media type strings. i.e. text/html
17 18 19 |
# File 'lib/embargoed/maintenance_page/base.rb', line 17 def self.media_types raise NotImplementedError, '.media_types must be overridden in subclasses' end |
Instance Method Details
#custom_path ⇒ Object
28 29 30 |
# File 'lib/embargoed/maintenance_page/base.rb', line 28 def custom_path Pathname.new(.config.maintenance_pages_path).join(filename) end |
#extension ⇒ Object
26 |
# File 'lib/embargoed/maintenance_page/base.rb', line 26 def extension() self.class.extension end |
#media_types ⇒ Object
20 |
# File 'lib/embargoed/maintenance_page/base.rb', line 20 def media_types() self.class.media_types end |
#rack_response(code = nil, retry_after = nil) ⇒ Object
11 12 13 14 |
# File 'lib/embargoed/maintenance_page/base.rb', line 11 def rack_response(code = nil, retry_after = nil) code ||= .config.default_response_code [code, headers(retry_after), body] end |