Module: OpenapiFirst
- Defined in:
- lib/openapi_first.rb,
lib/openapi_first/config.rb,
lib/openapi_first/errors.rb,
lib/openapi_first/router.rb,
lib/openapi_first/plugins.rb,
lib/openapi_first/version.rb,
lib/openapi_first/definition.rb,
lib/openapi_first/use_router.rb,
lib/openapi_first/body_parser.rb,
lib/openapi_first/error_response.rb,
lib/openapi_first/definition/schema.rb,
lib/openapi_first/request_validation.rb,
lib/openapi_first/response_validator.rb,
lib/openapi_first/definition/response.rb,
lib/openapi_first/response_validation.rb,
lib/openapi_first/definition/operation.rb,
lib/openapi_first/definition/path_item.rb,
lib/openapi_first/definition/parameters.rb,
lib/openapi_first/definition/has_content.rb,
lib/openapi_first/request_body_validator.rb,
lib/openapi_first/definition/request_body.rb,
lib/openapi_first/error_responses/default.rb,
lib/openapi_first/definition/schema/result.rb,
lib/openapi_first/error_responses/json_api.rb,
lib/openapi_first/request_validation_error.rb,
lib/openapi_first/definition/path_parameters.rb,
lib/openapi_first/definition/query_parameters.rb,
lib/openapi_first/definition/cookie_parameters.rb,
lib/openapi_first/definition/header_parameters.rb
Defined Under Namespace
Modules: ErrorResponses, HasContent, Plugins, UseRouter Classes: BodyParser, BodyParsingError, Config, CookieParameters, Definition, Error, ErrorResponse, HeaderParameters, NotFoundError, Operation, Parameters, PathItem, PathParameters, QueryParameters, RequestBody, RequestBodyValidator, RequestInvalidError, RequestValidation, RequestValidationError, Response, ResponseBodyInvalidError, ResponseCodeNotFoundError, ResponseContentTypeNotFoundError, ResponseHeaderInvalidError, ResponseInvalid, ResponseValidation, ResponseValidator, Router, Schema
Constant Summary collapse
- OPERATION =
The OpenAPI operation for the current request
'openapi.operation'- PARAMS =
Merged parsed path and query parameters
'openapi.params'- QUERY_PARAMS =
Parsed query parameters
'openapi.query'- PATH_PARAMS =
Parsed path parameters
'openapi.path_params'- HEADER_PARAMS =
Parsed header parameters, except for Content-Type, Accept and Authorization
'openapi.headers'- COOKIE_PARAMS =
Parsed cookie parameter values
'openapi.cookies'- REQUEST_BODY =
The parsed request body
'openapi.parsed_request_body'- VERSION =
'1.0.0.beta6'
Class Method Summary collapse
Class Method Details
.load(spec_path, only: nil) ⇒ Object
39 40 41 42 43 44 45 46 |
# File 'lib/openapi_first.rb', line 39 def self.load(spec_path, only: nil) resolved = Dir.chdir(File.dirname(spec_path)) do content = YAML.load_file(File.basename(spec_path)) JsonRefs.call(content, resolve_local_ref: true, resolve_file_ref: true) end resolved['paths'].filter!(&->(key, _) { only.call(key) }) if only Definition.new(resolved, spec_path) end |