Class: RequestHandler::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/request_handler/base.rb

Class Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(request:) ⇒ Base

Returns a new instance of Base.



29
30
31
32
# File 'lib/request_handler/base.rb', line 29

def initialize(request:)
  raise MissingArgumentError, request: 'is missing' if request.nil?
  @request = request
end

Class Attribute Details

.configObject

Returns the value of attribute config.



27
28
29
# File 'lib/request_handler/base.rb', line 27

def config
  @config
end

Class Method Details

.inherited(subclass) ⇒ Object



22
23
24
25
# File 'lib/request_handler/base.rb', line 22

def inherited(subclass)
  return if @config.nil?
  subclass.config = @config.deep_copy
end

.options(&block) ⇒ Object



17
18
19
20
# File 'lib/request_handler/base.rb', line 17

def options(&block)
  @config ||= ::Confstruct::Configuration.new
  @config.configure(&block)
end

Instance Method Details

#body_paramsObject



57
58
59
# File 'lib/request_handler/base.rb', line 57

def body_params
  @body_params ||= parse_body_params
end

#fieldsets_paramsObject



65
66
67
# File 'lib/request_handler/base.rb', line 65

def fieldsets_params
  @fieldsets_params ||= parse_fieldsets_params
end

#filter_paramsObject



34
35
36
# File 'lib/request_handler/base.rb', line 34

def filter_params
  @filter_params ||= parse_filter_params
end

#headersObject



53
54
55
# File 'lib/request_handler/base.rb', line 53

def headers
  @headers ||= HeaderParser.new(env: request.env).run
end

#include_paramsObject



45
46
47
# File 'lib/request_handler/base.rb', line 45

def include_params
  @include_params ||= parse_include_params
end

#multipart_paramsObject



61
62
63
# File 'lib/request_handler/base.rb', line 61

def multipart_params
  @multipart_params ||= parse_multipart_params
end

#page_paramsObject



38
39
40
41
42
43
# File 'lib/request_handler/base.rb', line 38

def page_params
  @page_params ||= PageParser.new(
    params:      params,
    page_config: lookup!('page')
  ).run
end

#query_paramsObject



69
70
71
# File 'lib/request_handler/base.rb', line 69

def query_params
  @query_params ||= parse_query_params
end

#sort_paramsObject



49
50
51
# File 'lib/request_handler/base.rb', line 49

def sort_params
  @sort_params ||= parse_sort_params
end