Module: Flipper::Api

Defined in:
lib/flipper/api.rb,
lib/flipper/api/error.rb,
lib/flipper/api/action.rb,
lib/flipper/api/middleware.rb,
lib/flipper/api/action_collection.rb,
lib/flipper/api/v1/actions/feature.rb,
lib/flipper/api/v1/decorators/gate.rb,
lib/flipper/api/v1/actions/features.rb,
lib/flipper/api/v1/decorators/feature.rb,
lib/flipper/api/v1/actions/boolean_gate.rb

Defined Under Namespace

Modules: V1 Classes: Action, ActionCollection, App, Middleware

Constant Summary collapse

CONTENT_TYPE =
'application/json'.freeze
Error =

All flipper api errors inherit from this.

Class.new(StandardError)
RequestMethodNotSupported =

Raised when a request method (get, post, etc.) is called for an action that does not know how to handle it.

Class.new(Error)

Class Method Summary collapse

Class Method Details

.app(flipper) {|builder| ... } ⇒ Object

Yields:

  • (builder)


9
10
11
12
13
14
15
16
# File 'lib/flipper/api.rb', line 9

def self.app(flipper)
  app = App.new(200,{ 'Content-Type' => CONTENT_TYPE }, [''])
  builder = Rack::Builder.new
  yield builder if block_given?
  builder.use Flipper::Api::Middleware, flipper
  builder.run app
  builder
end