class Bocu::Middleware::Parser
Constants
- DATA_KEYS
Public Instance Methods
on_complete(env)
click to toggle source
# File lib/bocu/middleware/parser.rb, line 6 def on_complete(env) env[:body] = parse(env[:body]) end
Private Instance Methods
includes_data_keys?(json)
click to toggle source
# File lib/bocu/middleware/parser.rb, line 12 def includes_data_keys?(json) (json.keys & DATA_KEYS).any? end
parse(body)
click to toggle source
# File lib/bocu/middleware/parser.rb, line 16 def parse(body) json = parsed_json(body) metadata = json.slice!(*DATA_KEYS) if includes_data_keys?(json) { data: json, metadata: metadata || {} } end
parsed_json(body)
click to toggle source
# File lib/bocu/middleware/parser.rb, line 23 def parsed_json(body) MultiJson.load(body, symbolize_keys: true) end