Sha256: 1aea526b36367fa187bbf5ab81090155aadd07f152148deb930ad946976a0503
Contents?: true
Size: 1.44 KB
Versions: 5
Compression:
Stored size: 1.44 KB
Contents
class Rack::App::Endpoint::Config def to_hash error_handler middleware_builders_blocks request_path request_method return @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_method (@raw[:request_method] || raise('missing request_method!')).to_s.upcase end def request_path Rack::App::Utils.normalize_path(@raw[:request_path] || raise('missing 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) return method_name end def logic_block @raw[:user_defined_logic] end end
Version data entries
5 entries across 5 versions & 1 rubygems