Class: Salestation::Web
- Inherits:
-
Module
- Object
- Module
- Salestation::Web
- Defined in:
- lib/salestation/web.rb,
lib/salestation/web/responses.rb,
lib/salestation/web/extractors.rb,
lib/salestation/web/ip_address.rb,
lib/salestation/web/error_mapper.rb,
lib/salestation/web/request_logger.rb,
lib/salestation/web/input_validator.rb,
lib/salestation/web/statsd_middleware.rb,
lib/salestation/web/input_validators/accept_header.rb,
lib/salestation/web/active_record_connection_management.rb,
lib/salestation/web/input_validators/content_type_header.rb
Defined Under Namespace
Modules: Extractors, IPAddress, InputValidators, Responses, Types Classes: ActiveRecordConnectionManagement, ErrorMapper, InputValidator, RequestLogger, StatsdMiddleware
Instance Method Summary collapse
- #included(base) ⇒ Object
-
#initialize(errors: {}) ⇒ Web
constructor
A new instance of Web.
Constructor Details
#initialize(errors: {}) ⇒ Web
Returns a new instance of Web.
14 15 16 |
# File 'lib/salestation/web.rb', line 14 def initialize(errors: {}) @error_mapper = ErrorMapper.new(errors) end |
Instance Method Details
#included(base) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/salestation/web.rb', line 18 def included(base) error_mapper = @error_mapper base.class_eval do const_set :Responses, Salestation::Web::Responses define_method(:process) do |response| result = if response.value.is_a?(Salestation::Web::Responses::Response) response.value else response.map_err(error_mapper.map).value end status result.status headers result.headers json result.body end end end |