Class: OpenapiBlocks::OperationBuilder
- Inherits:
-
Object
- Object
- OpenapiBlocks::OperationBuilder
- Defined in:
- lib/openapi_blocks/operation_builder.rb
Overview
rubocop:disable Style/Documentation
Instance Attribute Summary collapse
-
#_description ⇒ Object
readonly
Returns the value of attribute _description.
-
#_parameters ⇒ Object
readonly
Returns the value of attribute _parameters.
-
#_responses ⇒ Object
readonly
Returns the value of attribute _responses.
-
#_security ⇒ Object
readonly
Returns the value of attribute _security.
-
#_summary ⇒ Object
readonly
Returns the value of attribute _summary.
-
#_tags ⇒ Object
readonly
Returns the value of attribute _tags.
Instance Method Summary collapse
- #description(value = nil) ⇒ Object
- #no_security! ⇒ Object
- #parameter(name, in:, type:, description: nil, required: false) ⇒ Object
- #response(status, description:, schema: nil) ⇒ Object
- #security(*schemes) ⇒ Object
- #summary(value = nil) ⇒ Object
- #tags(*values) ⇒ Object
- #to_h ⇒ Object
Instance Attribute Details
#_description ⇒ Object (readonly)
Returns the value of attribute _description.
5 6 7 |
# File 'lib/openapi_blocks/operation_builder.rb', line 5 def _description @_description end |
#_parameters ⇒ Object (readonly)
Returns the value of attribute _parameters.
5 6 7 |
# File 'lib/openapi_blocks/operation_builder.rb', line 5 def _parameters @_parameters end |
#_responses ⇒ Object (readonly)
Returns the value of attribute _responses.
5 6 7 |
# File 'lib/openapi_blocks/operation_builder.rb', line 5 def _responses @_responses end |
#_security ⇒ Object (readonly)
Returns the value of attribute _security.
5 6 7 |
# File 'lib/openapi_blocks/operation_builder.rb', line 5 def _security @_security end |
#_summary ⇒ Object (readonly)
Returns the value of attribute _summary.
5 6 7 |
# File 'lib/openapi_blocks/operation_builder.rb', line 5 def _summary @_summary end |
#_tags ⇒ Object (readonly)
Returns the value of attribute _tags.
5 6 7 |
# File 'lib/openapi_blocks/operation_builder.rb', line 5 def @_tags end |
Instance Method Details
#description(value = nil) ⇒ Object
11 12 13 |
# File 'lib/openapi_blocks/operation_builder.rb', line 11 def description(value = nil) value ? @_description = value : @_description end |
#no_security! ⇒ Object
42 43 44 |
# File 'lib/openapi_blocks/operation_builder.rb', line 42 def no_security! @_security = [] end |
#parameter(name, in:, type:, description: nil, required: false) ⇒ Object
19 20 21 22 23 24 25 26 27 28 |
# File 'lib/openapi_blocks/operation_builder.rb', line 19 def parameter(name, in:, type:, description: nil, required: false) @_parameters ||= [] @_parameters << { name: name, in: binding.local_variable_get(:in), type: type, description: description, required: required }.compact end |
#response(status, description:, schema: nil) ⇒ Object
30 31 32 33 34 35 36 |
# File 'lib/openapi_blocks/operation_builder.rb', line 30 def response(status, description:, schema: nil) @_responses ||= {} @_responses[status.to_s] = { description: description, schema: schema }.compact end |
#security(*schemes) ⇒ Object
38 39 40 |
# File 'lib/openapi_blocks/operation_builder.rb', line 38 def security(*schemes) @_security = schemes.map { |s| { s => [] } } end |
#summary(value = nil) ⇒ Object
7 8 9 |
# File 'lib/openapi_blocks/operation_builder.rb', line 7 def summary(value = nil) value ? @_summary = value : @_summary end |
#tags(*values) ⇒ Object
15 16 17 |
# File 'lib/openapi_blocks/operation_builder.rb', line 15 def (*values) values.any? ? @_tags = values : @_tags end |
#to_h ⇒ Object
46 47 48 49 50 51 52 53 54 55 |
# File 'lib/openapi_blocks/operation_builder.rb', line 46 def to_h { summary: @_summary, description: @_description, parameters: @_parameters, responses: @_responses, security: @_security, tags: @_tags }.compact end |