Sha256: 1f555a9f305fd0903590199af0572db29facfee3bf97ada680d13f3a8e022279
Contents?: true
Size: 1.26 KB
Versions: 22
Compression:
Stored size: 1.26 KB
Contents
require "active_support/core_ext/hash" require "active_support/core_ext/object" require "json" require "rack/utils" # Rack::Utils.parse_nested_query # Controller public methods get turned into Lambda functions. class Jets::Controller class Base < Jets::Lambda::Functions include Layout include Callbacks include Rendering include Params def self.process(event, context={}, meth) t1 = Time.now Jets.logger.info "Processing by #{self}##{meth}" controller = new(event, context, meth) Jets.logger.info " Event: #{event.inspect}" Jets.logger.info " Parameters: #{controller.params(true).to_h.inspect}" controller.run_before_actions controller.send(meth) resp = controller.ensure_render controller.run_after_actions time = Time.now - t1 Jets.logger.info "Completed Status Code #{resp["statusCode"]} in #{time}s" resp end delegate :headers, to: :request attr_reader :request def initialize(event, context={}, meth) super @request = Request.new(event) end class_attribute :internal_controller def self.internal(value=nil) if !value.nil? self.internal_controller = value else self.internal_controller end end end end
Version data entries
22 entries across 22 versions & 1 rubygems