Class: Swagger::Blocks::Nodes::OperationNode

Inherits:
Node
  • Object
show all
Defined in:
lib/api_schema/patches/operation_node.rb

Instance Method Summary collapse

Instance Method Details

#body_param(model_name) ⇒ Object



27
28
29
30
31
32
33
34
35
36
# File 'lib/api_schema/patches/operation_node.rb', line 27

def body_param(model_name)
  parameter do
    key :name, model_name
    key :in, :body
    key :required, true
    schema do
      key :'$ref', model_name
    end
  end
end

#error_responses(model_name, descriptions, *codes) ⇒ Object



56
57
58
59
60
61
62
63
64
65
# File 'lib/api_schema/patches/operation_node.rb', line 56

def error_responses(model_name, descriptions, *codes)
  codes.each do |code|
    response code do
      key :description, descriptions[code]
      schema do
        key :'$ref', model_name
      end
    end
  end
end

#header_param(name, type, required) ⇒ Object



18
19
20
21
22
23
24
25
# File 'lib/api_schema/patches/operation_node.rb', line 18

def header_param(name, type, required)
  parameter do
    key :name, name
    key :in, :header
    key :required, required
    key :type, type
  end
end

#path_param(name, type, required) ⇒ Object



47
48
49
50
51
52
53
54
# File 'lib/api_schema/patches/operation_node.rb', line 47

def path_param(name, type, required)
  parameter do
    key :name, name
    key :in, :path
    key :required, required
    key :type, type
  end
end

#query_param(name, type, required) ⇒ Object



38
39
40
41
42
43
44
45
# File 'lib/api_schema/patches/operation_node.rb', line 38

def query_param(name, type, required)
  parameter do
    key :name, name
    key :in, :query
    key :required, required
    key :type, type
  end
end

#success_response(code, model_name = nil, fields = []) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/api_schema/patches/operation_node.rb', line 5

def success_response(code, model_name = nil, fields = [])
  response code do
    schema do
      key :'$ref', model_name if model_name
      fields.each do |f|
        property f.name do
          key :type, f.type
        end
      end
    end
  end
end