Sha256: 655074655c17a7301b20ec2d0c6c620a06e92894ccaa6443b50bcac55233d4ca
Contents?: true
Size: 1.06 KB
Versions: 4
Compression:
Stored size: 1.06 KB
Contents
require 'deterministic' require 'dry-struct' require 'dry-types' require 'json' module Salestation class Web < Module module Types include Dry::Types.module end def initialize(errors: {}) @error_mapper = ErrorMapper.new(errors) end 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 end end require_relative './web/extractors' require_relative './web/responses' require_relative './web/error_mapper' require_relative './result_helper' require_relative './web/active_record_connection_management' require_relative './web/request_logger' require_relative './web/statsd_middleware'
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
salestation-1.0.2 | lib/salestation/web.rb |
salestation-1.0.1 | lib/salestation/web.rb |
salestation-1.0.0 | lib/salestation/web.rb |
salestation-0.13.0 | lib/salestation/web.rb |