Class: Swagger::Blocks::Nodes::ComponentNode

Inherits:
Swagger::Blocks::Node show all
Defined in:
lib/swagger/blocks/nodes/component_node.rb

Constant Summary

Constants inherited from Swagger::Blocks::Node

Swagger::Blocks::Node::VERSION_2, Swagger::Blocks::Node::VERSION_3

Instance Attribute Summary

Attributes inherited from Swagger::Blocks::Node

#name, #version

Instance Method Summary collapse

Methods inherited from Swagger::Blocks::Node

#as_json, call, #data, #is_openapi_3_0?, #is_swagger_2_0?, #key, #keys, #ref?, #static_ref?, #value_as_json

Instance Method Details

#example(name, inline_keys = nil, &block) ⇒ Object



23
24
25
26
# File 'lib/swagger/blocks/nodes/component_node.rb', line 23

def example(name, inline_keys = nil, &block)
  self.data[:examples] ||= {}
  self.data[:examples][name] = Swagger::Blocks::Nodes::ExampleNode.call(version: version, inline_keys: inline_keys, &block)
end


18
19
20
21
# File 'lib/swagger/blocks/nodes/component_node.rb', line 18

def link(name, inline_keys = nil, &block)
  self.data[:links] ||= {}
  self.data[:links][name] = Swagger::Blocks::Nodes::LinkNode.call(version: version, inline_keys: inline_keys, &block)
end

#parameter(name, inline_keys = nil, &block) ⇒ Object



33
34
35
36
# File 'lib/swagger/blocks/nodes/component_node.rb', line 33

def parameter(name, inline_keys = nil, &block)
  self.data[:parameters] ||= {}
  self.data[:parameters][name] = Swagger::Blocks::Nodes::ParameterNode.call(version: version, inline_keys: inline_keys, &block)
end

#request_body(name, inline_keys = nil, &block) ⇒ Object



38
39
40
41
# File 'lib/swagger/blocks/nodes/component_node.rb', line 38

def request_body(name, inline_keys = nil, &block)
  self.data[:requestBodies] ||= {}
  self.data[:requestBodies][name] = Swagger::Blocks::Nodes::RequestBodyNode.call(version: version, inline_keys: inline_keys, &block)
end

#response(name, inline_keys = nil, &block) ⇒ Object



43
44
45
46
# File 'lib/swagger/blocks/nodes/component_node.rb', line 43

def response(name, inline_keys = nil, &block)
  self.data[:responses] ||= {}
  self.data[:responses][name] = Swagger::Blocks::Nodes::ResponseNode.call(version: version, inline_keys: inline_keys, &block)
end

#schema(name, inline_keys = nil, &block) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/swagger/blocks/nodes/component_node.rb', line 5

def schema(name, inline_keys = nil, &block)
  self.data[:schemas] ||= {}
  schema_node = self.data[:schemas][name]

  if schema_node
    # Merge this schema_node declaration into the previous one
    schema_node.instance_eval(&block)
  else
    # First time we've seen this schema_node
    self.data[:schemas][name] = Swagger::Blocks::Nodes::SchemaNode.call(version: '3.0.0', inline_keys: inline_keys, &block)
  end
end

#security_scheme(name, inline_keys = nil, &block) ⇒ Object



28
29
30
31
# File 'lib/swagger/blocks/nodes/component_node.rb', line 28

def security_scheme(name, inline_keys = nil, &block)
  self.data[:securitySchemes] ||= {}
  self.data[:securitySchemes][name] = Swagger::Blocks::Nodes::SecuritySchemeNode.call(version: version, inline_keys: inline_keys, &block)
end