Module: OpenapiFirst

Extended by:
Plugins
Defined in:
lib/openapi_first.rb,
lib/openapi_first/errors.rb,
lib/openapi_first/schema.rb,
lib/openapi_first/failure.rb,
lib/openapi_first/plugins.rb,
lib/openapi_first/version.rb,
lib/openapi_first/definition.rb,
lib/openapi_first/body_parser.rb,
lib/openapi_first/configuration.rb,
lib/openapi_first/error_response.rb,
lib/openapi_first/plugins/default.rb,
lib/openapi_first/plugins/jsonapi.rb,
lib/openapi_first/runtime_request.rb,
lib/openapi_first/runtime_response.rb,
lib/openapi_first/definition/response.rb,
lib/openapi_first/definition/operation.rb,
lib/openapi_first/definition/path_item.rb,
lib/openapi_first/definition/responses.rb,
lib/openapi_first/definition/request_body.rb,
lib/openapi_first/schema/validation_error.rb,
lib/openapi_first/schema/validation_result.rb,
lib/openapi_first/request_validation/validator.rb,
lib/openapi_first/response_validation/validator.rb,
lib/openapi_first/middlewares/request_validation.rb,
lib/openapi_first/plugins/default/error_response.rb,
lib/openapi_first/plugins/jsonapi/error_response.rb,
lib/openapi_first/middlewares/response_validation.rb,
lib/openapi_first/request_validation/request_body_validator.rb

Defined Under Namespace

Modules: Bundle, ErrorResponse, Middlewares, Plugins, RequestValidation, ResponseValidation Classes: BodyParser, Configuration, Definition, Error, Failure, NotFoundError, ParseError, RequestInvalidError, ResponseInvalidError, ResponseNotFoundError, RuntimeRequest, RuntimeResponse, Schema

Constant Summary collapse

REQUEST =

Key in rack to find instance of RuntimeRequest

'openapi.request'
VERSION =
'1.1.1'

Constants included from Plugins

Plugins::PLUGINS

Class Method Summary collapse

Methods included from Plugins

plugin, register

Class Method Details

.configurationObject



19
20
21
# File 'lib/openapi_first.rb', line 19

def configuration
  @configuration ||= Configuration.new
end

.configure {|configuration| ... } ⇒ Object

Yields:



23
24
25
# File 'lib/openapi_first.rb', line 23

def configure
  yield configuration
end

.load(spec_path, only: nil) ⇒ Object



31
32
33
34
35
# File 'lib/openapi_first.rb', line 31

def self.load(spec_path, only: nil)
  resolved = Bundle.resolve(spec_path)
  resolved['paths'].filter!(&->(key, _) { only.call(key) }) if only
  Definition.new(resolved, spec_path)
end