Module: Skooma::BodyParsers

Defined in:
lib/skooma/body_parsers.rb

Defined Under Namespace

Modules: FormURLEncodedParser, JSONParser, MultipartParser

Constant Summary collapse

DEFAULT_PARSER =
->(body, **_options) { body }

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.parsersObject

Returns the value of attribute parsers.



19
20
21
# File 'lib/skooma/body_parsers.rb', line 19

def parsers
  @parsers
end

Class Method Details

.[](media_type) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/skooma/body_parsers.rb', line 11

def [](media_type)
  key = normalize_media_type(media_type)
  parsers[key] ||
    find_suffix_parser(key) ||
    find_fallback_parser(key) ||
    DEFAULT_PARSER
end

.register(*media_types, parser) ⇒ Object



21
22
23
24
25
# File 'lib/skooma/body_parsers.rb', line 21

def register(*media_types, parser)
  media_types.each do |media_type|
    parsers[normalize_media_type(media_type)] = parser
  end
end