Class: OpenApi::Components
- Inherits:
-
Object
- Object
- OpenApi::Components
- Includes:
- EquatableAsContent
- Defined in:
- lib/open_api/components.rb
Instance Attribute Summary collapse
-
#callbacks ⇒ Object
Returns the value of attribute callbacks.
-
#examples ⇒ Object
Returns the value of attribute examples.
-
#headers ⇒ Object
Returns the value of attribute headers.
-
#links ⇒ Object
Returns the value of attribute links.
-
#parameters ⇒ Object
Returns the value of attribute parameters.
-
#request_bodies ⇒ Object
Returns the value of attribute request_bodies.
-
#responses ⇒ Object
Returns the value of attribute responses.
-
#schemas ⇒ Object
Returns the value of attribute schemas.
-
#security_schemes ⇒ Object
Returns the value of attribute security_schemes.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(schemas: nil, responses: nil, parameters: nil, examples: nil, request_bodies: nil, headers: nil, security_schemes: nil, links: nil, callbacks: nil) ⇒ Components
constructor
A new instance of Components.
- #serializable_hash ⇒ Object
Methods included from EquatableAsContent
Constructor Details
#initialize(schemas: nil, responses: nil, parameters: nil, examples: nil, request_bodies: nil, headers: nil, security_schemes: nil, links: nil, callbacks: nil) ⇒ Components
Returns a new instance of Components.
7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/open_api/components.rb', line 7 def initialize(schemas: nil, responses: nil, parameters: nil, examples: nil, request_bodies: nil, headers: nil, security_schemes: nil, links: nil, callbacks: nil) self.schemas = schemas self.responses = responses self.parameters = parameters self.examples = examples self.request_bodies = request_bodies self.headers = headers self.security_schemes = security_schemes self.links = links self.callbacks = callbacks end |
Instance Attribute Details
#callbacks ⇒ Object
Returns the value of attribute callbacks.
5 6 7 |
# File 'lib/open_api/components.rb', line 5 def callbacks @callbacks end |
#examples ⇒ Object
Returns the value of attribute examples.
5 6 7 |
# File 'lib/open_api/components.rb', line 5 def examples @examples end |
#headers ⇒ Object
Returns the value of attribute headers.
5 6 7 |
# File 'lib/open_api/components.rb', line 5 def headers @headers end |
#links ⇒ Object
Returns the value of attribute links.
5 6 7 |
# File 'lib/open_api/components.rb', line 5 def links @links end |
#parameters ⇒ Object
Returns the value of attribute parameters.
5 6 7 |
# File 'lib/open_api/components.rb', line 5 def parameters @parameters end |
#request_bodies ⇒ Object
Returns the value of attribute request_bodies.
5 6 7 |
# File 'lib/open_api/components.rb', line 5 def request_bodies @request_bodies end |
#responses ⇒ Object
Returns the value of attribute responses.
5 6 7 |
# File 'lib/open_api/components.rb', line 5 def responses @responses end |
#schemas ⇒ Object
Returns the value of attribute schemas.
5 6 7 |
# File 'lib/open_api/components.rb', line 5 def schemas @schemas end |
#security_schemes ⇒ Object
Returns the value of attribute security_schemes.
5 6 7 |
# File 'lib/open_api/components.rb', line 5 def security_schemes @security_schemes end |
Class Method Details
.load(hash) ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/open_api/components.rb', line 33 def self.load(hash) return unless hash new( schemas: hash["schemas"]&.map { |k, v| [k, Reference.load(v) || Schema.load(v)] }&.to_h, responses: hash["responses"]&.map { |k, v| [k, Reference.load(v) || Response.load(v)] }&.to_h, parameters: hash["parameters"]&.map { |k, v| [k, Reference.load(v) || Parameter.load(v)] }&.to_h, examples: hash["examples"]&.map { |k, v| [k, Reference.load(v) || Example.load(v)] }&.to_h, request_bodies: hash["requestBodies"]&.map { |k, v| [k, Reference.load(v) || RequestBody.load(v)] }&.to_h, headers: hash["headers"]&.map { |k, v| [k, Reference.load(v) || Header.load(v)] }&.to_h, security_schemes: hash["securitySchemes"]&.map { |k, v| [k, Reference.load(v) || SecuritySchema.load(v)] }&.to_h, links: hash["links"]&.map { |k, v| [k, Reference.load(v) || Link.load(v)] }&.to_h, callbacks: hash["callbacks"]&.map { |k, v| [k, Reference.load(v) || Callback.load(v)] }&.to_h, ) end |
Instance Method Details
#serializable_hash ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/open_api/components.rb', line 19 def serializable_hash { "schemas" => schemas&.map { |k, v| [k.to_s, v.serializable_hash] }&.to_h, "responses" => responses&.map { |k, v| [k.to_s, v.serializable_hash] }&.to_h, "parameters" => parameters&.map { |k, v| [k.to_s, v.serializable_hash] }&.to_h, "examples" => examples&.map { |k, v| [k.to_s, v.serializable_hash] }&.to_h, "requestBodies" => request_bodies&.map { |k, v| [k.to_s, v.serializable_hash] }&.to_h, "headers" => headers&.map { |k, v| [k.to_s, v.serializable_hash] }&.to_h, "securitySchemes" => security_schemes&.map { |k, v| [k.to_s, v.serializable_hash] }&.to_h, "links" => links&.map { |k, v| [k.to_s, v.serializable_hash] }&.to_h, "callbacks" => callbacks&.map { |k, v| [k.to_s, v.serializable_hash] }&.to_h, }.compact end |