Class: Swagger::Data::Document
- Inherits:
-
Object
- Object
- Object
- Swagger::Data::Document
show all
- Defined in:
- lib/ruby-swagger/data/document.rb
Overview
Constant Summary
collapse
- SPEC_VERSION =
'2.0'
- DEFAULT_HOST =
'localhost:80'
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Object
attr_swagger, #bulk_set, #swagger_attributes, #to_json, #to_swagger, #to_yaml
Class Method Details
.parse(document) ⇒ Object
parse an hash document into a set of Swagger objects
document is a hash
32
33
34
35
36
|
# File 'lib/ruby-swagger/data/document.rb', line 32
def self.parse(document)
raise ArgumentError.new('Swagger::Document#parse - document object is nil') unless document
Swagger::Data::Document.new.bulk_set(document)
end
|
Instance Method Details
#add_tag(new_tag) ⇒ Object
159
160
161
162
163
164
165
166
167
|
# File 'lib/ruby-swagger/data/document.rb', line 159
def add_tag(new_tag)
return nil unless new_tag
unless new_tag.is_a?(Swagger::Data::Tag)
new_tag = Swagger::Data::Tag.parse(new_tag)
end
@tags.push(new_tag)
end
|
#basePath=(new_path) ⇒ Object
51
52
53
54
55
56
57
58
59
|
# File 'lib/ruby-swagger/data/document.rb', line 51
def basePath=(new_path)
new_path = new_path.nil? ? '/' : new_path
unless new_path =~ /^\/.+$/
new_path = "/#{new_path}" end
@basePath ||= new_path
end
|
#consumes=(new_consumes) ⇒ Object
81
82
83
84
85
86
87
88
89
|
# File 'lib/ruby-swagger/data/document.rb', line 81
def consumes=(new_consumes)
return nil unless new_consumes
new_consumes.each do |consume|
raise ArgumentError.new("Swagger::Data::Document#consumes= - unrecognized consume type #{consume}]") unless Swagger::Data::Mime.valid?(consume)
end
@consumes = new_consumes
end
|
#definitions=(new_definitions) ⇒ Object
99
100
101
102
103
104
105
106
107
|
# File 'lib/ruby-swagger/data/document.rb', line 99
def definitions=(new_definitions)
return nil unless new_definitions
unless new_definitions.is_a?(Swagger::Data::Definitions)
new_definitions = Swagger::Data::Definitions.parse(new_definitions)
end
@definitions = new_definitions
end
|
#externalDocs=(new_externalDocs) ⇒ Object
169
170
171
172
173
174
175
176
177
|
# File 'lib/ruby-swagger/data/document.rb', line 169
def externalDocs=(new_externalDocs)
return nil unless new_externalDocs
unless new_externalDocs.is_a?(Swagger::Data::ExternalDocumentation)
new_externalDocs = Swagger::Data::ExternalDocumentation.parse(new_externalDocs)
end
@externalDocs = new_externalDocs
end
|
#info=(new_info) ⇒ Object
43
44
45
46
47
48
49
|
# File 'lib/ruby-swagger/data/document.rb', line 43
def info=(new_info)
raise ArgumentError.new('Swagger::Document#info= - info object is nil') unless new_info
new_info = Swagger::Data::Info.parse(new_info) unless new_info.is_a?(Swagger::Data::Info)
@info = new_info
end
|
#parameters=(new_parameters) ⇒ Object
109
110
111
112
113
114
115
116
117
|
# File 'lib/ruby-swagger/data/document.rb', line 109
def parameters=(new_parameters)
return nil unless new_parameters
unless new_parameters.is_a?(Swagger::Data::Parameters)
new_parameters = Swagger::Data::Parameters.parse(new_parameters)
end
@parameters = new_parameters
end
|
#paths=(new_paths) ⇒ Object
91
92
93
94
95
96
97
|
# File 'lib/ruby-swagger/data/document.rb', line 91
def paths=(new_paths)
raise ArgumentError.new('Swagger::Data::Document#paths= - paths is nil') unless paths
new_paths = Swagger::Data::Paths.parse(new_paths) unless new_paths.is_a?(Swagger::Data::Paths)
@paths = new_paths
end
|
#produces=(new_produces) ⇒ Object
71
72
73
74
75
76
77
78
79
|
# File 'lib/ruby-swagger/data/document.rb', line 71
def produces=(new_produces)
return nil unless new_produces
new_produces.each do |produce|
raise ArgumentError.new("Swagger::Data::Document#produces= - unrecognized produce type #{produce}") unless Swagger::Data::Mime.valid?(produce)
end
@produces = new_produces
end
|
#responses=(new_responses) ⇒ Object
119
120
121
122
123
124
125
126
127
|
# File 'lib/ruby-swagger/data/document.rb', line 119
def responses=(new_responses)
return nil unless new_responses
unless new_responses.is_a?(Swagger::Data::Responses)
new_responses = Swagger::Data::Responses.parse(new_responses)
end
@responses = new_responses
end
|
#schemes=(new_schemes) ⇒ Object
61
62
63
64
65
66
67
68
69
|
# File 'lib/ruby-swagger/data/document.rb', line 61
def schemes=(new_schemes)
return nil unless new_schemes
new_schemes.each do |scheme|
raise ArgumentError.new("Swagger::Data::Document#schemes= - unrecognized scheme #{scheme}") unless %w(http https ws wss).include?(scheme)
end
@schemes = new_schemes
end
|
#security=(new_security) ⇒ Object
#securityDefinitions=(newSecurityDef) ⇒ Object
129
130
131
132
133
134
135
136
137
|
# File 'lib/ruby-swagger/data/document.rb', line 129
def securityDefinitions=(newSecurityDef)
return nil unless newSecurityDef
unless newSecurityDef.is_a?(Swagger::Data::SecurityDefinitions)
newSecurityDef = Swagger::Data::SecurityDefinitions.parse(newSecurityDef)
end
@securityDefinitions = newSecurityDef
end
|
#swagger=(new_swagger) ⇒ Object
38
39
40
41
|
# File 'lib/ruby-swagger/data/document.rb', line 38
def swagger=(new_swagger)
raise ArgumentError.new("Swagger::Document#swagger= - the document is not a swagger #{SPEC_VERSION} version") unless '2.0' == new_swagger
@swagger = new_swagger
end
|
149
150
151
152
153
154
155
156
157
|
# File 'lib/ruby-swagger/data/document.rb', line 149
def tags=(new_tags)
return nil unless new_tags
@tags = []
new_tags.each do |tag|
add_tag(tag)
end
end
|