Sha256: d36d834440e51ec35e3ba1e344a94c73089339c350a5637be41fa5df3c95186f

Contents?: true

Size: 1.22 KB

Versions: 36

Compression:

Stored size: 1.22 KB

Contents

# TODO: externalDocs
# TODO: callbacks
# TODO: security
# TODO: servers

module OpenAPIParser::Schemas
  class Operation < Base
    include OpenAPIParser::ParameterValidatable

    openapi_attr_values :tags, :summary, :description, :deprecated

    openapi_attr_value :operation_id, schema_key: :operationId

    openapi_attr_list_object :parameters, Parameter, reference: true

    # @!attribute [r] request_body
    #   @return [OpenAPIParser::Schemas::RequestBody, nil] return OpenAPI3 object
    openapi_attr_object :request_body, RequestBody, reference: true, schema_key: :requestBody

    # @!attribute [r] responses
    #   @return [OpenAPIParser::Schemas::Responses, nil] return OpenAPI3 object
    openapi_attr_object :responses, Responses, reference: false

    def validate_request_body(content_type, params, options)
      request_body&.validate_request_body(content_type, params, options)
    end

    # @param [OpenAPIParser::RequestOperation::ValidatableResponseBody] response_body
    # @param [OpenAPIParser::SchemaValidator::ResponseValidateOptions] response_validate_options
    def validate_response(response_body, response_validate_options)
      responses&.validate(response_body, response_validate_options)
    end
  end
end

Version data entries

36 entries across 36 versions & 1 rubygems

Version Path
openapi_parser-2.2.3 lib/openapi_parser/schemas/operation.rb
openapi_parser-2.2.2 lib/openapi_parser/schemas/operation.rb
openapi_parser-2.2.1 lib/openapi_parser/schemas/operation.rb
openapi_parser-2.2.0 lib/openapi_parser/schemas/operation.rb
openapi_parser-2.1.0 lib/openapi_parser/schemas/operation.rb
openapi_parser-2.0.0 lib/openapi_parser/schemas/operation.rb
openapi_parser-1.0.0 lib/openapi_parser/schemas/operation.rb
openapi_parser-1.0.0.beta1 lib/openapi_parser/schemas/operation.rb
openapi_parser-0.15.0 lib/openapi_parser/schemas/operation.rb
openapi_parser-0.14.1 lib/openapi_parser/schemas/operation.rb
openapi_parser-0.14.0 lib/openapi_parser/schemas/operation.rb
openapi_parser-0.13.0 lib/openapi_parser/schemas/operation.rb
openapi_parser-0.12.1 lib/openapi_parser/schemas/operation.rb
openapi_parser-0.12.0 lib/openapi_parser/schemas/operation.rb
openapi_parser-0.11.2 lib/openapi_parser/schemas/operation.rb
openapi_parser-0.11.1 lib/openapi_parser/schemas/operation.rb
openapi_parser-0.11.0 lib/openapi_parser/schemas/operation.rb
openapi_parser-0.10.0 lib/openapi_parser/schemas/operation.rb
openapi_parser-0.9.0 lib/openapi_parser/schemas/operation.rb
openapi_parser-0.8.0 lib/openapi_parser/schemas/operation.rb