Module: Spree::Api::V2::ResourceControllerDecorator
- Defined in:
- app/controllers/spree/api/v2/resource_controller_decorator.rb
Class Method Summary collapse
Instance Method Summary collapse
- #app_name ⇒ Object
- #app_version ⇒ Object
- #required_schema ⇒ Object
- #required_schema_validation! ⇒ Object
- #rescue_schema_validation_error(exc) ⇒ Object
Class Method Details
.prepended(base) ⇒ Object
5 6 7 8 9 10 11 |
# File 'app/controllers/spree/api/v2/resource_controller_decorator.rb', line 5 def self.prepended(base) base.include SpreeCmCommissioner::WaitingRoomAuthorization base.before_action :required_schema_validation! base.rescue_from SpreeCmCommissioner::SchemaValidationError, with: :rescue_schema_validation_error base.attr_reader :schema end |
Instance Method Details
#app_name ⇒ Object
17 18 19 |
# File 'app/controllers/spree/api/v2/resource_controller_decorator.rb', line 17 def app_name request.headers['X-Cm-App-Name'] end |
#app_version ⇒ Object
13 14 15 |
# File 'app/controllers/spree/api/v2/resource_controller_decorator.rb', line 13 def app_version request.headers['X-Cm-App-Version'] end |
#required_schema ⇒ Object
30 31 32 |
# File 'app/controllers/spree/api/v2/resource_controller_decorator.rb', line 30 def required_schema nil end |
#required_schema_validation! ⇒ Object
21 22 23 24 25 26 27 28 |
# File 'app/controllers/spree/api/v2/resource_controller_decorator.rb', line 21 def required_schema_validation! return true if required_schema.nil? schema = required_schema.new(request: request) return true if schema.success? raise SpreeCmCommissioner::SchemaValidationError, schema. end |
#rescue_schema_validation_error(exc) ⇒ Object
34 35 36 |
# File 'app/controllers/spree/api/v2/resource_controller_decorator.rb', line 34 def rescue_schema_validation_error(exc) render_error_payload(exc., 422) end |