lib/api_proxy/middleware.rb in api_proxy-0.1.3 vs lib/api_proxy/middleware.rb in api_proxy-0.2.3
- old
+ new
@@ -2,26 +2,17 @@
module ApiProxy
class Middleware
def initialize(app, namespace = :default)
@app = app
- @config = ApiProxy.configuration(namespace)
+ @namespace = namespace
end
def call(env)
- return @app.call(env) unless allow_request?(env)
+ builder = ApiProxy::ResponseBuilder.new(env, @namespace)
- builder = RequestOptionsBuilder.new(env, @config)
- request = ApiProxy::Request.new(builder)
+ return @app.call(env) unless builder.allow_request?
- response = request.result
-
- Rack::Response.new(response.to_s, response.code, request.headers)
- end
-
- def allow_request?(env)
- return false unless env['REQUEST_PATH'].start_with?(@config.request_starts_with)
-
- @config.request_allowed.call(env)
+ builder.response
end
end
end