class ActiveHook::App::Middleware

Public Class Methods

new(app) click to toggle source
# File lib/activehook/app/middleware.rb, line 4
def initialize(app)
  @app = app
end

Public Instance Methods

call(env) click to toggle source
# File lib/activehook/app/middleware.rb, line 8
def call(env)
  @env = env
  @req = Rack::Request.new(env)

  if validation_request? then response(Validation)
  #Not enabling webhook creation yet.
  #elsif creation_request? then response(Creation)
  else @app.call(@env)
  end
end
creation_request?() click to toggle source
# File lib/activehook/app/middleware.rb, line 23
def creation_request?
  @req.path == ActiveHook.config.creation_path && @req.post?
end
response(klass) click to toggle source
# File lib/activehook/app/middleware.rb, line 27
def response(klass)
  response =
    if klass.new(@req).start then { code: 200, status: true }
    else { code: 400, status: false }
    end
  [response[:code], { "Content-Type" => "application/json" }, [{ status: response[:status] }.to_json]]
end
validation_request?() click to toggle source
# File lib/activehook/app/middleware.rb, line 19
def validation_request?
  @req.path == ActiveHook.config.validation_path && @req.get?
end