cloudsmith-api 2.0.5 → 2.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +3 -3
  3. data/README.md +105 -4
  4. data/build.json +1 -1
  5. data/docs/DartUpstream.md +23 -0
  6. data/docs/DartUpstreamRequest.md +20 -0
  7. data/docs/DartUpstreamRequestPatch.md +20 -0
  8. data/docs/DebUpstream.md +27 -0
  9. data/docs/DebUpstreamRequest.md +24 -0
  10. data/docs/DebUpstreamRequestPatch.md +24 -0
  11. data/docs/DockerUpstream.md +23 -0
  12. data/docs/DockerUpstreamRequest.md +20 -0
  13. data/docs/DockerUpstreamRequestPatch.md +20 -0
  14. data/docs/HelmUpstream.md +23 -0
  15. data/docs/HelmUpstreamRequest.md +20 -0
  16. data/docs/HelmUpstreamRequestPatch.md +20 -0
  17. data/docs/MavenPackageUpload.md +2 -0
  18. data/docs/MavenPackageUploadRequest.md +2 -0
  19. data/docs/MavenUpstream.md +23 -0
  20. data/docs/MavenUpstreamRequest.md +20 -0
  21. data/docs/MavenUpstreamRequestPatch.md +20 -0
  22. data/docs/NpmUpstream.md +23 -0
  23. data/docs/NpmUpstreamRequest.md +20 -0
  24. data/docs/NpmUpstreamRequestPatch.md +20 -0
  25. data/docs/NugetUpstream.md +23 -0
  26. data/docs/NugetUpstreamRequest.md +20 -0
  27. data/docs/NugetUpstreamRequestPatch.md +20 -0
  28. data/docs/OrgsApi.md +431 -0
  29. data/docs/PackageLicensePolicyEvaluationRequest.md +14 -0
  30. data/docs/PackageLicensePolicyEvaluationRequestRequest.md +7 -0
  31. data/docs/PackageVulnerabilityPolicyEvaluationRequest.md +14 -0
  32. data/docs/PackageVulnerabilityPolicyEvaluationRequestRequest.md +7 -0
  33. data/docs/PythonUpstream.md +23 -0
  34. data/docs/PythonUpstreamRequest.md +20 -0
  35. data/docs/PythonUpstreamRequestPatch.md +20 -0
  36. data/docs/ReposApi.md +3770 -0
  37. data/docs/RpmUpstream.md +25 -0
  38. data/docs/RpmUpstreamRequest.md +22 -0
  39. data/docs/RpmUpstreamRequestPatch.md +22 -0
  40. data/docs/RubyUpstream.md +23 -0
  41. data/docs/RubyUpstreamRequest.md +20 -0
  42. data/docs/RubyUpstreamRequestPatch.md +20 -0
  43. data/docs/StatusBasic.md +1 -1
  44. data/lib/cloudsmith-api/api/orgs_api.rb +447 -0
  45. data/lib/cloudsmith-api/api/repos_api.rb +3950 -0
  46. data/lib/cloudsmith-api/models/dart_upstream.rb +393 -0
  47. data/lib/cloudsmith-api/models/dart_upstream_request.rb +365 -0
  48. data/lib/cloudsmith-api/models/dart_upstream_request_patch.rb +355 -0
  49. data/lib/cloudsmith-api/models/deb_upstream.rb +440 -0
  50. data/lib/cloudsmith-api/models/deb_upstream_request.rb +412 -0
  51. data/lib/cloudsmith-api/models/deb_upstream_request_patch.rb +397 -0
  52. data/lib/cloudsmith-api/models/docker_upstream.rb +393 -0
  53. data/lib/cloudsmith-api/models/docker_upstream_request.rb +365 -0
  54. data/lib/cloudsmith-api/models/docker_upstream_request_patch.rb +355 -0
  55. data/lib/cloudsmith-api/models/helm_upstream.rb +393 -0
  56. data/lib/cloudsmith-api/models/helm_upstream_request.rb +365 -0
  57. data/lib/cloudsmith-api/models/helm_upstream_request_patch.rb +355 -0
  58. data/lib/cloudsmith-api/models/maven_package_upload.rb +19 -1
  59. data/lib/cloudsmith-api/models/maven_package_upload_request.rb +19 -1
  60. data/lib/cloudsmith-api/models/maven_upstream.rb +393 -0
  61. data/lib/cloudsmith-api/models/maven_upstream_request.rb +365 -0
  62. data/lib/cloudsmith-api/models/maven_upstream_request_patch.rb +355 -0
  63. data/lib/cloudsmith-api/models/npm_upstream.rb +393 -0
  64. data/lib/cloudsmith-api/models/npm_upstream_request.rb +365 -0
  65. data/lib/cloudsmith-api/models/npm_upstream_request_patch.rb +355 -0
  66. data/lib/cloudsmith-api/models/nuget_upstream.rb +393 -0
  67. data/lib/cloudsmith-api/models/nuget_upstream_request.rb +365 -0
  68. data/lib/cloudsmith-api/models/nuget_upstream_request_patch.rb +355 -0
  69. data/lib/cloudsmith-api/models/package_license_policy_evaluation_request.rb +274 -0
  70. data/lib/cloudsmith-api/models/package_license_policy_evaluation_request_request.rb +175 -0
  71. data/lib/cloudsmith-api/models/package_vulnerability_policy_evaluation_request.rb +274 -0
  72. data/lib/cloudsmith-api/models/package_vulnerability_policy_evaluation_request_request.rb +175 -0
  73. data/lib/cloudsmith-api/models/python_upstream.rb +393 -0
  74. data/lib/cloudsmith-api/models/python_upstream_request.rb +365 -0
  75. data/lib/cloudsmith-api/models/python_upstream_request_patch.rb +355 -0
  76. data/lib/cloudsmith-api/models/rpm_upstream.rb +418 -0
  77. data/lib/cloudsmith-api/models/rpm_upstream_request.rb +390 -0
  78. data/lib/cloudsmith-api/models/rpm_upstream_request_patch.rb +375 -0
  79. data/lib/cloudsmith-api/models/ruby_upstream.rb +393 -0
  80. data/lib/cloudsmith-api/models/ruby_upstream_request.rb +365 -0
  81. data/lib/cloudsmith-api/models/ruby_upstream_request_patch.rb +355 -0
  82. data/lib/cloudsmith-api/models/status_basic.rb +1 -1
  83. data/lib/cloudsmith-api/version.rb +1 -1
  84. data/lib/cloudsmith-api.rb +34 -0
  85. data/spec/api/orgs_api_spec.rb +99 -0
  86. data/spec/api/repos_api_spec.rb +870 -0
  87. data/spec/models/dart_upstream_request_patch_spec.rb +121 -0
  88. data/spec/models/dart_upstream_request_spec.rb +121 -0
  89. data/spec/models/dart_upstream_spec.rb +139 -0
  90. data/spec/models/deb_upstream_request_patch_spec.rb +145 -0
  91. data/spec/models/deb_upstream_request_spec.rb +145 -0
  92. data/spec/models/deb_upstream_spec.rb +163 -0
  93. data/spec/models/docker_upstream_request_patch_spec.rb +121 -0
  94. data/spec/models/docker_upstream_request_spec.rb +121 -0
  95. data/spec/models/docker_upstream_spec.rb +139 -0
  96. data/spec/models/helm_upstream_request_patch_spec.rb +121 -0
  97. data/spec/models/helm_upstream_request_spec.rb +121 -0
  98. data/spec/models/helm_upstream_spec.rb +139 -0
  99. data/spec/models/maven_package_upload_request_spec.rb +12 -0
  100. data/spec/models/maven_package_upload_spec.rb +12 -0
  101. data/spec/models/maven_upstream_request_patch_spec.rb +121 -0
  102. data/spec/models/maven_upstream_request_spec.rb +121 -0
  103. data/spec/models/maven_upstream_spec.rb +139 -0
  104. data/spec/models/npm_upstream_request_patch_spec.rb +121 -0
  105. data/spec/models/npm_upstream_request_spec.rb +121 -0
  106. data/spec/models/npm_upstream_spec.rb +139 -0
  107. data/spec/models/nuget_upstream_request_patch_spec.rb +121 -0
  108. data/spec/models/nuget_upstream_request_spec.rb +121 -0
  109. data/spec/models/nuget_upstream_spec.rb +139 -0
  110. data/spec/models/package_license_policy_evaluation_request_request_spec.rb +35 -0
  111. data/spec/models/package_license_policy_evaluation_request_spec.rb +81 -0
  112. data/spec/models/package_vulnerability_policy_evaluation_request_request_spec.rb +35 -0
  113. data/spec/models/package_vulnerability_policy_evaluation_request_spec.rb +81 -0
  114. data/spec/models/python_upstream_request_patch_spec.rb +121 -0
  115. data/spec/models/python_upstream_request_spec.rb +121 -0
  116. data/spec/models/python_upstream_spec.rb +139 -0
  117. data/spec/models/rpm_upstream_request_patch_spec.rb +133 -0
  118. data/spec/models/rpm_upstream_request_spec.rb +133 -0
  119. data/spec/models/rpm_upstream_spec.rb +151 -0
  120. data/spec/models/ruby_upstream_request_patch_spec.rb +121 -0
  121. data/spec/models/ruby_upstream_request_spec.rb +121 -0
  122. data/spec/models/ruby_upstream_spec.rb +139 -0
  123. data/vendor/bundle/ruby/2.6.0/cache/rspec-support-3.12.1.gem +0 -0
  124. data/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0/autotest-fsevent-0.2.20/gem_make.out +1 -1
  125. data/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0/ffi-1.15.5/gem_make.out +2 -2
  126. data/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0/json-2.6.3/gem_make.out +1 -1
  127. data/vendor/bundle/ruby/2.6.0/extensions/x86_64-linux/2.6.0/json-2.6.3/mkmf.log +1 -1
  128. data/vendor/bundle/ruby/2.6.0/gems/ffi-1.15.5/ext/ffi_c/Makefile +2 -2
  129. data/vendor/bundle/ruby/2.6.0/gems/json-2.6.3/ext/json/Makefile +2 -2
  130. data/vendor/bundle/ruby/2.6.0/gems/json-2.6.3/ext/json/ext/generator/Makefile +2 -2
  131. data/vendor/bundle/ruby/2.6.0/gems/json-2.6.3/ext/json/ext/parser/Makefile +2 -2
  132. data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/Changelog.md +9 -1
  133. data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/spec/shell_out.rb +3 -0
  134. data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/version.rb +1 -1
  135. data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support.rb +8 -2
  136. data/vendor/bundle/ruby/2.6.0/specifications/{rspec-support-3.12.0.gemspec → rspec-support-3.12.1.gemspec} +5 -5
  137. metadata +176 -40
  138. data/vendor/bundle/ruby/2.6.0/cache/rspec-support-3.12.0.gem +0 -0
  139. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/LICENSE.md +0 -0
  140. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/README.md +0 -0
  141. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/caller_filter.rb +0 -0
  142. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/comparable_version.rb +0 -0
  143. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/differ.rb +0 -0
  144. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/directory_maker.rb +0 -0
  145. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/encoded_string.rb +0 -0
  146. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/fuzzy_matcher.rb +0 -0
  147. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/hunk_generator.rb +0 -0
  148. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/matcher_definition.rb +0 -0
  149. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/method_signature_verifier.rb +0 -0
  150. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/mutex.rb +0 -0
  151. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/object_formatter.rb +0 -0
  152. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/recursive_const_methods.rb +0 -0
  153. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/reentrant_mutex.rb +0 -0
  154. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/ruby_features.rb +0 -0
  155. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/source/location.rb +0 -0
  156. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/source/node.rb +0 -0
  157. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/source/token.rb +0 -0
  158. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/source.rb +0 -0
  159. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/spec/deprecation_helpers.rb +0 -0
  160. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/spec/diff_helpers.rb +0 -0
  161. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/spec/formatting_support.rb +0 -0
  162. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/spec/in_sub_process.rb +0 -0
  163. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/spec/library_wide_checks.rb +0 -0
  164. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/spec/stderr_splitter.rb +0 -0
  165. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/spec/string_matcher.rb +0 -0
  166. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/spec/with_isolated_directory.rb +0 -0
  167. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/spec/with_isolated_stderr.rb +0 -0
  168. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/spec.rb +0 -0
  169. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/warnings.rb +0 -0
  170. /data/vendor/bundle/ruby/2.6.0/gems/{rspec-support-3.12.0 → rspec-support-3.12.1}/lib/rspec/support/with_keywords_when_needed.rb +0 -0
@@ -0,0 +1,375 @@
1
+ =begin
2
+ #Cloudsmith API (v1)
3
+
4
+ #The API to the Cloudsmith Service
5
+
6
+ OpenAPI spec version: v1
7
+ Contact: support@cloudsmith.io
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.26
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CloudsmithApi
16
+ class RpmUpstreamRequestPatch
17
+ # The authentication mode to use when accessing this upstream.
18
+ attr_accessor :auth_mode
19
+
20
+ # Secret to provide with requests to upstream.
21
+ attr_accessor :auth_secret
22
+
23
+ # Username to provide with requests to upstream.
24
+ attr_accessor :auth_username
25
+
26
+ # The distribution version that packages found on this upstream will be associated with.
27
+ attr_accessor :distro_version
28
+
29
+ # The key for extra header #1 to send to upstream.
30
+ attr_accessor :extra_header_1
31
+
32
+ # The key for extra header #2 to send to upstream.
33
+ attr_accessor :extra_header_2
34
+
35
+ # The value for extra header #1 to send to upstream. This is stored as plaintext, and is NOT encrypted.
36
+ attr_accessor :extra_value_1
37
+
38
+ # The value for extra header #2 to send to upstream. This is stored as plaintext, and is NOT encrypted.
39
+ attr_accessor :extra_value_2
40
+
41
+ # When checked, source packages will be available from this upstream.
42
+ attr_accessor :include_sources
43
+
44
+ # Whether or not this upstream is active and ready for requests.
45
+ attr_accessor :is_active
46
+
47
+ # The mode that this upstream should operate in. Upstream sources can be used to proxy resolved packages, as well as operate in a proxy/cache or cache only mode.
48
+ attr_accessor :mode
49
+
50
+ # A descriptive name for this upstream source. A shortened version of this name will be used for tagging cached packages retrieved from this upstream.
51
+ attr_accessor :name
52
+
53
+ # Upstream sources are selected for resolving requests by sequential order (1..n), followed by creation date.
54
+ attr_accessor :priority
55
+
56
+ # The URL for this upstream source. This must be a fully qualified URL including any path elements required to reach the root of the repository.
57
+ attr_accessor :upstream_url
58
+
59
+ # If enabled, SSL certificates are verified when requests are made to this upstream. It's recommended to leave this enabled for all public sources to help mitigate Man-In-The-Middle (MITM) attacks. Please note this only applies to HTTPS upstreams.
60
+ attr_accessor :verify_ssl
61
+
62
+ class EnumAttributeValidator
63
+ attr_reader :datatype
64
+ attr_reader :allowable_values
65
+
66
+ def initialize(datatype, allowable_values)
67
+ @allowable_values = allowable_values.map do |value|
68
+ case datatype.to_s
69
+ when /Integer/i
70
+ value.to_i
71
+ when /Float/i
72
+ value.to_f
73
+ else
74
+ value
75
+ end
76
+ end
77
+ end
78
+
79
+ def valid?(value)
80
+ !value || allowable_values.include?(value)
81
+ end
82
+ end
83
+
84
+ # Attribute mapping from ruby-style variable name to JSON key.
85
+ def self.attribute_map
86
+ {
87
+ :'auth_mode' => :'auth_mode',
88
+ :'auth_secret' => :'auth_secret',
89
+ :'auth_username' => :'auth_username',
90
+ :'distro_version' => :'distro_version',
91
+ :'extra_header_1' => :'extra_header_1',
92
+ :'extra_header_2' => :'extra_header_2',
93
+ :'extra_value_1' => :'extra_value_1',
94
+ :'extra_value_2' => :'extra_value_2',
95
+ :'include_sources' => :'include_sources',
96
+ :'is_active' => :'is_active',
97
+ :'mode' => :'mode',
98
+ :'name' => :'name',
99
+ :'priority' => :'priority',
100
+ :'upstream_url' => :'upstream_url',
101
+ :'verify_ssl' => :'verify_ssl'
102
+ }
103
+ end
104
+
105
+ # Attribute type mapping.
106
+ def self.swagger_types
107
+ {
108
+ :'auth_mode' => :'String',
109
+ :'auth_secret' => :'String',
110
+ :'auth_username' => :'String',
111
+ :'distro_version' => :'String',
112
+ :'extra_header_1' => :'String',
113
+ :'extra_header_2' => :'String',
114
+ :'extra_value_1' => :'String',
115
+ :'extra_value_2' => :'String',
116
+ :'include_sources' => :'BOOLEAN',
117
+ :'is_active' => :'BOOLEAN',
118
+ :'mode' => :'String',
119
+ :'name' => :'String',
120
+ :'priority' => :'Integer',
121
+ :'upstream_url' => :'String',
122
+ :'verify_ssl' => :'BOOLEAN'
123
+ }
124
+ end
125
+
126
+ # Initializes the object
127
+ # @param [Hash] attributes Model attributes in the form of hash
128
+ def initialize(attributes = {})
129
+ return unless attributes.is_a?(Hash)
130
+
131
+ # convert string to symbol for hash key
132
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
133
+
134
+ if attributes.has_key?(:'auth_mode')
135
+ self.auth_mode = attributes[:'auth_mode']
136
+ else
137
+ self.auth_mode = 'None'
138
+ end
139
+
140
+ if attributes.has_key?(:'auth_secret')
141
+ self.auth_secret = attributes[:'auth_secret']
142
+ end
143
+
144
+ if attributes.has_key?(:'auth_username')
145
+ self.auth_username = attributes[:'auth_username']
146
+ end
147
+
148
+ if attributes.has_key?(:'distro_version')
149
+ self.distro_version = attributes[:'distro_version']
150
+ end
151
+
152
+ if attributes.has_key?(:'extra_header_1')
153
+ self.extra_header_1 = attributes[:'extra_header_1']
154
+ end
155
+
156
+ if attributes.has_key?(:'extra_header_2')
157
+ self.extra_header_2 = attributes[:'extra_header_2']
158
+ end
159
+
160
+ if attributes.has_key?(:'extra_value_1')
161
+ self.extra_value_1 = attributes[:'extra_value_1']
162
+ end
163
+
164
+ if attributes.has_key?(:'extra_value_2')
165
+ self.extra_value_2 = attributes[:'extra_value_2']
166
+ end
167
+
168
+ if attributes.has_key?(:'include_sources')
169
+ self.include_sources = attributes[:'include_sources']
170
+ end
171
+
172
+ if attributes.has_key?(:'is_active')
173
+ self.is_active = attributes[:'is_active']
174
+ end
175
+
176
+ if attributes.has_key?(:'mode')
177
+ self.mode = attributes[:'mode']
178
+ else
179
+ self.mode = 'Proxy Only'
180
+ end
181
+
182
+ if attributes.has_key?(:'name')
183
+ self.name = attributes[:'name']
184
+ end
185
+
186
+ if attributes.has_key?(:'priority')
187
+ self.priority = attributes[:'priority']
188
+ end
189
+
190
+ if attributes.has_key?(:'upstream_url')
191
+ self.upstream_url = attributes[:'upstream_url']
192
+ end
193
+
194
+ if attributes.has_key?(:'verify_ssl')
195
+ self.verify_ssl = attributes[:'verify_ssl']
196
+ end
197
+ end
198
+
199
+ # Show invalid properties with the reasons. Usually used together with valid?
200
+ # @return Array for valid properties with the reasons
201
+ def list_invalid_properties
202
+ invalid_properties = Array.new
203
+ invalid_properties
204
+ end
205
+
206
+ # Check to see if the all the properties in the model are valid
207
+ # @return true if the model is valid
208
+ def valid?
209
+ auth_mode_validator = EnumAttributeValidator.new('String', ['None', 'Username and Password'])
210
+ return false unless auth_mode_validator.valid?(@auth_mode)
211
+ mode_validator = EnumAttributeValidator.new('String', ['Proxy Only', 'Cache and Proxy'])
212
+ return false unless mode_validator.valid?(@mode)
213
+ true
214
+ end
215
+
216
+ # Custom attribute writer method checking allowed values (enum).
217
+ # @param [Object] auth_mode Object to be assigned
218
+ def auth_mode=(auth_mode)
219
+ validator = EnumAttributeValidator.new('String', ['None', 'Username and Password'])
220
+ unless validator.valid?(auth_mode)
221
+ fail ArgumentError, 'invalid value for "auth_mode", must be one of #{validator.allowable_values}.'
222
+ end
223
+ @auth_mode = auth_mode
224
+ end
225
+
226
+ # Custom attribute writer method checking allowed values (enum).
227
+ # @param [Object] mode Object to be assigned
228
+ def mode=(mode)
229
+ validator = EnumAttributeValidator.new('String', ['Proxy Only', 'Cache and Proxy'])
230
+ unless validator.valid?(mode)
231
+ fail ArgumentError, 'invalid value for "mode", must be one of #{validator.allowable_values}.'
232
+ end
233
+ @mode = mode
234
+ end
235
+
236
+ # Checks equality by comparing each attribute.
237
+ # @param [Object] Object to be compared
238
+ def ==(o)
239
+ return true if self.equal?(o)
240
+ self.class == o.class &&
241
+ auth_mode == o.auth_mode &&
242
+ auth_secret == o.auth_secret &&
243
+ auth_username == o.auth_username &&
244
+ distro_version == o.distro_version &&
245
+ extra_header_1 == o.extra_header_1 &&
246
+ extra_header_2 == o.extra_header_2 &&
247
+ extra_value_1 == o.extra_value_1 &&
248
+ extra_value_2 == o.extra_value_2 &&
249
+ include_sources == o.include_sources &&
250
+ is_active == o.is_active &&
251
+ mode == o.mode &&
252
+ name == o.name &&
253
+ priority == o.priority &&
254
+ upstream_url == o.upstream_url &&
255
+ verify_ssl == o.verify_ssl
256
+ end
257
+
258
+ # @see the `==` method
259
+ # @param [Object] Object to be compared
260
+ def eql?(o)
261
+ self == o
262
+ end
263
+
264
+ # Calculates hash code according to all attributes.
265
+ # @return [Fixnum] Hash code
266
+ def hash
267
+ [auth_mode, auth_secret, auth_username, distro_version, extra_header_1, extra_header_2, extra_value_1, extra_value_2, include_sources, is_active, mode, name, priority, upstream_url, verify_ssl].hash
268
+ end
269
+
270
+ # Builds the object from hash
271
+ # @param [Hash] attributes Model attributes in the form of hash
272
+ # @return [Object] Returns the model itself
273
+ def build_from_hash(attributes)
274
+ return nil unless attributes.is_a?(Hash)
275
+ self.class.swagger_types.each_pair do |key, type|
276
+ if type =~ /\AArray<(.*)>/i
277
+ # check to ensure the input is an array given that the attribute
278
+ # is documented as an array but the input is not
279
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
280
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
281
+ end
282
+ elsif !attributes[self.class.attribute_map[key]].nil?
283
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
284
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
285
+ end
286
+
287
+ self
288
+ end
289
+
290
+ # Deserializes the data based on type
291
+ # @param string type Data type
292
+ # @param string value Value to be deserialized
293
+ # @return [Object] Deserialized data
294
+ def _deserialize(type, value)
295
+ case type.to_sym
296
+ when :DateTime
297
+ DateTime.parse(value)
298
+ when :Date
299
+ Date.parse(value)
300
+ when :String
301
+ value.to_s
302
+ when :Integer
303
+ value.to_i
304
+ when :Float
305
+ value.to_f
306
+ when :BOOLEAN
307
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
308
+ true
309
+ else
310
+ false
311
+ end
312
+ when :Object
313
+ # generic object (usually a Hash), return directly
314
+ value
315
+ when /\AArray<(?<inner_type>.+)>\z/
316
+ inner_type = Regexp.last_match[:inner_type]
317
+ value.map { |v| _deserialize(inner_type, v) }
318
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
319
+ k_type = Regexp.last_match[:k_type]
320
+ v_type = Regexp.last_match[:v_type]
321
+ {}.tap do |hash|
322
+ value.each do |k, v|
323
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
324
+ end
325
+ end
326
+ else # model
327
+ temp_model = CloudsmithApi.const_get(type).new
328
+ temp_model.build_from_hash(value)
329
+ end
330
+ end
331
+
332
+ # Returns the string representation of the object
333
+ # @return [String] String presentation of the object
334
+ def to_s
335
+ to_hash.to_s
336
+ end
337
+
338
+ # to_body is an alias to to_hash (backward compatibility)
339
+ # @return [Hash] Returns the object in the form of hash
340
+ def to_body
341
+ to_hash
342
+ end
343
+
344
+ # Returns the object in the form of hash
345
+ # @return [Hash] Returns the object in the form of hash
346
+ def to_hash
347
+ hash = {}
348
+ self.class.attribute_map.each_pair do |attr, param|
349
+ value = self.send(attr)
350
+ next if value.nil?
351
+ hash[param] = _to_hash(value)
352
+ end
353
+ hash
354
+ end
355
+
356
+ # Outputs non-array value in the form of hash
357
+ # For object, use to_hash. Otherwise, just return the value
358
+ # @param [Object] value Any valid value
359
+ # @return [Hash] Returns the value in the form of hash
360
+ def _to_hash(value)
361
+ if value.is_a?(Array)
362
+ value.compact.map { |v| _to_hash(v) }
363
+ elsif value.is_a?(Hash)
364
+ {}.tap do |hash|
365
+ value.each { |k, v| hash[k] = _to_hash(v) }
366
+ end
367
+ elsif value.respond_to? :to_hash
368
+ value.to_hash
369
+ else
370
+ value
371
+ end
372
+ end
373
+
374
+ end
375
+ end