Sha256: fb692db19c46ae1a390ac1056c08bc8f95b492a1617e0a4b267ac2aac6f44217
Contents?: true
Size: 1.82 KB
Versions: 3
Compression:
Stored size: 1.82 KB
Contents
# frozen_string_literal: true class Rack::App::Endpoint::Config def to_hash error_handler middleware_builders_blocks request_path request_methods defined_request_path @raw end def payload_builder @raw[:payload].parser_builder end def application @raw[:application] end def app_class @raw[:app_class] || raise('missing app class') end def serializer serializer_builder.to_serializer end def payload app_class.__send__(:payload) end def payload_parser payload.parser.to_parser end def serializer_builder @raw[:serializer_builder] ||= app_class.__send__(:formats) end def error_handler @raw[:error_handler] ||= Rack::App::ErrorHandler.new end def middleware_builders_blocks @raw[:middleware_builders_blocks] ||= [] end def endpoint_method_name @raw[:method_name] ||= register_method_to_app_class end def request_methods case @raw[:request_methods] || raise('missing config: request_methods') when Rack::App::Constants::HTTP::METHOD::ANY Rack::App::Constants::HTTP::METHODS when ::Array @raw[:request_methods].map(&:to_sym) else [@raw[:request_methods]].flatten.map(&:to_sym) end end def request_path Rack::App::Utils.normalize_path(@raw[:request_path] || raise('missing request_path!')) end def defined_request_path Rack::App::Utils.normalize_path(@raw[:defined_request_path] ||= request_path) end def description @raw[:route][:description] || @raw[:route][:desc] rescue nil end protected def initialize(raw) @raw = raw end def register_method_to_app_class method_name = '__' + ::Rack::App::Utils.uuid app_class.__send__(:define_method, method_name, &logic_block) method_name end def logic_block @raw[:user_defined_logic] end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rack-app-5.12.0 | lib/rack/app/endpoint/config.rb |
rack-app-5.11.1 | lib/rack/app/endpoint/config.rb |
rack-app-5.11.0 | lib/rack/app/endpoint/config.rb |