Class: PactBroker::App
- Inherits:
-
Object
- Object
- PactBroker::App
- Includes:
- Logging
- Defined in:
- lib/pact_broker/app.rb
Instance Attribute Summary collapse
-
#configuration ⇒ Object
Returns the value of attribute configuration.
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize {|configuration| ... } ⇒ App
constructor
A new instance of App.
-
#use(*args, &block) ⇒ Object
Allows middleware to be inserted at the bottom of the shared middlware stack (ie just before the cascade is called for diagnostic, UI and API).
-
#use_api_auth(middleware) ⇒ Object
private API, not sure if this will continue to be supported.
- #use_custom_api(custom_api) ⇒ Object
- #use_custom_ui(custom_ui) ⇒ Object
-
#use_ui_auth(middleware) ⇒ Object
private API, not sure if this will continue to be supported.
Methods included from Logging
Constructor Details
#initialize {|configuration| ... } ⇒ App
Returns a new instance of App.
30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/pact_broker/app.rb', line 30 def initialize &block @app_builder = ::Rack::Builder.new @cascade_apps = [] @make_it_later_api_auth = ::Rack::PactBroker::ConfigurableMakeItLater.new(Rack::PactBroker::NoAuth) @make_it_later_ui_auth = ::Rack::PactBroker::ConfigurableMakeItLater.new(Rack::PactBroker::NoAuth) @configuration = PactBroker.configuration yield configuration post_configure prepare_database load_configuration_from_database seed_example_data end |
Instance Attribute Details
#configuration ⇒ Object
Returns the value of attribute configuration.
28 29 30 |
# File 'lib/pact_broker/app.rb', line 28 def configuration @configuration end |
Instance Method Details
#call(env) ⇒ Object
71 72 73 |
# File 'lib/pact_broker/app.rb', line 71 def call env running_app.call env end |
#use(*args, &block) ⇒ Object
Allows middleware to be inserted at the bottom of the shared middlware stack (ie just before the cascade is called for diagnostic, UI and API). To insert middleware at the top of the stack, initialize the middleware with the app, and run it manually. eg run MyMiddleware.new(app)
49 50 51 |
# File 'lib/pact_broker/app.rb', line 49 def use *args, &block @app_builder.use *args, &block end |
#use_api_auth(middleware) ⇒ Object
private API, not sure if this will continue to be supported
54 55 56 |
# File 'lib/pact_broker/app.rb', line 54 def use_api_auth middleware @make_it_later_api_auth.make_it_later(middleware) end |
#use_custom_api(custom_api) ⇒ Object
67 68 69 |
# File 'lib/pact_broker/app.rb', line 67 def use_custom_api custom_api @custom_api = custom_api end |
#use_custom_ui(custom_ui) ⇒ Object
63 64 65 |
# File 'lib/pact_broker/app.rb', line 63 def use_custom_ui custom_ui @custom_ui = custom_ui end |
#use_ui_auth(middleware) ⇒ Object
private API, not sure if this will continue to be supported
59 60 61 |
# File 'lib/pact_broker/app.rb', line 59 def use_ui_auth middleware @make_it_later_ui_auth.make_it_later(middleware) end |