Sha256: 30c6ccf2952fe62b6492d36f95347b3bddb9373e1666fb58b64d21de04b8a233

Contents?: true

Size: 710 Bytes

Versions: 6

Compression:

Stored size: 710 Bytes

Contents

class Jets::Controller::Middleware::Local
  class MimicAwsCall
    extend Memoist

    def initialize(route, env)
      @route, @env = route, env
    end

    def vars
      {
        'jets.controller' => controller,
        'lambda.context' => context,
        'lambda.event' => event,
        'lambda.meth' => meth,
      }
    end

    # Actual controller instance
    def controller
      controller_class = @route.controller_name.constantize
      meth = @route.action_name
      controller_class.new(event, context, meth)
    end

    def meth
      @route.action_name
    end

    def event
      ApiGateway.new(@route, @env).event
    end
    memoize :event

    def context
      {}
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
jets-1.1.5 lib/jets/controller/middleware/local/mimic_aws_call.rb
jets-1.1.4 lib/jets/controller/middleware/local/mimic_aws_call.rb
jets-1.1.3 lib/jets/controller/middleware/local/mimic_aws_call.rb
jets-1.1.2 lib/jets/controller/middleware/local/mimic_aws_call.rb
jets-1.1.1 lib/jets/controller/middleware/local/mimic_aws_call.rb
jets-1.1.0 lib/jets/controller/middleware/local/mimic_aws_call.rb