dependency-tracker-client 1.0.0

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 (227) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/LICENSE +201 -0
  4. data/README.md +276 -0
  5. data/Rakefile +10 -0
  6. data/dependency-tracker-client.gemspec +39 -0
  7. data/docs/About.md +25 -0
  8. data/docs/Analysis.md +21 -0
  9. data/docs/AnalysisApi.md +177 -0
  10. data/docs/AnalysisComment.md +21 -0
  11. data/docs/AnalysisRequest.md +27 -0
  12. data/docs/ApiKey.md +17 -0
  13. data/docs/BadgeApi.md +102 -0
  14. data/docs/BodyPart.md +31 -0
  15. data/docs/BomApi.md +335 -0
  16. data/docs/BomSubmitRequest.md +25 -0
  17. data/docs/CalculatorApi.md +61 -0
  18. data/docs/CloneProjectRequest.md +19 -0
  19. data/docs/Component.md +69 -0
  20. data/docs/ComponentApi.md +373 -0
  21. data/docs/ComponentMetrics.md +43 -0
  22. data/docs/ConfigProperty.md +25 -0
  23. data/docs/ConfigPropertyApi.md +167 -0
  24. data/docs/ContentDisposition.md +29 -0
  25. data/docs/Cwe.md +19 -0
  26. data/docs/CweApi.md +110 -0
  27. data/docs/DefaultApi.md +434 -0
  28. data/docs/Dependency.md +27 -0
  29. data/docs/DependencyApi.md +222 -0
  30. data/docs/DependencyMetrics.md +45 -0
  31. data/docs/DependencyRequest.md +21 -0
  32. data/docs/Finding.md +23 -0
  33. data/docs/FindingApi.md +113 -0
  34. data/docs/FormDataBodyPart.md +39 -0
  35. data/docs/FormDataContentDisposition.md +31 -0
  36. data/docs/FormDataMultiPart.md +35 -0
  37. data/docs/Framework.md +23 -0
  38. data/docs/IdentifiableObject.md +17 -0
  39. data/docs/LdapApi.md +220 -0
  40. data/docs/LdapUser.md +25 -0
  41. data/docs/License.md +37 -0
  42. data/docs/LicenseApi.md +159 -0
  43. data/docs/ManagedUser.md +37 -0
  44. data/docs/MappedLdapGroup.md +19 -0
  45. data/docs/MappedLdapGroupRequest.md +19 -0
  46. data/docs/MediaType.md +25 -0
  47. data/docs/MetricsApi.md +922 -0
  48. data/docs/MultiPart.md +33 -0
  49. data/docs/NotificationPublisher.md +29 -0
  50. data/docs/NotificationRule.md +35 -0
  51. data/docs/PackageURL.md +29 -0
  52. data/docs/ParameterizedHeader.md +19 -0
  53. data/docs/Permission.md +19 -0
  54. data/docs/PermissionApi.md +279 -0
  55. data/docs/PortfolioMetrics.md +53 -0
  56. data/docs/Project.md +43 -0
  57. data/docs/ProjectApi.md +445 -0
  58. data/docs/ProjectMetrics.md +47 -0
  59. data/docs/ProjectProperty.md +27 -0
  60. data/docs/ProjectPropertyApi.md +232 -0
  61. data/docs/Repository.md +29 -0
  62. data/docs/RepositoryApi.md +325 -0
  63. data/docs/RepositoryMetaComponent.md +27 -0
  64. data/docs/Score.md +23 -0
  65. data/docs/SearchApi.md +120 -0
  66. data/docs/SearchResult.md +17 -0
  67. data/docs/Tag.md +19 -0
  68. data/docs/Team.md +29 -0
  69. data/docs/TeamApi.md +432 -0
  70. data/docs/UserApi.md +715 -0
  71. data/docs/UserPrincipal.md +27 -0
  72. data/docs/VersionApi.md +52 -0
  73. data/docs/Vulnerability.md +69 -0
  74. data/docs/VulnerabilityApi.md +666 -0
  75. data/docs/VulnerabilityMetrics.md +23 -0
  76. data/docs/VulnerableSoftware.md +69 -0
  77. data/lib/dependency-tracker-client/api/analysis_api.rb +209 -0
  78. data/lib/dependency-tracker-client/api/badge_api.rb +148 -0
  79. data/lib/dependency-tracker-client/api/bom_api.rb +382 -0
  80. data/lib/dependency-tracker-client/api/calculator_api.rb +83 -0
  81. data/lib/dependency-tracker-client/api/component_api.rb +422 -0
  82. data/lib/dependency-tracker-client/api/config_property_api.rb +192 -0
  83. data/lib/dependency-tracker-client/api/cwe_api.rb +136 -0
  84. data/lib/dependency-tracker-client/api/default_api.rb +491 -0
  85. data/lib/dependency-tracker-client/api/dependency_api.rb +254 -0
  86. data/lib/dependency-tracker-client/api/finding_api.rb +140 -0
  87. data/lib/dependency-tracker-client/api/ldap_api.rb +254 -0
  88. data/lib/dependency-tracker-client/api/license_api.rb +190 -0
  89. data/lib/dependency-tracker-client/api/metrics_api.rb +1086 -0
  90. data/lib/dependency-tracker-client/api/permission_api.rb +342 -0
  91. data/lib/dependency-tracker-client/api/project_api.rb +504 -0
  92. data/lib/dependency-tracker-client/api/project_property_api.rb +274 -0
  93. data/lib/dependency-tracker-client/api/repository_api.rb +376 -0
  94. data/lib/dependency-tracker-client/api/search_api.rb +143 -0
  95. data/lib/dependency-tracker-client/api/team_api.rb +486 -0
  96. data/lib/dependency-tracker-client/api/user_api.rb +796 -0
  97. data/lib/dependency-tracker-client/api/version_api.rb +78 -0
  98. data/lib/dependency-tracker-client/api/vulnerability_api.rb +780 -0
  99. data/lib/dependency-tracker-client/api_client.rb +388 -0
  100. data/lib/dependency-tracker-client/api_error.rb +57 -0
  101. data/lib/dependency-tracker-client/configuration.rb +261 -0
  102. data/lib/dependency-tracker-client/models/about.rb +242 -0
  103. data/lib/dependency-tracker-client/models/analysis.rb +265 -0
  104. data/lib/dependency-tracker-client/models/analysis_comment.rb +234 -0
  105. data/lib/dependency-tracker-client/models/analysis_request.rb +371 -0
  106. data/lib/dependency-tracker-client/models/api_key.rb +250 -0
  107. data/lib/dependency-tracker-client/models/body_part.rb +273 -0
  108. data/lib/dependency-tracker-client/models/bom_submit_request.rb +328 -0
  109. data/lib/dependency-tracker-client/models/clone_project_request.rb +267 -0
  110. data/lib/dependency-tracker-client/models/component.rb +900 -0
  111. data/lib/dependency-tracker-client/models/component_metrics.rb +338 -0
  112. data/lib/dependency-tracker-client/models/config_property.rb +421 -0
  113. data/lib/dependency-tracker-client/models/content_disposition.rb +262 -0
  114. data/lib/dependency-tracker-client/models/cwe.rb +259 -0
  115. data/lib/dependency-tracker-client/models/dependency.rb +266 -0
  116. data/lib/dependency-tracker-client/models/dependency_metrics.rb +352 -0
  117. data/lib/dependency-tracker-client/models/dependency_request.rb +257 -0
  118. data/lib/dependency-tracker-client/models/finding.rb +239 -0
  119. data/lib/dependency-tracker-client/models/form_data_body_part.rb +309 -0
  120. data/lib/dependency-tracker-client/models/form_data_content_disposition.rb +271 -0
  121. data/lib/dependency-tracker-client/models/form_data_multi_part.rb +295 -0
  122. data/lib/dependency-tracker-client/models/framework.rb +233 -0
  123. data/lib/dependency-tracker-client/models/identifiable_object.rb +206 -0
  124. data/lib/dependency-tracker-client/models/ldap_user.rb +351 -0
  125. data/lib/dependency-tracker-client/models/license.rb +373 -0
  126. data/lib/dependency-tracker-client/models/managed_user.rb +480 -0
  127. data/lib/dependency-tracker-client/models/mapped_ldap_group.rb +255 -0
  128. data/lib/dependency-tracker-client/models/mapped_ldap_group_request.rb +267 -0
  129. data/lib/dependency-tracker-client/models/media_type.rb +244 -0
  130. data/lib/dependency-tracker-client/models/multi_part.rb +284 -0
  131. data/lib/dependency-tracker-client/models/notification_publisher.rb +388 -0
  132. data/lib/dependency-tracker-client/models/notification_rule.rb +426 -0
  133. data/lib/dependency-tracker-client/models/package_url.rb +262 -0
  134. data/lib/dependency-tracker-client/models/parameterized_header.rb +217 -0
  135. data/lib/dependency-tracker-client/models/permission.rb +250 -0
  136. data/lib/dependency-tracker-client/models/portfolio_metrics.rb +378 -0
  137. data/lib/dependency-tracker-client/models/project.rb +420 -0
  138. data/lib/dependency-tracker-client/models/project_metrics.rb +356 -0
  139. data/lib/dependency-tracker-client/models/project_property.rb +430 -0
  140. data/lib/dependency-tracker-client/models/repository.rb +319 -0
  141. data/lib/dependency-tracker-client/models/repository_meta_component.rb +305 -0
  142. data/lib/dependency-tracker-client/models/score.rb +233 -0
  143. data/lib/dependency-tracker-client/models/search_result.rb +208 -0
  144. data/lib/dependency-tracker-client/models/tag.rb +252 -0
  145. data/lib/dependency-tracker-client/models/team.rb +310 -0
  146. data/lib/dependency-tracker-client/models/user_principal.rb +255 -0
  147. data/lib/dependency-tracker-client/models/vulnerability.rb +729 -0
  148. data/lib/dependency-tracker-client/models/vulnerability_metrics.rb +238 -0
  149. data/lib/dependency-tracker-client/models/vulnerable_software.rb +442 -0
  150. data/lib/dependency-tracker-client/version.rb +15 -0
  151. data/lib/dependency-tracker-client.rb +109 -0
  152. data/pkg/dependency-tracker-client-1.0.0.gem +0 -0
  153. data/spec/api/analysis_api_spec.rb +70 -0
  154. data/spec/api/badge_api_spec.rb +58 -0
  155. data/spec/api/bom_api_spec.rb +106 -0
  156. data/spec/api/calculator_api_spec.rb +46 -0
  157. data/spec/api/component_api_spec.rb +110 -0
  158. data/spec/api/config_property_api_spec.rb +67 -0
  159. data/spec/api/cwe_api_spec.rb +56 -0
  160. data/spec/api/default_api_spec.rb +123 -0
  161. data/spec/api/dependency_api_spec.rb +79 -0
  162. data/spec/api/finding_api_spec.rb +57 -0
  163. data/spec/api/ldap_api_spec.rb +79 -0
  164. data/spec/api/license_api_spec.rb +66 -0
  165. data/spec/api/metrics_api_spec.rb +233 -0
  166. data/spec/api/permission_api_spec.rb +94 -0
  167. data/spec/api/project_api_spec.rb +126 -0
  168. data/spec/api/project_property_api_spec.rb +82 -0
  169. data/spec/api/repository_api_spec.rb +100 -0
  170. data/spec/api/search_api_spec.rb +59 -0
  171. data/spec/api/team_api_spec.rb +122 -0
  172. data/spec/api/user_api_spec.rb +183 -0
  173. data/spec/api/version_api_spec.rb +46 -0
  174. data/spec/api/vulnerability_api_spec.rb +177 -0
  175. data/spec/api_client_spec.rb +226 -0
  176. data/spec/configuration_spec.rb +42 -0
  177. data/spec/models/about_spec.rb +65 -0
  178. data/spec/models/analysis_comment_spec.rb +53 -0
  179. data/spec/models/analysis_request_spec.rb +75 -0
  180. data/spec/models/analysis_spec.rb +57 -0
  181. data/spec/models/api_key_spec.rb +41 -0
  182. data/spec/models/body_part_spec.rb +83 -0
  183. data/spec/models/bom_submit_request_spec.rb +65 -0
  184. data/spec/models/clone_project_request_spec.rb +47 -0
  185. data/spec/models/component_metrics_spec.rb +119 -0
  186. data/spec/models/component_spec.rb +201 -0
  187. data/spec/models/config_property_spec.rb +69 -0
  188. data/spec/models/content_disposition_spec.rb +77 -0
  189. data/spec/models/cwe_spec.rb +47 -0
  190. data/spec/models/dependency_metrics_spec.rb +125 -0
  191. data/spec/models/dependency_request_spec.rb +53 -0
  192. data/spec/models/dependency_spec.rb +71 -0
  193. data/spec/models/finding_spec.rb +59 -0
  194. data/spec/models/form_data_body_part_spec.rb +107 -0
  195. data/spec/models/form_data_content_disposition_spec.rb +83 -0
  196. data/spec/models/form_data_multi_part_spec.rb +95 -0
  197. data/spec/models/framework_spec.rb +59 -0
  198. data/spec/models/identifiable_object_spec.rb +41 -0
  199. data/spec/models/ldap_user_spec.rb +65 -0
  200. data/spec/models/license_spec.rb +101 -0
  201. data/spec/models/managed_user_spec.rb +101 -0
  202. data/spec/models/mapped_ldap_group_request_spec.rb +47 -0
  203. data/spec/models/mapped_ldap_group_spec.rb +47 -0
  204. data/spec/models/media_type_spec.rb +65 -0
  205. data/spec/models/multi_part_spec.rb +89 -0
  206. data/spec/models/notification_publisher_spec.rb +77 -0
  207. data/spec/models/notification_rule_spec.rb +107 -0
  208. data/spec/models/package_url_spec.rb +77 -0
  209. data/spec/models/parameterized_header_spec.rb +47 -0
  210. data/spec/models/permission_spec.rb +47 -0
  211. data/spec/models/portfolio_metrics_spec.rb +149 -0
  212. data/spec/models/project_metrics_spec.rb +131 -0
  213. data/spec/models/project_property_spec.rb +75 -0
  214. data/spec/models/project_spec.rb +119 -0
  215. data/spec/models/repository_meta_component_spec.rb +75 -0
  216. data/spec/models/repository_spec.rb +81 -0
  217. data/spec/models/score_spec.rb +59 -0
  218. data/spec/models/search_result_spec.rb +41 -0
  219. data/spec/models/tag_spec.rb +47 -0
  220. data/spec/models/team_spec.rb +77 -0
  221. data/spec/models/user_principal_spec.rb +71 -0
  222. data/spec/models/vulnerability_metrics_spec.rb +59 -0
  223. data/spec/models/vulnerability_spec.rb +201 -0
  224. data/spec/models/vulnerable_software_spec.rb +197 -0
  225. data/spec/spec_helper.rb +111 -0
  226. data/tmp/tmp.rb +11 -0
  227. metadata +402 -0
@@ -0,0 +1,274 @@
1
+ =begin
2
+ #Dependency-Track API
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: 3.8.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module DependencyTracker
16
+ class ProjectPropertyApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Creates a new project property
23
+ # @param uuid [String] The UUID of the project to create a property for
24
+ # @param [Hash] opts the optional parameters
25
+ # @option opts [ProjectProperty] :body
26
+ # @return [ProjectProperty]
27
+ def create_property(uuid, opts = {})
28
+ data, _status_code, _headers = create_property_with_http_info(uuid, opts)
29
+ data
30
+ end
31
+
32
+ # Creates a new project property
33
+ # @param uuid [String] The UUID of the project to create a property for
34
+ # @param [Hash] opts the optional parameters
35
+ # @option opts [ProjectProperty] :body
36
+ # @return [Array<(ProjectProperty, Integer, Hash)>] ProjectProperty data, response status code and response headers
37
+ def create_property_with_http_info(uuid, opts = {})
38
+ if @api_client.config.debugging
39
+ @api_client.config.logger.debug 'Calling API: ProjectPropertyApi.create_property ...'
40
+ end
41
+ # verify the required parameter 'uuid' is set
42
+ if @api_client.config.client_side_validation && uuid.nil?
43
+ fail ArgumentError, "Missing the required parameter 'uuid' when calling ProjectPropertyApi.create_property"
44
+ end
45
+ # resource path
46
+ local_var_path = '/v1/project/{uuid}/property'.sub('{' + 'uuid' + '}', CGI.escape(uuid.to_s))
47
+
48
+ # query parameters
49
+ query_params = opts[:query_params] || {}
50
+
51
+ # header parameters
52
+ header_params = opts[:header_params] || {}
53
+ # HTTP header 'Accept' (if needed)
54
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
55
+ # HTTP header 'Content-Type'
56
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
57
+
58
+ # form parameters
59
+ form_params = opts[:form_params] || {}
60
+
61
+ # http body (model)
62
+ post_body = opts[:body] || @api_client.object_to_http_body(opts[:'body'])
63
+
64
+ # return_type
65
+ return_type = opts[:return_type] || 'ProjectProperty'
66
+
67
+ # auth_names
68
+ auth_names = opts[:auth_names] || ['X-Api-Key']
69
+
70
+ new_options = opts.merge(
71
+ :header_params => header_params,
72
+ :query_params => query_params,
73
+ :form_params => form_params,
74
+ :body => post_body,
75
+ :auth_names => auth_names,
76
+ :return_type => return_type
77
+ )
78
+
79
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
80
+ if @api_client.config.debugging
81
+ @api_client.config.logger.debug "API called: ProjectPropertyApi#create_property\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
82
+ end
83
+ return data, status_code, headers
84
+ end
85
+
86
+ # Deletes a config property
87
+ # @param uuid [String] The UUID of the project to delete a property from
88
+ # @param [Hash] opts the optional parameters
89
+ # @option opts [ProjectProperty] :body
90
+ # @return [ProjectProperty]
91
+ def delete_property(uuid, opts = {})
92
+ data, _status_code, _headers = delete_property_with_http_info(uuid, opts)
93
+ data
94
+ end
95
+
96
+ # Deletes a config property
97
+ # @param uuid [String] The UUID of the project to delete a property from
98
+ # @param [Hash] opts the optional parameters
99
+ # @option opts [ProjectProperty] :body
100
+ # @return [Array<(ProjectProperty, Integer, Hash)>] ProjectProperty data, response status code and response headers
101
+ def delete_property_with_http_info(uuid, opts = {})
102
+ if @api_client.config.debugging
103
+ @api_client.config.logger.debug 'Calling API: ProjectPropertyApi.delete_property ...'
104
+ end
105
+ # verify the required parameter 'uuid' is set
106
+ if @api_client.config.client_side_validation && uuid.nil?
107
+ fail ArgumentError, "Missing the required parameter 'uuid' when calling ProjectPropertyApi.delete_property"
108
+ end
109
+ # resource path
110
+ local_var_path = '/v1/project/{uuid}/property'.sub('{' + 'uuid' + '}', CGI.escape(uuid.to_s))
111
+
112
+ # query parameters
113
+ query_params = opts[:query_params] || {}
114
+
115
+ # header parameters
116
+ header_params = opts[:header_params] || {}
117
+ # HTTP header 'Accept' (if needed)
118
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
119
+ # HTTP header 'Content-Type'
120
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
121
+
122
+ # form parameters
123
+ form_params = opts[:form_params] || {}
124
+
125
+ # http body (model)
126
+ post_body = opts[:body] || @api_client.object_to_http_body(opts[:'body'])
127
+
128
+ # return_type
129
+ return_type = opts[:return_type] || 'ProjectProperty'
130
+
131
+ # auth_names
132
+ auth_names = opts[:auth_names] || ['X-Api-Key']
133
+
134
+ new_options = opts.merge(
135
+ :header_params => header_params,
136
+ :query_params => query_params,
137
+ :form_params => form_params,
138
+ :body => post_body,
139
+ :auth_names => auth_names,
140
+ :return_type => return_type
141
+ )
142
+
143
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
144
+ if @api_client.config.debugging
145
+ @api_client.config.logger.debug "API called: ProjectPropertyApi#delete_property\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
146
+ end
147
+ return data, status_code, headers
148
+ end
149
+
150
+ # Returns a list of all ProjectProperties for the specified project
151
+ # @param uuid [String] The UUID of the project to retrieve properties for
152
+ # @param [Hash] opts the optional parameters
153
+ # @return [Array<ProjectProperty>]
154
+ def get_properties(uuid, opts = {})
155
+ data, _status_code, _headers = get_properties_with_http_info(uuid, opts)
156
+ data
157
+ end
158
+
159
+ # Returns a list of all ProjectProperties for the specified project
160
+ # @param uuid [String] The UUID of the project to retrieve properties for
161
+ # @param [Hash] opts the optional parameters
162
+ # @return [Array<(Array<ProjectProperty>, Integer, Hash)>] Array<ProjectProperty> data, response status code and response headers
163
+ def get_properties_with_http_info(uuid, opts = {})
164
+ if @api_client.config.debugging
165
+ @api_client.config.logger.debug 'Calling API: ProjectPropertyApi.get_properties ...'
166
+ end
167
+ # verify the required parameter 'uuid' is set
168
+ if @api_client.config.client_side_validation && uuid.nil?
169
+ fail ArgumentError, "Missing the required parameter 'uuid' when calling ProjectPropertyApi.get_properties"
170
+ end
171
+ # resource path
172
+ local_var_path = '/v1/project/{uuid}/property'.sub('{' + 'uuid' + '}', CGI.escape(uuid.to_s))
173
+
174
+ # query parameters
175
+ query_params = opts[:query_params] || {}
176
+
177
+ # header parameters
178
+ header_params = opts[:header_params] || {}
179
+ # HTTP header 'Accept' (if needed)
180
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
181
+
182
+ # form parameters
183
+ form_params = opts[:form_params] || {}
184
+
185
+ # http body (model)
186
+ post_body = opts[:body]
187
+
188
+ # return_type
189
+ return_type = opts[:return_type] || 'Array<ProjectProperty>'
190
+
191
+ # auth_names
192
+ auth_names = opts[:auth_names] || ['X-Api-Key']
193
+
194
+ new_options = opts.merge(
195
+ :header_params => header_params,
196
+ :query_params => query_params,
197
+ :form_params => form_params,
198
+ :body => post_body,
199
+ :auth_names => auth_names,
200
+ :return_type => return_type
201
+ )
202
+
203
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
204
+ if @api_client.config.debugging
205
+ @api_client.config.logger.debug "API called: ProjectPropertyApi#get_properties\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
206
+ end
207
+ return data, status_code, headers
208
+ end
209
+
210
+ # Updates a project property
211
+ # @param uuid [String] The UUID of the project to create a property for
212
+ # @param [Hash] opts the optional parameters
213
+ # @option opts [ProjectProperty] :body
214
+ # @return [ProjectProperty]
215
+ def update_property(uuid, opts = {})
216
+ data, _status_code, _headers = update_property_with_http_info(uuid, opts)
217
+ data
218
+ end
219
+
220
+ # Updates a project property
221
+ # @param uuid [String] The UUID of the project to create a property for
222
+ # @param [Hash] opts the optional parameters
223
+ # @option opts [ProjectProperty] :body
224
+ # @return [Array<(ProjectProperty, Integer, Hash)>] ProjectProperty data, response status code and response headers
225
+ def update_property_with_http_info(uuid, opts = {})
226
+ if @api_client.config.debugging
227
+ @api_client.config.logger.debug 'Calling API: ProjectPropertyApi.update_property ...'
228
+ end
229
+ # verify the required parameter 'uuid' is set
230
+ if @api_client.config.client_side_validation && uuid.nil?
231
+ fail ArgumentError, "Missing the required parameter 'uuid' when calling ProjectPropertyApi.update_property"
232
+ end
233
+ # resource path
234
+ local_var_path = '/v1/project/{uuid}/property'.sub('{' + 'uuid' + '}', CGI.escape(uuid.to_s))
235
+
236
+ # query parameters
237
+ query_params = opts[:query_params] || {}
238
+
239
+ # header parameters
240
+ header_params = opts[:header_params] || {}
241
+ # HTTP header 'Accept' (if needed)
242
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
243
+ # HTTP header 'Content-Type'
244
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
245
+
246
+ # form parameters
247
+ form_params = opts[:form_params] || {}
248
+
249
+ # http body (model)
250
+ post_body = opts[:body] || @api_client.object_to_http_body(opts[:'body'])
251
+
252
+ # return_type
253
+ return_type = opts[:return_type] || 'ProjectProperty'
254
+
255
+ # auth_names
256
+ auth_names = opts[:auth_names] || ['X-Api-Key']
257
+
258
+ new_options = opts.merge(
259
+ :header_params => header_params,
260
+ :query_params => query_params,
261
+ :form_params => form_params,
262
+ :body => post_body,
263
+ :auth_names => auth_names,
264
+ :return_type => return_type
265
+ )
266
+
267
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
268
+ if @api_client.config.debugging
269
+ @api_client.config.logger.debug "API called: ProjectPropertyApi#update_property\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
270
+ end
271
+ return data, status_code, headers
272
+ end
273
+ end
274
+ end
@@ -0,0 +1,376 @@
1
+ =begin
2
+ #Dependency-Track API
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: 3.8.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module DependencyTracker
16
+ class RepositoryApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Creates a new repository
23
+ # @param [Hash] opts the optional parameters
24
+ # @option opts [Repository] :body
25
+ # @return [Repository]
26
+ def create_repository(opts = {})
27
+ data, _status_code, _headers = create_repository_with_http_info(opts)
28
+ data
29
+ end
30
+
31
+ # Creates a new repository
32
+ # @param [Hash] opts the optional parameters
33
+ # @option opts [Repository] :body
34
+ # @return [Array<(Repository, Integer, Hash)>] Repository data, response status code and response headers
35
+ def create_repository_with_http_info(opts = {})
36
+ if @api_client.config.debugging
37
+ @api_client.config.logger.debug 'Calling API: RepositoryApi.create_repository ...'
38
+ end
39
+ # resource path
40
+ local_var_path = '/v1/repository'
41
+
42
+ # query parameters
43
+ query_params = opts[:query_params] || {}
44
+
45
+ # header parameters
46
+ header_params = opts[:header_params] || {}
47
+ # HTTP header 'Accept' (if needed)
48
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
49
+ # HTTP header 'Content-Type'
50
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
51
+
52
+ # form parameters
53
+ form_params = opts[:form_params] || {}
54
+
55
+ # http body (model)
56
+ post_body = opts[:body] || @api_client.object_to_http_body(opts[:'body'])
57
+
58
+ # return_type
59
+ return_type = opts[:return_type] || 'Repository'
60
+
61
+ # auth_names
62
+ auth_names = opts[:auth_names] || ['X-Api-Key']
63
+
64
+ new_options = opts.merge(
65
+ :header_params => header_params,
66
+ :query_params => query_params,
67
+ :form_params => form_params,
68
+ :body => post_body,
69
+ :auth_names => auth_names,
70
+ :return_type => return_type
71
+ )
72
+
73
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
74
+ if @api_client.config.debugging
75
+ @api_client.config.logger.debug "API called: RepositoryApi#create_repository\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
76
+ end
77
+ return data, status_code, headers
78
+ end
79
+
80
+ # Deletes a repository
81
+ # @param uuid [String] The UUID of the repository to delete
82
+ # @param [Hash] opts the optional parameters
83
+ # @return [nil]
84
+ def delete_repository(uuid, opts = {})
85
+ delete_repository_with_http_info(uuid, opts)
86
+ nil
87
+ end
88
+
89
+ # Deletes a repository
90
+ # @param uuid [String] The UUID of the repository to delete
91
+ # @param [Hash] opts the optional parameters
92
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
93
+ def delete_repository_with_http_info(uuid, opts = {})
94
+ if @api_client.config.debugging
95
+ @api_client.config.logger.debug 'Calling API: RepositoryApi.delete_repository ...'
96
+ end
97
+ # verify the required parameter 'uuid' is set
98
+ if @api_client.config.client_side_validation && uuid.nil?
99
+ fail ArgumentError, "Missing the required parameter 'uuid' when calling RepositoryApi.delete_repository"
100
+ end
101
+ # resource path
102
+ local_var_path = '/v1/repository/{uuid}'.sub('{' + 'uuid' + '}', CGI.escape(uuid.to_s))
103
+
104
+ # query parameters
105
+ query_params = opts[:query_params] || {}
106
+
107
+ # header parameters
108
+ header_params = opts[:header_params] || {}
109
+
110
+ # form parameters
111
+ form_params = opts[:form_params] || {}
112
+
113
+ # http body (model)
114
+ post_body = opts[:body]
115
+
116
+ # return_type
117
+ return_type = opts[:return_type]
118
+
119
+ # auth_names
120
+ auth_names = opts[:auth_names] || ['X-Api-Key']
121
+
122
+ new_options = opts.merge(
123
+ :header_params => header_params,
124
+ :query_params => query_params,
125
+ :form_params => form_params,
126
+ :body => post_body,
127
+ :auth_names => auth_names,
128
+ :return_type => return_type
129
+ )
130
+
131
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
132
+ if @api_client.config.debugging
133
+ @api_client.config.logger.debug "API called: RepositoryApi#delete_repository\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
134
+ end
135
+ return data, status_code, headers
136
+ end
137
+
138
+ # Returns a list of all repositories
139
+ # @param [Hash] opts the optional parameters
140
+ # @return [Array<Repository>]
141
+ def get_repositories(opts = {})
142
+ data, _status_code, _headers = get_repositories_with_http_info(opts)
143
+ data
144
+ end
145
+
146
+ # Returns a list of all repositories
147
+ # @param [Hash] opts the optional parameters
148
+ # @return [Array<(Array<Repository>, Integer, Hash)>] Array<Repository> data, response status code and response headers
149
+ def get_repositories_with_http_info(opts = {})
150
+ if @api_client.config.debugging
151
+ @api_client.config.logger.debug 'Calling API: RepositoryApi.get_repositories ...'
152
+ end
153
+ # resource path
154
+ local_var_path = '/v1/repository'
155
+
156
+ # query parameters
157
+ query_params = opts[:query_params] || {}
158
+
159
+ # header parameters
160
+ header_params = opts[:header_params] || {}
161
+ # HTTP header 'Accept' (if needed)
162
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
163
+
164
+ # form parameters
165
+ form_params = opts[:form_params] || {}
166
+
167
+ # http body (model)
168
+ post_body = opts[:body]
169
+
170
+ # return_type
171
+ return_type = opts[:return_type] || 'Array<Repository>'
172
+
173
+ # auth_names
174
+ auth_names = opts[:auth_names] || ['X-Api-Key']
175
+
176
+ new_options = opts.merge(
177
+ :header_params => header_params,
178
+ :query_params => query_params,
179
+ :form_params => form_params,
180
+ :body => post_body,
181
+ :auth_names => auth_names,
182
+ :return_type => return_type
183
+ )
184
+
185
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
186
+ if @api_client.config.debugging
187
+ @api_client.config.logger.debug "API called: RepositoryApi#get_repositories\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
188
+ end
189
+ return data, status_code, headers
190
+ end
191
+
192
+ # Returns repositories that support the specific type
193
+ # @param type [String] The type of repositories to retrieve
194
+ # @param [Hash] opts the optional parameters
195
+ # @return [Array<Repository>]
196
+ def get_repositories_by_type(type, opts = {})
197
+ data, _status_code, _headers = get_repositories_by_type_with_http_info(type, opts)
198
+ data
199
+ end
200
+
201
+ # Returns repositories that support the specific type
202
+ # @param type [String] The type of repositories to retrieve
203
+ # @param [Hash] opts the optional parameters
204
+ # @return [Array<(Array<Repository>, Integer, Hash)>] Array<Repository> data, response status code and response headers
205
+ def get_repositories_by_type_with_http_info(type, opts = {})
206
+ if @api_client.config.debugging
207
+ @api_client.config.logger.debug 'Calling API: RepositoryApi.get_repositories_by_type ...'
208
+ end
209
+ # verify the required parameter 'type' is set
210
+ if @api_client.config.client_side_validation && type.nil?
211
+ fail ArgumentError, "Missing the required parameter 'type' when calling RepositoryApi.get_repositories_by_type"
212
+ end
213
+ # verify enum value
214
+ allowable_values = ["MAVEN", "NPM", "GEM", "PYPI", "NUGET", "HEX", "UNSUPPORTED"]
215
+ if @api_client.config.client_side_validation && !allowable_values.include?(type)
216
+ fail ArgumentError, "invalid value for \"type\", must be one of #{allowable_values}"
217
+ end
218
+ # resource path
219
+ local_var_path = '/v1/repository/{type}'.sub('{' + 'type' + '}', CGI.escape(type.to_s))
220
+
221
+ # query parameters
222
+ query_params = opts[:query_params] || {}
223
+
224
+ # header parameters
225
+ header_params = opts[:header_params] || {}
226
+ # HTTP header 'Accept' (if needed)
227
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
228
+
229
+ # form parameters
230
+ form_params = opts[:form_params] || {}
231
+
232
+ # http body (model)
233
+ post_body = opts[:body]
234
+
235
+ # return_type
236
+ return_type = opts[:return_type] || 'Array<Repository>'
237
+
238
+ # auth_names
239
+ auth_names = opts[:auth_names] || ['X-Api-Key']
240
+
241
+ new_options = opts.merge(
242
+ :header_params => header_params,
243
+ :query_params => query_params,
244
+ :form_params => form_params,
245
+ :body => post_body,
246
+ :auth_names => auth_names,
247
+ :return_type => return_type
248
+ )
249
+
250
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
251
+ if @api_client.config.debugging
252
+ @api_client.config.logger.debug "API called: RepositoryApi#get_repositories_by_type\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
253
+ end
254
+ return data, status_code, headers
255
+ end
256
+
257
+ # Attempts to resolve the latest version of the component available in the configured repositories
258
+ # @param purl [String] The Package URL for the component to query
259
+ # @param [Hash] opts the optional parameters
260
+ # @return [RepositoryMetaComponent]
261
+ def get_repository_meta_component(purl, opts = {})
262
+ data, _status_code, _headers = get_repository_meta_component_with_http_info(purl, opts)
263
+ data
264
+ end
265
+
266
+ # Attempts to resolve the latest version of the component available in the configured repositories
267
+ # @param purl [String] The Package URL for the component to query
268
+ # @param [Hash] opts the optional parameters
269
+ # @return [Array<(RepositoryMetaComponent, Integer, Hash)>] RepositoryMetaComponent data, response status code and response headers
270
+ def get_repository_meta_component_with_http_info(purl, opts = {})
271
+ if @api_client.config.debugging
272
+ @api_client.config.logger.debug 'Calling API: RepositoryApi.get_repository_meta_component ...'
273
+ end
274
+ # verify the required parameter 'purl' is set
275
+ if @api_client.config.client_side_validation && purl.nil?
276
+ fail ArgumentError, "Missing the required parameter 'purl' when calling RepositoryApi.get_repository_meta_component"
277
+ end
278
+ # resource path
279
+ local_var_path = '/v1/repository/latest'
280
+
281
+ # query parameters
282
+ query_params = opts[:query_params] || {}
283
+ query_params[:'purl'] = purl
284
+
285
+ # header parameters
286
+ header_params = opts[:header_params] || {}
287
+ # HTTP header 'Accept' (if needed)
288
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
289
+
290
+ # form parameters
291
+ form_params = opts[:form_params] || {}
292
+
293
+ # http body (model)
294
+ post_body = opts[:body]
295
+
296
+ # return_type
297
+ return_type = opts[:return_type] || 'RepositoryMetaComponent'
298
+
299
+ # auth_names
300
+ auth_names = opts[:auth_names] || ['X-Api-Key']
301
+
302
+ new_options = opts.merge(
303
+ :header_params => header_params,
304
+ :query_params => query_params,
305
+ :form_params => form_params,
306
+ :body => post_body,
307
+ :auth_names => auth_names,
308
+ :return_type => return_type
309
+ )
310
+
311
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
312
+ if @api_client.config.debugging
313
+ @api_client.config.logger.debug "API called: RepositoryApi#get_repository_meta_component\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
314
+ end
315
+ return data, status_code, headers
316
+ end
317
+
318
+ # Updates a repository
319
+ # @param [Hash] opts the optional parameters
320
+ # @option opts [Repository] :body
321
+ # @return [Repository]
322
+ def update_repository(opts = {})
323
+ data, _status_code, _headers = update_repository_with_http_info(opts)
324
+ data
325
+ end
326
+
327
+ # Updates a repository
328
+ # @param [Hash] opts the optional parameters
329
+ # @option opts [Repository] :body
330
+ # @return [Array<(Repository, Integer, Hash)>] Repository data, response status code and response headers
331
+ def update_repository_with_http_info(opts = {})
332
+ if @api_client.config.debugging
333
+ @api_client.config.logger.debug 'Calling API: RepositoryApi.update_repository ...'
334
+ end
335
+ # resource path
336
+ local_var_path = '/v1/repository'
337
+
338
+ # query parameters
339
+ query_params = opts[:query_params] || {}
340
+
341
+ # header parameters
342
+ header_params = opts[:header_params] || {}
343
+ # HTTP header 'Accept' (if needed)
344
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
345
+ # HTTP header 'Content-Type'
346
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
347
+
348
+ # form parameters
349
+ form_params = opts[:form_params] || {}
350
+
351
+ # http body (model)
352
+ post_body = opts[:body] || @api_client.object_to_http_body(opts[:'body'])
353
+
354
+ # return_type
355
+ return_type = opts[:return_type] || 'Repository'
356
+
357
+ # auth_names
358
+ auth_names = opts[:auth_names] || ['X-Api-Key']
359
+
360
+ new_options = opts.merge(
361
+ :header_params => header_params,
362
+ :query_params => query_params,
363
+ :form_params => form_params,
364
+ :body => post_body,
365
+ :auth_names => auth_names,
366
+ :return_type => return_type
367
+ )
368
+
369
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
370
+ if @api_client.config.debugging
371
+ @api_client.config.logger.debug "API called: RepositoryApi#update_repository\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
372
+ end
373
+ return data, status_code, headers
374
+ end
375
+ end
376
+ end