lib/addy_lambda/common.rb in addy_lambda-0.1.3 vs lib/addy_lambda/common.rb in addy_lambda-0.1.4
- old
+ new
@@ -2,35 +2,36 @@
module AddyLambda
# Generic methods such as logging, error handling HTTP requests etc.
class Common
VARIABLE_DIRECT = 'direct'.freeze
+ VARIABLE_QUERYSTRING = 'querystring'.freeze
def self.generic_log(logger, event, context)
logger.debug('## EVENT')
logger.debug(event.inspect)
logger.debug('## CONTEXT')
logger.debug(context.inspect)
end
def self.get_body_as_object(event)
- body_as_object = {}
-
if event.key?('body') and event['body'].is_a? String
- body_as_object = JSON.parse(event['body'])
+ JSON.parse(event['body'])
elsif event.key?('body')
- body_as_object = event['body']
+ event['body']
+ else
+ event
end
-
- body_as_object
end
def self.get_parameter(event, parameter, type, default_value = nil)
event_body = get_body_as_object(event)
case type
when VARIABLE_DIRECT
event_body.fetch(parameter, default_value)
+ when VARIABLE_QUERYSTRING
+ event['queryStringParameters'].fetch(parameter, default_value)
else
default_value
end
end