nodeum_sdk 1.85.1

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 (439) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/LICENSE +21 -0
  4. data/README.md +472 -0
  5. data/Rakefile +10 -0
  6. data/docs/ActiveJobStatus.md +23 -0
  7. data/docs/ApiKey.md +21 -0
  8. data/docs/ApiKeyCollection.md +19 -0
  9. data/docs/ApiKeyFull.md +17 -0
  10. data/docs/ApiKeyFullAllOf.md +17 -0
  11. data/docs/ApiKeyScope.md +19 -0
  12. data/docs/AttributeError.md +17 -0
  13. data/docs/Blank.md +16 -0
  14. data/docs/ByDateFacet.md +35 -0
  15. data/docs/ByDateFacetBucket.md +17 -0
  16. data/docs/ByDateFacetBucketAllOf.md +17 -0
  17. data/docs/ByDateFacetBuckets.md +17 -0
  18. data/docs/ByFileExtensionFacet.md +17 -0
  19. data/docs/ByFileExtensionFacetAllOf.md +17 -0
  20. data/docs/ByGroupOwnerFacet.md +17 -0
  21. data/docs/ByGroupOwnerFacetAllOf.md +17 -0
  22. data/docs/ByPrimaryFacet.md +17 -0
  23. data/docs/ByPrimaryFacetAllOf.md +17 -0
  24. data/docs/BySecondaryBucket.md +17 -0
  25. data/docs/BySecondaryBucketAllOf.md +17 -0
  26. data/docs/BySecondaryBuckets.md +17 -0
  27. data/docs/BySecondaryFacet.md +29 -0
  28. data/docs/BySecondaryTypeFacet.md +17 -0
  29. data/docs/BySecondaryTypeFacetAllOf.md +17 -0
  30. data/docs/BySizeFacet.md +35 -0
  31. data/docs/ByUserOwnerFacet.md +17 -0
  32. data/docs/ByUserOwnerFacetAllOf.md +17 -0
  33. data/docs/CloudBucket.md +31 -0
  34. data/docs/CloudBucketCollection.md +19 -0
  35. data/docs/CloudBucketSimpleCollection.md +17 -0
  36. data/docs/CloudBucketsApi.md +908 -0
  37. data/docs/CloudConnector.md +31 -0
  38. data/docs/CloudConnectorCollection.md +19 -0
  39. data/docs/CloudConnectorsApi.md +442 -0
  40. data/docs/Container.md +35 -0
  41. data/docs/ContainerCollection.md +19 -0
  42. data/docs/ContainerPrivilege.md +23 -0
  43. data/docs/ContainerPrivilegeCollection.md +19 -0
  44. data/docs/ContainersApi.md +650 -0
  45. data/docs/DateToFileFacets.md +31 -0
  46. data/docs/Error.md +19 -0
  47. data/docs/FileFacet.md +19 -0
  48. data/docs/FilesApi.md +2090 -0
  49. data/docs/Frozen.md +16 -0
  50. data/docs/GreaterThan.md +19 -0
  51. data/docs/GreaterThanAllOf.md +19 -0
  52. data/docs/GreaterThanOrEqualTo.md +19 -0
  53. data/docs/ImportFile.md +39 -0
  54. data/docs/ImportFileCollection.md +19 -0
  55. data/docs/ImportFileWithPath.md +41 -0
  56. data/docs/Invalid.md +17 -0
  57. data/docs/LessThan.md +19 -0
  58. data/docs/LessThanAllOf.md +19 -0
  59. data/docs/LessThanOrEqualTo.md +19 -0
  60. data/docs/MountCollection.md +17 -0
  61. data/docs/MountInfo.md +57 -0
  62. data/docs/MountNotification.md +19 -0
  63. data/docs/MountStatus.md +21 -0
  64. data/docs/MountsApi.md +63 -0
  65. data/docs/Nas.md +27 -0
  66. data/docs/NasApi.md +322 -0
  67. data/docs/NasCollection.md +19 -0
  68. data/docs/NasShare.md +35 -0
  69. data/docs/NasShareCollection.md +19 -0
  70. data/docs/NasSharesApi.md +1155 -0
  71. data/docs/NodeumFile.md +39 -0
  72. data/docs/NodeumFileCollection.md +19 -0
  73. data/docs/NodeumFileWithPath.md +17 -0
  74. data/docs/NodeumFileWithPathAllOf.md +17 -0
  75. data/docs/OccurrenceLessThan.md +19 -0
  76. data/docs/OccurrenceLessThanAllOf.md +19 -0
  77. data/docs/OccurrenceLessThanOrEqualTo.md +19 -0
  78. data/docs/OnTapesFile.md +25 -0
  79. data/docs/OnTapesFileCollection.md +19 -0
  80. data/docs/Pool.md +27 -0
  81. data/docs/PoolCollection.md +19 -0
  82. data/docs/PoolUp.md +21 -0
  83. data/docs/PoolUpAllOf.md +21 -0
  84. data/docs/PoolsApi.md +798 -0
  85. data/docs/PrimaryScan.md +25 -0
  86. data/docs/QuotaOnCache.md +16 -0
  87. data/docs/Reset.md +17 -0
  88. data/docs/ResetSections.md +21 -0
  89. data/docs/SizeToDateFacets.md +31 -0
  90. data/docs/StatisticsApi.md +386 -0
  91. data/docs/SystemGroup.md +21 -0
  92. data/docs/SystemGroupCollection.md +19 -0
  93. data/docs/SystemUser.md +23 -0
  94. data/docs/SystemUserCollection.md +19 -0
  95. data/docs/SystemsApi.md +183 -0
  96. data/docs/Taken.md +17 -0
  97. data/docs/TakenAllOf.md +17 -0
  98. data/docs/Tape.md +65 -0
  99. data/docs/TapeCollection.md +19 -0
  100. data/docs/TapeDrive.md +55 -0
  101. data/docs/TapeDriveAllOf.md +55 -0
  102. data/docs/TapeDriveCollection.md +19 -0
  103. data/docs/TapeDriveDevice.md +29 -0
  104. data/docs/TapeDriveDeviceCollection.md +17 -0
  105. data/docs/TapeDrivesApi.md +730 -0
  106. data/docs/TapeLibrariesApi.md +403 -0
  107. data/docs/TapeLibrary.md +27 -0
  108. data/docs/TapeLibraryAllOf.md +27 -0
  109. data/docs/TapeLibraryCollection.md +19 -0
  110. data/docs/TapeLibraryDevice.md +37 -0
  111. data/docs/TapeLibraryDeviceCollection.md +17 -0
  112. data/docs/TapeStat.md +115 -0
  113. data/docs/TapeStatCollection.md +19 -0
  114. data/docs/TapesApi.md +959 -0
  115. data/docs/Task.md +55 -0
  116. data/docs/TaskCallback.md +21 -0
  117. data/docs/TaskCallbackCollection.md +19 -0
  118. data/docs/TaskCallbacksApi.md +326 -0
  119. data/docs/TaskCollection.md +19 -0
  120. data/docs/TaskDestinationCollection.md +19 -0
  121. data/docs/TaskDestinationDown.md +25 -0
  122. data/docs/TaskDestinationUp.md +27 -0
  123. data/docs/TaskDestinationsApi.md +328 -0
  124. data/docs/TaskExecution.md +51 -0
  125. data/docs/TaskExecutionCollection.md +19 -0
  126. data/docs/TaskExecutionsApi.md +336 -0
  127. data/docs/TaskMetadataApi.md +326 -0
  128. data/docs/TaskMetadatum.md +21 -0
  129. data/docs/TaskMetadatumCollection.md +19 -0
  130. data/docs/TaskOption.md +21 -0
  131. data/docs/TaskOptionCollection.md +19 -0
  132. data/docs/TaskOptionsApi.md +326 -0
  133. data/docs/TaskSchedule.md +34 -0
  134. data/docs/TaskScheduleCollection.md +19 -0
  135. data/docs/TaskSchedulesApi.md +322 -0
  136. data/docs/TaskSourceCollection.md +19 -0
  137. data/docs/TaskSourceDown.md +29 -0
  138. data/docs/TaskSourceUp.md +33 -0
  139. data/docs/TaskSourcesApi.md +330 -0
  140. data/docs/TasksApi.md +846 -0
  141. data/docs/TooLong.md +17 -0
  142. data/docs/TooLongAllOf.md +17 -0
  143. data/docs/TooShort.md +17 -0
  144. data/docs/TooShortAllOf.md +17 -0
  145. data/docs/TypeToSecondaryFacets.md +25 -0
  146. data/docs/UsersApi.md +418 -0
  147. data/git_push.sh +58 -0
  148. data/lib/nodeum_sdk.rb +180 -0
  149. data/lib/nodeum_sdk/api/cloud_buckets_api.rb +1026 -0
  150. data/lib/nodeum_sdk/api/cloud_connectors_api.rb +491 -0
  151. data/lib/nodeum_sdk/api/containers_api.rb +736 -0
  152. data/lib/nodeum_sdk/api/files_api.rb +2418 -0
  153. data/lib/nodeum_sdk/api/mounts_api.rb +78 -0
  154. data/lib/nodeum_sdk/api/nas_api.rb +361 -0
  155. data/lib/nodeum_sdk/api/nas_shares_api.rb +1305 -0
  156. data/lib/nodeum_sdk/api/pools_api.rb +876 -0
  157. data/lib/nodeum_sdk/api/statistics_api.rb +418 -0
  158. data/lib/nodeum_sdk/api/systems_api.rb +215 -0
  159. data/lib/nodeum_sdk/api/tape_drives_api.rb +858 -0
  160. data/lib/nodeum_sdk/api/tape_libraries_api.rb +457 -0
  161. data/lib/nodeum_sdk/api/tapes_api.rb +1104 -0
  162. data/lib/nodeum_sdk/api/task_callbacks_api.rb +382 -0
  163. data/lib/nodeum_sdk/api/task_destinations_api.rb +385 -0
  164. data/lib/nodeum_sdk/api/task_executions_api.rb +399 -0
  165. data/lib/nodeum_sdk/api/task_metadata_api.rb +382 -0
  166. data/lib/nodeum_sdk/api/task_options_api.rb +382 -0
  167. data/lib/nodeum_sdk/api/task_schedules_api.rb +364 -0
  168. data/lib/nodeum_sdk/api/task_sources_api.rb +388 -0
  169. data/lib/nodeum_sdk/api/tasks_api.rb +951 -0
  170. data/lib/nodeum_sdk/api/users_api.rb +452 -0
  171. data/lib/nodeum_sdk/api_client.rb +386 -0
  172. data/lib/nodeum_sdk/api_error.rb +57 -0
  173. data/lib/nodeum_sdk/configuration.rb +255 -0
  174. data/lib/nodeum_sdk/models/active_job_status.rb +267 -0
  175. data/lib/nodeum_sdk/models/api_key.rb +224 -0
  176. data/lib/nodeum_sdk/models/api_key_collection.rb +217 -0
  177. data/lib/nodeum_sdk/models/api_key_full.rb +220 -0
  178. data/lib/nodeum_sdk/models/api_key_full_all_of.rb +208 -0
  179. data/lib/nodeum_sdk/models/api_key_scope.rb +215 -0
  180. data/lib/nodeum_sdk/models/attribute_error.rb +216 -0
  181. data/lib/nodeum_sdk/models/blank.rb +209 -0
  182. data/lib/nodeum_sdk/models/by_date_facet.rb +295 -0
  183. data/lib/nodeum_sdk/models/by_date_facet_bucket.rb +218 -0
  184. data/lib/nodeum_sdk/models/by_date_facet_bucket_all_of.rb +206 -0
  185. data/lib/nodeum_sdk/models/by_date_facet_buckets.rb +208 -0
  186. data/lib/nodeum_sdk/models/by_file_extension_facet.rb +218 -0
  187. data/lib/nodeum_sdk/models/by_file_extension_facet_all_of.rb +206 -0
  188. data/lib/nodeum_sdk/models/by_group_owner_facet.rb +218 -0
  189. data/lib/nodeum_sdk/models/by_group_owner_facet_all_of.rb +206 -0
  190. data/lib/nodeum_sdk/models/by_primary_facet.rb +218 -0
  191. data/lib/nodeum_sdk/models/by_primary_facet_all_of.rb +206 -0
  192. data/lib/nodeum_sdk/models/by_secondary_bucket.rb +218 -0
  193. data/lib/nodeum_sdk/models/by_secondary_bucket_all_of.rb +206 -0
  194. data/lib/nodeum_sdk/models/by_secondary_buckets.rb +208 -0
  195. data/lib/nodeum_sdk/models/by_secondary_facet.rb +268 -0
  196. data/lib/nodeum_sdk/models/by_secondary_type_facet.rb +218 -0
  197. data/lib/nodeum_sdk/models/by_secondary_type_facet_all_of.rb +206 -0
  198. data/lib/nodeum_sdk/models/by_size_facet.rb +295 -0
  199. data/lib/nodeum_sdk/models/by_user_owner_facet.rb +218 -0
  200. data/lib/nodeum_sdk/models/by_user_owner_facet_all_of.rb +206 -0
  201. data/lib/nodeum_sdk/models/cloud_bucket.rb +269 -0
  202. data/lib/nodeum_sdk/models/cloud_bucket_collection.rb +217 -0
  203. data/lib/nodeum_sdk/models/cloud_bucket_simple_collection.rb +208 -0
  204. data/lib/nodeum_sdk/models/cloud_connector.rb +303 -0
  205. data/lib/nodeum_sdk/models/cloud_connector_collection.rb +217 -0
  206. data/lib/nodeum_sdk/models/container.rb +321 -0
  207. data/lib/nodeum_sdk/models/container_collection.rb +217 -0
  208. data/lib/nodeum_sdk/models/container_privilege.rb +279 -0
  209. data/lib/nodeum_sdk/models/container_privilege_collection.rb +217 -0
  210. data/lib/nodeum_sdk/models/date_to_file_facets.rb +269 -0
  211. data/lib/nodeum_sdk/models/error.rb +221 -0
  212. data/lib/nodeum_sdk/models/file_facet.rb +215 -0
  213. data/lib/nodeum_sdk/models/frozen.rb +209 -0
  214. data/lib/nodeum_sdk/models/greater_than.rb +230 -0
  215. data/lib/nodeum_sdk/models/greater_than_all_of.rb +217 -0
  216. data/lib/nodeum_sdk/models/greater_than_or_equal_to.rb +230 -0
  217. data/lib/nodeum_sdk/models/import_file.rb +339 -0
  218. data/lib/nodeum_sdk/models/import_file_collection.rb +217 -0
  219. data/lib/nodeum_sdk/models/import_file_with_path.rb +356 -0
  220. data/lib/nodeum_sdk/models/invalid.rb +220 -0
  221. data/lib/nodeum_sdk/models/less_than.rb +230 -0
  222. data/lib/nodeum_sdk/models/less_than_all_of.rb +217 -0
  223. data/lib/nodeum_sdk/models/less_than_or_equal_to.rb +230 -0
  224. data/lib/nodeum_sdk/models/mount_collection.rb +208 -0
  225. data/lib/nodeum_sdk/models/mount_info.rb +420 -0
  226. data/lib/nodeum_sdk/models/mount_notification.rb +249 -0
  227. data/lib/nodeum_sdk/models/mount_status.rb +224 -0
  228. data/lib/nodeum_sdk/models/nas.rb +285 -0
  229. data/lib/nodeum_sdk/models/nas_collection.rb +217 -0
  230. data/lib/nodeum_sdk/models/nas_share.rb +287 -0
  231. data/lib/nodeum_sdk/models/nas_share_collection.rb +217 -0
  232. data/lib/nodeum_sdk/models/nodeum_file.rb +339 -0
  233. data/lib/nodeum_sdk/models/nodeum_file_collection.rb +217 -0
  234. data/lib/nodeum_sdk/models/nodeum_file_with_path.rb +240 -0
  235. data/lib/nodeum_sdk/models/nodeum_file_with_path_all_of.rb +206 -0
  236. data/lib/nodeum_sdk/models/occurrence_less_than.rb +230 -0
  237. data/lib/nodeum_sdk/models/occurrence_less_than_all_of.rb +217 -0
  238. data/lib/nodeum_sdk/models/occurrence_less_than_or_equal_to.rb +230 -0
  239. data/lib/nodeum_sdk/models/on_tapes_file.rb +278 -0
  240. data/lib/nodeum_sdk/models/on_tapes_file_collection.rb +217 -0
  241. data/lib/nodeum_sdk/models/pool.rb +297 -0
  242. data/lib/nodeum_sdk/models/pool_collection.rb +217 -0
  243. data/lib/nodeum_sdk/models/pool_up.rb +264 -0
  244. data/lib/nodeum_sdk/models/pool_up_all_of.rb +230 -0
  245. data/lib/nodeum_sdk/models/primary_scan.rb +276 -0
  246. data/lib/nodeum_sdk/models/quota_on_cache.rb +209 -0
  247. data/lib/nodeum_sdk/models/reset.rb +209 -0
  248. data/lib/nodeum_sdk/models/reset_sections.rb +265 -0
  249. data/lib/nodeum_sdk/models/size_to_date_facets.rb +269 -0
  250. data/lib/nodeum_sdk/models/system_group.rb +226 -0
  251. data/lib/nodeum_sdk/models/system_group_collection.rb +217 -0
  252. data/lib/nodeum_sdk/models/system_user.rb +233 -0
  253. data/lib/nodeum_sdk/models/system_user_collection.rb +217 -0
  254. data/lib/nodeum_sdk/models/taken.rb +220 -0
  255. data/lib/nodeum_sdk/models/taken_all_of.rb +207 -0
  256. data/lib/nodeum_sdk/models/tape.rb +456 -0
  257. data/lib/nodeum_sdk/models/tape_collection.rb +217 -0
  258. data/lib/nodeum_sdk/models/tape_drive.rb +423 -0
  259. data/lib/nodeum_sdk/models/tape_drive_all_of.rb +411 -0
  260. data/lib/nodeum_sdk/models/tape_drive_collection.rb +217 -0
  261. data/lib/nodeum_sdk/models/tape_drive_device.rb +261 -0
  262. data/lib/nodeum_sdk/models/tape_drive_device_collection.rb +208 -0
  263. data/lib/nodeum_sdk/models/tape_library.rb +297 -0
  264. data/lib/nodeum_sdk/models/tape_library_all_of.rb +285 -0
  265. data/lib/nodeum_sdk/models/tape_library_collection.rb +217 -0
  266. data/lib/nodeum_sdk/models/tape_library_device.rb +330 -0
  267. data/lib/nodeum_sdk/models/tape_library_device_collection.rb +208 -0
  268. data/lib/nodeum_sdk/models/tape_stat.rb +647 -0
  269. data/lib/nodeum_sdk/models/tape_stat_collection.rb +217 -0
  270. data/lib/nodeum_sdk/models/task.rb +483 -0
  271. data/lib/nodeum_sdk/models/task_callback.rb +258 -0
  272. data/lib/nodeum_sdk/models/task_callback_collection.rb +217 -0
  273. data/lib/nodeum_sdk/models/task_collection.rb +217 -0
  274. data/lib/nodeum_sdk/models/task_destination_collection.rb +217 -0
  275. data/lib/nodeum_sdk/models/task_destination_down.rb +242 -0
  276. data/lib/nodeum_sdk/models/task_destination_up.rb +251 -0
  277. data/lib/nodeum_sdk/models/task_execution.rb +441 -0
  278. data/lib/nodeum_sdk/models/task_execution_collection.rb +217 -0
  279. data/lib/nodeum_sdk/models/task_metadatum.rb +224 -0
  280. data/lib/nodeum_sdk/models/task_metadatum_collection.rb +217 -0
  281. data/lib/nodeum_sdk/models/task_option.rb +258 -0
  282. data/lib/nodeum_sdk/models/task_option_collection.rb +217 -0
  283. data/lib/nodeum_sdk/models/task_schedule.rb +278 -0
  284. data/lib/nodeum_sdk/models/task_schedule_collection.rb +217 -0
  285. data/lib/nodeum_sdk/models/task_source_collection.rb +217 -0
  286. data/lib/nodeum_sdk/models/task_source_down.rb +262 -0
  287. data/lib/nodeum_sdk/models/task_source_up.rb +280 -0
  288. data/lib/nodeum_sdk/models/too_long.rb +220 -0
  289. data/lib/nodeum_sdk/models/too_long_all_of.rb +207 -0
  290. data/lib/nodeum_sdk/models/too_short.rb +220 -0
  291. data/lib/nodeum_sdk/models/too_short_all_of.rb +207 -0
  292. data/lib/nodeum_sdk/models/type_to_secondary_facets.rb +242 -0
  293. data/lib/nodeum_sdk/version.rb +15 -0
  294. data/nodeum_sdk.gemspec +39 -0
  295. data/spec/api/cloud_buckets_api_spec.rb +237 -0
  296. data/spec/api/cloud_connectors_api_spec.rb +129 -0
  297. data/spec/api/containers_api_spec.rb +180 -0
  298. data/spec/api/files_api_spec.rb +570 -0
  299. data/spec/api/mounts_api_spec.rb +46 -0
  300. data/spec/api/nas_api_spec.rb +104 -0
  301. data/spec/api/nas_shares_api_spec.rb +292 -0
  302. data/spec/api/pools_api_spec.rb +203 -0
  303. data/spec/api/statistics_api_spec.rb +113 -0
  304. data/spec/api/systems_api_spec.rb +70 -0
  305. data/spec/api/tape_drives_api_spec.rb +220 -0
  306. data/spec/api/tape_libraries_api_spec.rb +127 -0
  307. data/spec/api/tapes_api_spec.rb +279 -0
  308. data/spec/api/task_callbacks_api_spec.rb +106 -0
  309. data/spec/api/task_destinations_api_spec.rb +107 -0
  310. data/spec/api/task_executions_api_spec.rb +127 -0
  311. data/spec/api/task_metadata_api_spec.rb +106 -0
  312. data/spec/api/task_options_api_spec.rb +106 -0
  313. data/spec/api/task_schedules_api_spec.rb +104 -0
  314. data/spec/api/task_sources_api_spec.rb +108 -0
  315. data/spec/api/tasks_api_spec.rb +226 -0
  316. data/spec/api/users_api_spec.rb +119 -0
  317. data/spec/api_client_spec.rb +226 -0
  318. data/spec/configuration_spec.rb +42 -0
  319. data/spec/models/active_job_status_spec.rb +63 -0
  320. data/spec/models/api_key_collection_spec.rb +47 -0
  321. data/spec/models/api_key_full_all_of_spec.rb +41 -0
  322. data/spec/models/api_key_full_spec.rb +41 -0
  323. data/spec/models/api_key_scope_spec.rb +47 -0
  324. data/spec/models/api_key_spec.rb +53 -0
  325. data/spec/models/attribute_error_spec.rb +41 -0
  326. data/spec/models/blank_spec.rb +35 -0
  327. data/spec/models/by_date_facet_bucket_all_of_spec.rb +41 -0
  328. data/spec/models/by_date_facet_bucket_spec.rb +41 -0
  329. data/spec/models/by_date_facet_buckets_spec.rb +41 -0
  330. data/spec/models/by_date_facet_spec.rb +95 -0
  331. data/spec/models/by_file_extension_facet_all_of_spec.rb +41 -0
  332. data/spec/models/by_file_extension_facet_spec.rb +41 -0
  333. data/spec/models/by_group_owner_facet_all_of_spec.rb +41 -0
  334. data/spec/models/by_group_owner_facet_spec.rb +41 -0
  335. data/spec/models/by_primary_facet_all_of_spec.rb +41 -0
  336. data/spec/models/by_primary_facet_spec.rb +41 -0
  337. data/spec/models/by_secondary_bucket_all_of_spec.rb +41 -0
  338. data/spec/models/by_secondary_bucket_spec.rb +41 -0
  339. data/spec/models/by_secondary_buckets_spec.rb +41 -0
  340. data/spec/models/by_secondary_facet_spec.rb +77 -0
  341. data/spec/models/by_secondary_type_facet_all_of_spec.rb +41 -0
  342. data/spec/models/by_secondary_type_facet_spec.rb +41 -0
  343. data/spec/models/by_size_facet_spec.rb +95 -0
  344. data/spec/models/by_user_owner_facet_all_of_spec.rb +41 -0
  345. data/spec/models/by_user_owner_facet_spec.rb +41 -0
  346. data/spec/models/cloud_bucket_collection_spec.rb +47 -0
  347. data/spec/models/cloud_bucket_simple_collection_spec.rb +41 -0
  348. data/spec/models/cloud_bucket_spec.rb +83 -0
  349. data/spec/models/cloud_connector_collection_spec.rb +47 -0
  350. data/spec/models/cloud_connector_spec.rb +87 -0
  351. data/spec/models/container_collection_spec.rb +47 -0
  352. data/spec/models/container_privilege_collection_spec.rb +47 -0
  353. data/spec/models/container_privilege_spec.rb +67 -0
  354. data/spec/models/container_spec.rb +99 -0
  355. data/spec/models/date_to_file_facets_spec.rb +83 -0
  356. data/spec/models/error_spec.rb +47 -0
  357. data/spec/models/file_facet_spec.rb +47 -0
  358. data/spec/models/frozen_spec.rb +35 -0
  359. data/spec/models/greater_than_all_of_spec.rb +47 -0
  360. data/spec/models/greater_than_or_equal_to_spec.rb +47 -0
  361. data/spec/models/greater_than_spec.rb +47 -0
  362. data/spec/models/import_file_collection_spec.rb +47 -0
  363. data/spec/models/import_file_spec.rb +111 -0
  364. data/spec/models/import_file_with_path_spec.rb +117 -0
  365. data/spec/models/invalid_spec.rb +41 -0
  366. data/spec/models/less_than_all_of_spec.rb +47 -0
  367. data/spec/models/less_than_or_equal_to_spec.rb +47 -0
  368. data/spec/models/less_than_spec.rb +47 -0
  369. data/spec/models/mount_collection_spec.rb +41 -0
  370. data/spec/models/mount_info_spec.rb +165 -0
  371. data/spec/models/mount_notification_spec.rb +51 -0
  372. data/spec/models/mount_status_spec.rb +53 -0
  373. data/spec/models/nas_collection_spec.rb +47 -0
  374. data/spec/models/nas_share_collection_spec.rb +47 -0
  375. data/spec/models/nas_share_spec.rb +95 -0
  376. data/spec/models/nas_spec.rb +75 -0
  377. data/spec/models/nodeum_file_collection_spec.rb +47 -0
  378. data/spec/models/nodeum_file_spec.rb +111 -0
  379. data/spec/models/nodeum_file_with_path_all_of_spec.rb +41 -0
  380. data/spec/models/nodeum_file_with_path_spec.rb +41 -0
  381. data/spec/models/occurrence_less_than_all_of_spec.rb +47 -0
  382. data/spec/models/occurrence_less_than_or_equal_to_spec.rb +47 -0
  383. data/spec/models/occurrence_less_than_spec.rb +47 -0
  384. data/spec/models/on_tapes_file_collection_spec.rb +47 -0
  385. data/spec/models/on_tapes_file_spec.rb +69 -0
  386. data/spec/models/pool_collection_spec.rb +47 -0
  387. data/spec/models/pool_spec.rb +79 -0
  388. data/spec/models/pool_up_all_of_spec.rb +53 -0
  389. data/spec/models/pool_up_spec.rb +53 -0
  390. data/spec/models/primary_scan_spec.rb +69 -0
  391. data/spec/models/quota_on_cache_spec.rb +35 -0
  392. data/spec/models/reset_sections_spec.rb +57 -0
  393. data/spec/models/reset_spec.rb +41 -0
  394. data/spec/models/size_to_date_facets_spec.rb +83 -0
  395. data/spec/models/system_group_collection_spec.rb +47 -0
  396. data/spec/models/system_group_spec.rb +53 -0
  397. data/spec/models/system_user_collection_spec.rb +47 -0
  398. data/spec/models/system_user_spec.rb +59 -0
  399. data/spec/models/taken_all_of_spec.rb +41 -0
  400. data/spec/models/taken_spec.rb +41 -0
  401. data/spec/models/tape_collection_spec.rb +47 -0
  402. data/spec/models/tape_drive_all_of_spec.rb +159 -0
  403. data/spec/models/tape_drive_collection_spec.rb +47 -0
  404. data/spec/models/tape_drive_device_collection_spec.rb +41 -0
  405. data/spec/models/tape_drive_device_spec.rb +77 -0
  406. data/spec/models/tape_drive_spec.rb +159 -0
  407. data/spec/models/tape_library_all_of_spec.rb +75 -0
  408. data/spec/models/tape_library_collection_spec.rb +47 -0
  409. data/spec/models/tape_library_device_collection_spec.rb +41 -0
  410. data/spec/models/tape_library_device_spec.rb +105 -0
  411. data/spec/models/tape_library_spec.rb +75 -0
  412. data/spec/models/tape_spec.rb +189 -0
  413. data/spec/models/tape_stat_collection_spec.rb +47 -0
  414. data/spec/models/tape_stat_spec.rb +335 -0
  415. data/spec/models/task_callback_collection_spec.rb +47 -0
  416. data/spec/models/task_callback_spec.rb +57 -0
  417. data/spec/models/task_collection_spec.rb +47 -0
  418. data/spec/models/task_destination_collection_spec.rb +47 -0
  419. data/spec/models/task_destination_down_spec.rb +65 -0
  420. data/spec/models/task_destination_up_spec.rb +71 -0
  421. data/spec/models/task_execution_collection_spec.rb +47 -0
  422. data/spec/models/task_execution_spec.rb +163 -0
  423. data/spec/models/task_metadatum_collection_spec.rb +47 -0
  424. data/spec/models/task_metadatum_spec.rb +53 -0
  425. data/spec/models/task_option_collection_spec.rb +47 -0
  426. data/spec/models/task_option_spec.rb +57 -0
  427. data/spec/models/task_schedule_collection_spec.rb +47 -0
  428. data/spec/models/task_schedule_spec.rb +89 -0
  429. data/spec/models/task_source_collection_spec.rb +47 -0
  430. data/spec/models/task_source_down_spec.rb +77 -0
  431. data/spec/models/task_source_up_spec.rb +89 -0
  432. data/spec/models/task_spec.rb +183 -0
  433. data/spec/models/too_long_all_of_spec.rb +41 -0
  434. data/spec/models/too_long_spec.rb +41 -0
  435. data/spec/models/too_short_all_of_spec.rb +41 -0
  436. data/spec/models/too_short_spec.rb +41 -0
  437. data/spec/models/type_to_secondary_facets_spec.rb +65 -0
  438. data/spec/spec_helper.rb +111 -0
  439. metadata +718 -0
@@ -0,0 +1,858 @@
1
+ =begin
2
+ #Nodeum API
3
+
4
+ #The Nodeum API makes it easy to tap into the digital data mesh that runs across your organisation. Make requests to our API endpoints and we’ll give you everything you need to interconnect your business workflows with your storage. All production API requests are made to: http://nodeumhostname/api/ The current production version of the API is v1. **REST** The Nodeum API is a RESTful API. This means that the API is designed to allow you to get, create, update, & delete objects with the HTTP verbs GET, POST, PUT, PATCH, & DELETE. **JSON** The Nodeum API speaks exclusively in JSON. This means that you should always set the Content-Type header to application/json to ensure that your requests are properly accepted and processed by the API. **Authentication** All API calls require user-password authentication. **Cross-Origin Resource Sharing** The Nodeum API supports CORS for communicating from Javascript for these endpoints. You will need to specify an Origin URI when creating your application to allow for CORS to be whitelisted for your domain. **Pagination** Some endpoints such as File Listing return a potentially lengthy array of objects. In order to keep the response sizes manageable the API will take advantage of pagination. Pagination is a mechanism for returning a subset of the results for a request and allowing for subsequent requests to “page” through the rest of the results until the end is reached. Paginated endpoints follow a standard interface that accepts two query parameters, limit and offset, and return a payload that follows a standard form. These parameters names and their behavior are borrowed from SQL LIMIT and OFFSET keywords. **Versioning** The Nodeum API is constantly being worked on to add features, make improvements, and fix bugs. This means that you should expect changes to be introduced and documented. However, there are some changes or additions that are considered backwards-compatible and your applications should be flexible enough to handle them. These include: - Adding new endpoints to the API - Adding new attributes to the response of an existing endpoint - Changing the order of attributes of responses (JSON by definition is an object of unordered key/value pairs) **Filter parameters** When browsing a list of items, multiple filter parameters may be applied. Some operators can be added to the value as a prefix: - `=` value is equal. Default operator, may be omitted - `!=` value is different - `>` greater than - `>=` greater than or equal - `<` lower than - `>=` lower than or equal - `><` included in list, items should be separated by `|` - `!><` not included in list, items should be separated by `|` - `~` pattern matching, may include `%` (any characters) and `_` (one character) - `!~` pattern not matching, may include `%` (any characters) and `_` (one character)
5
+
6
+ The version of the OpenAPI document: 2.1.0
7
+ Contact: info@nodeum.io
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module Nodeum
16
+ class TapeDrivesApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Creates a new tape drive.
23
+ # **API Key Scope**: tape_drives / create
24
+ # @param tape_library_id [String] Numeric ID, serial, or name of tape library.
25
+ # @param tape_drive_body [TapeDrive]
26
+ # @param [Hash] opts the optional parameters
27
+ # @return [TapeDrive]
28
+ def create_tape_drive_by_tape_library(tape_library_id, tape_drive_body, opts = {})
29
+ data, _status_code, _headers = create_tape_drive_by_tape_library_with_http_info(tape_library_id, tape_drive_body, opts)
30
+ data
31
+ end
32
+
33
+ # Creates a new tape drive.
34
+ # **API Key Scope**: tape_drives / create
35
+ # @param tape_library_id [String] Numeric ID, serial, or name of tape library.
36
+ # @param tape_drive_body [TapeDrive]
37
+ # @param [Hash] opts the optional parameters
38
+ # @return [Array<(TapeDrive, Integer, Hash)>] TapeDrive data, response status code and response headers
39
+ def create_tape_drive_by_tape_library_with_http_info(tape_library_id, tape_drive_body, opts = {})
40
+ if @api_client.config.debugging
41
+ @api_client.config.logger.debug 'Calling API: TapeDrivesApi.create_tape_drive_by_tape_library ...'
42
+ end
43
+ # verify the required parameter 'tape_library_id' is set
44
+ if @api_client.config.client_side_validation && tape_library_id.nil?
45
+ fail ArgumentError, "Missing the required parameter 'tape_library_id' when calling TapeDrivesApi.create_tape_drive_by_tape_library"
46
+ end
47
+ # verify the required parameter 'tape_drive_body' is set
48
+ if @api_client.config.client_side_validation && tape_drive_body.nil?
49
+ fail ArgumentError, "Missing the required parameter 'tape_drive_body' when calling TapeDrivesApi.create_tape_drive_by_tape_library"
50
+ end
51
+ # resource path
52
+ local_var_path = '/tape_libraries/{tape_library_id}/tape_drives'.sub('{' + 'tape_library_id' + '}', CGI.escape(tape_library_id.to_s))
53
+
54
+ # query parameters
55
+ query_params = opts[:query_params] || {}
56
+
57
+ # header parameters
58
+ header_params = opts[:header_params] || {}
59
+ # HTTP header 'Accept' (if needed)
60
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
61
+ # HTTP header 'Content-Type'
62
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
63
+
64
+ # form parameters
65
+ form_params = opts[:form_params] || {}
66
+
67
+ # http body (model)
68
+ post_body = opts[:body] || @api_client.object_to_http_body(tape_drive_body)
69
+
70
+ # return_type
71
+ return_type = opts[:return_type] || 'TapeDrive'
72
+
73
+ # auth_names
74
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
75
+
76
+ new_options = opts.merge(
77
+ :header_params => header_params,
78
+ :query_params => query_params,
79
+ :form_params => form_params,
80
+ :body => post_body,
81
+ :auth_names => auth_names,
82
+ :return_type => return_type
83
+ )
84
+
85
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
86
+ if @api_client.config.debugging
87
+ @api_client.config.logger.debug "API called: TapeDrivesApi#create_tape_drive_by_tape_library\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
88
+ end
89
+ return data, status_code, headers
90
+ end
91
+
92
+ # Destroys a specific tape drive.
93
+ # **API Key Scope**: tape_drives / destroy
94
+ # @param tape_drive_id [String] Numeric ID, serial, or name of tape drive.
95
+ # @param [Hash] opts the optional parameters
96
+ # @return [nil]
97
+ def destroy_tape_drive(tape_drive_id, opts = {})
98
+ destroy_tape_drive_with_http_info(tape_drive_id, opts)
99
+ nil
100
+ end
101
+
102
+ # Destroys a specific tape drive.
103
+ # **API Key Scope**: tape_drives / destroy
104
+ # @param tape_drive_id [String] Numeric ID, serial, or name of tape drive.
105
+ # @param [Hash] opts the optional parameters
106
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
107
+ def destroy_tape_drive_with_http_info(tape_drive_id, opts = {})
108
+ if @api_client.config.debugging
109
+ @api_client.config.logger.debug 'Calling API: TapeDrivesApi.destroy_tape_drive ...'
110
+ end
111
+ # verify the required parameter 'tape_drive_id' is set
112
+ if @api_client.config.client_side_validation && tape_drive_id.nil?
113
+ fail ArgumentError, "Missing the required parameter 'tape_drive_id' when calling TapeDrivesApi.destroy_tape_drive"
114
+ end
115
+ # resource path
116
+ local_var_path = '/tape_drives/{tape_drive_id}'.sub('{' + 'tape_drive_id' + '}', CGI.escape(tape_drive_id.to_s))
117
+
118
+ # query parameters
119
+ query_params = opts[:query_params] || {}
120
+
121
+ # header parameters
122
+ header_params = opts[:header_params] || {}
123
+
124
+ # form parameters
125
+ form_params = opts[:form_params] || {}
126
+
127
+ # http body (model)
128
+ post_body = opts[:body]
129
+
130
+ # return_type
131
+ return_type = opts[:return_type]
132
+
133
+ # auth_names
134
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
135
+
136
+ new_options = opts.merge(
137
+ :header_params => header_params,
138
+ :query_params => query_params,
139
+ :form_params => form_params,
140
+ :body => post_body,
141
+ :auth_names => auth_names,
142
+ :return_type => return_type
143
+ )
144
+
145
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
146
+ if @api_client.config.debugging
147
+ @api_client.config.logger.debug "API called: TapeDrivesApi#destroy_tape_drive\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
148
+ end
149
+ return data, status_code, headers
150
+ end
151
+
152
+ # Destroys a specific tape drive.
153
+ # **API Key Scope**: tape_drives / destroy
154
+ # @param tape_library_id [String] Numeric ID, serial, or name of tape library.
155
+ # @param tape_drive_id [String] Numeric ID, serial, or name of tape drive.
156
+ # @param [Hash] opts the optional parameters
157
+ # @return [nil]
158
+ def destroy_tape_drive_by_tape_library(tape_library_id, tape_drive_id, opts = {})
159
+ destroy_tape_drive_by_tape_library_with_http_info(tape_library_id, tape_drive_id, opts)
160
+ nil
161
+ end
162
+
163
+ # Destroys a specific tape drive.
164
+ # **API Key Scope**: tape_drives / destroy
165
+ # @param tape_library_id [String] Numeric ID, serial, or name of tape library.
166
+ # @param tape_drive_id [String] Numeric ID, serial, or name of tape drive.
167
+ # @param [Hash] opts the optional parameters
168
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
169
+ def destroy_tape_drive_by_tape_library_with_http_info(tape_library_id, tape_drive_id, opts = {})
170
+ if @api_client.config.debugging
171
+ @api_client.config.logger.debug 'Calling API: TapeDrivesApi.destroy_tape_drive_by_tape_library ...'
172
+ end
173
+ # verify the required parameter 'tape_library_id' is set
174
+ if @api_client.config.client_side_validation && tape_library_id.nil?
175
+ fail ArgumentError, "Missing the required parameter 'tape_library_id' when calling TapeDrivesApi.destroy_tape_drive_by_tape_library"
176
+ end
177
+ # verify the required parameter 'tape_drive_id' is set
178
+ if @api_client.config.client_side_validation && tape_drive_id.nil?
179
+ fail ArgumentError, "Missing the required parameter 'tape_drive_id' when calling TapeDrivesApi.destroy_tape_drive_by_tape_library"
180
+ end
181
+ # resource path
182
+ local_var_path = '/tape_libraries/{tape_library_id}/tape_drives/{tape_drive_id}'.sub('{' + 'tape_library_id' + '}', CGI.escape(tape_library_id.to_s)).sub('{' + 'tape_drive_id' + '}', CGI.escape(tape_drive_id.to_s))
183
+
184
+ # query parameters
185
+ query_params = opts[:query_params] || {}
186
+
187
+ # header parameters
188
+ header_params = opts[:header_params] || {}
189
+
190
+ # form parameters
191
+ form_params = opts[:form_params] || {}
192
+
193
+ # http body (model)
194
+ post_body = opts[:body]
195
+
196
+ # return_type
197
+ return_type = opts[:return_type]
198
+
199
+ # auth_names
200
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
201
+
202
+ new_options = opts.merge(
203
+ :header_params => header_params,
204
+ :query_params => query_params,
205
+ :form_params => form_params,
206
+ :body => post_body,
207
+ :auth_names => auth_names,
208
+ :return_type => return_type
209
+ )
210
+
211
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
212
+ if @api_client.config.debugging
213
+ @api_client.config.logger.debug "API called: TapeDrivesApi#destroy_tape_drive_by_tape_library\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
214
+ end
215
+ return data, status_code, headers
216
+ end
217
+
218
+ # Lists tape drives devices.
219
+ # **API Key Scope**: tape_drives / devices
220
+ # @param tape_library_id [String] Numeric ID, serial, or name of tape library.
221
+ # @param job_id [String] ID of active job
222
+ # @param [Hash] opts the optional parameters
223
+ # @return [TapeDriveDeviceCollection]
224
+ def index_tape_drive_devices(tape_library_id, job_id, opts = {})
225
+ data, _status_code, _headers = index_tape_drive_devices_with_http_info(tape_library_id, job_id, opts)
226
+ data
227
+ end
228
+
229
+ # Lists tape drives devices.
230
+ # **API Key Scope**: tape_drives / devices
231
+ # @param tape_library_id [String] Numeric ID, serial, or name of tape library.
232
+ # @param job_id [String] ID of active job
233
+ # @param [Hash] opts the optional parameters
234
+ # @return [Array<(TapeDriveDeviceCollection, Integer, Hash)>] TapeDriveDeviceCollection data, response status code and response headers
235
+ def index_tape_drive_devices_with_http_info(tape_library_id, job_id, opts = {})
236
+ if @api_client.config.debugging
237
+ @api_client.config.logger.debug 'Calling API: TapeDrivesApi.index_tape_drive_devices ...'
238
+ end
239
+ # verify the required parameter 'tape_library_id' is set
240
+ if @api_client.config.client_side_validation && tape_library_id.nil?
241
+ fail ArgumentError, "Missing the required parameter 'tape_library_id' when calling TapeDrivesApi.index_tape_drive_devices"
242
+ end
243
+ # verify the required parameter 'job_id' is set
244
+ if @api_client.config.client_side_validation && job_id.nil?
245
+ fail ArgumentError, "Missing the required parameter 'job_id' when calling TapeDrivesApi.index_tape_drive_devices"
246
+ end
247
+ # resource path
248
+ local_var_path = '/tape_libraries/{tape_library_id}/tape_drives/-/devices'.sub('{' + 'tape_library_id' + '}', CGI.escape(tape_library_id.to_s))
249
+
250
+ # query parameters
251
+ query_params = opts[:query_params] || {}
252
+ query_params[:'job_id'] = job_id
253
+
254
+ # header parameters
255
+ header_params = opts[:header_params] || {}
256
+ # HTTP header 'Accept' (if needed)
257
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'queued', 'working', 'failed', ])
258
+
259
+ # form parameters
260
+ form_params = opts[:form_params] || {}
261
+
262
+ # http body (model)
263
+ post_body = opts[:body]
264
+
265
+ # return_type
266
+ return_type = opts[:return_type] || 'TapeDriveDeviceCollection'
267
+
268
+ # auth_names
269
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
270
+
271
+ new_options = opts.merge(
272
+ :header_params => header_params,
273
+ :query_params => query_params,
274
+ :form_params => form_params,
275
+ :body => post_body,
276
+ :auth_names => auth_names,
277
+ :return_type => return_type
278
+ )
279
+
280
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
281
+ if @api_client.config.debugging
282
+ @api_client.config.logger.debug "API called: TapeDrivesApi#index_tape_drive_devices\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
283
+ end
284
+ return data, status_code, headers
285
+ end
286
+
287
+ # Lists all tape drives.
288
+ # **API Key Scope**: tape_drives / index
289
+ # @param [Hash] opts the optional parameters
290
+ # @option opts [Integer] :limit The number of items to display for pagination.
291
+ # @option opts [Integer] :offset The number of items to skip for pagination.
292
+ # @option opts [Array<String>] :sort_by Sort results by attribute. Can sort on multiple attributes, separated by &#x60;|&#x60;. Order direction can be suffixing the attribute by either &#x60;:asc&#x60; (default) or &#x60;:desc&#x60;.
293
+ # @option opts [String] :id Filter on id
294
+ # @option opts [String] :tape_library_id Filter on tape library id
295
+ # @option opts [String] :name Filter on name
296
+ # @option opts [String] :serial Filter on serial
297
+ # @option opts [String] :comment Filter on comment
298
+ # @option opts [String] :scsi_address Filter on scsi address
299
+ # @option opts [String] :vendor Filter on vendor
300
+ # @option opts [String] :product Filter on product
301
+ # @option opts [String] :firmware Filter on firmware
302
+ # @option opts [String] :device Filter on device
303
+ # @option opts [String] :sgdevice Filter on sgdevice
304
+ # @option opts [String] :libso Filter on libso
305
+ # @option opts [String] :acs Filter on acs
306
+ # @option opts [String] :lsm Filter on lsm
307
+ # @option opts [String] :panel Filter on panel
308
+ # @option opts [String] :transport Filter on transport
309
+ # @option opts [String] :status Filter on status
310
+ # @option opts [String] :full Filter on full
311
+ # @option opts [String] :mount_count Filter on mount count
312
+ # @option opts [String] :use_to Filter on use to
313
+ # @option opts [String] :use_by Filter on use by
314
+ # @option opts [String] :barcode Filter on barcode
315
+ # @option opts [String] :task_id Filter on task id
316
+ # @option opts [String] :use_file_processed_size Filter on use file processed size
317
+ # @option opts [String] :use_file_size_to_process Filter on use file size to process
318
+ # @option opts [String] :use_file_name_processed Filter on use file name processed
319
+ # @option opts [String] :bandwidth Filter on bandwidth
320
+ # @return [TapeDriveCollection]
321
+ def index_tape_drives(opts = {})
322
+ data, _status_code, _headers = index_tape_drives_with_http_info(opts)
323
+ data
324
+ end
325
+
326
+ # Lists all tape drives.
327
+ # **API Key Scope**: tape_drives / index
328
+ # @param [Hash] opts the optional parameters
329
+ # @option opts [Integer] :limit The number of items to display for pagination.
330
+ # @option opts [Integer] :offset The number of items to skip for pagination.
331
+ # @option opts [Array<String>] :sort_by Sort results by attribute. Can sort on multiple attributes, separated by &#x60;|&#x60;. Order direction can be suffixing the attribute by either &#x60;:asc&#x60; (default) or &#x60;:desc&#x60;.
332
+ # @option opts [String] :id Filter on id
333
+ # @option opts [String] :tape_library_id Filter on tape library id
334
+ # @option opts [String] :name Filter on name
335
+ # @option opts [String] :serial Filter on serial
336
+ # @option opts [String] :comment Filter on comment
337
+ # @option opts [String] :scsi_address Filter on scsi address
338
+ # @option opts [String] :vendor Filter on vendor
339
+ # @option opts [String] :product Filter on product
340
+ # @option opts [String] :firmware Filter on firmware
341
+ # @option opts [String] :device Filter on device
342
+ # @option opts [String] :sgdevice Filter on sgdevice
343
+ # @option opts [String] :libso Filter on libso
344
+ # @option opts [String] :acs Filter on acs
345
+ # @option opts [String] :lsm Filter on lsm
346
+ # @option opts [String] :panel Filter on panel
347
+ # @option opts [String] :transport Filter on transport
348
+ # @option opts [String] :status Filter on status
349
+ # @option opts [String] :full Filter on full
350
+ # @option opts [String] :mount_count Filter on mount count
351
+ # @option opts [String] :use_to Filter on use to
352
+ # @option opts [String] :use_by Filter on use by
353
+ # @option opts [String] :barcode Filter on barcode
354
+ # @option opts [String] :task_id Filter on task id
355
+ # @option opts [String] :use_file_processed_size Filter on use file processed size
356
+ # @option opts [String] :use_file_size_to_process Filter on use file size to process
357
+ # @option opts [String] :use_file_name_processed Filter on use file name processed
358
+ # @option opts [String] :bandwidth Filter on bandwidth
359
+ # @return [Array<(TapeDriveCollection, Integer, Hash)>] TapeDriveCollection data, response status code and response headers
360
+ def index_tape_drives_with_http_info(opts = {})
361
+ if @api_client.config.debugging
362
+ @api_client.config.logger.debug 'Calling API: TapeDrivesApi.index_tape_drives ...'
363
+ end
364
+ # resource path
365
+ local_var_path = '/tape_drives'
366
+
367
+ # query parameters
368
+ query_params = opts[:query_params] || {}
369
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
370
+ query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
371
+ query_params[:'sort_by'] = @api_client.build_collection_param(opts[:'sort_by'], :pipe) if !opts[:'sort_by'].nil?
372
+ query_params[:'id'] = opts[:'id'] if !opts[:'id'].nil?
373
+ query_params[:'tape_library_id'] = opts[:'tape_library_id'] if !opts[:'tape_library_id'].nil?
374
+ query_params[:'name'] = opts[:'name'] if !opts[:'name'].nil?
375
+ query_params[:'serial'] = opts[:'serial'] if !opts[:'serial'].nil?
376
+ query_params[:'comment'] = opts[:'comment'] if !opts[:'comment'].nil?
377
+ query_params[:'scsi_address'] = opts[:'scsi_address'] if !opts[:'scsi_address'].nil?
378
+ query_params[:'vendor'] = opts[:'vendor'] if !opts[:'vendor'].nil?
379
+ query_params[:'product'] = opts[:'product'] if !opts[:'product'].nil?
380
+ query_params[:'firmware'] = opts[:'firmware'] if !opts[:'firmware'].nil?
381
+ query_params[:'device'] = opts[:'device'] if !opts[:'device'].nil?
382
+ query_params[:'sgdevice'] = opts[:'sgdevice'] if !opts[:'sgdevice'].nil?
383
+ query_params[:'libso'] = opts[:'libso'] if !opts[:'libso'].nil?
384
+ query_params[:'acs'] = opts[:'acs'] if !opts[:'acs'].nil?
385
+ query_params[:'lsm'] = opts[:'lsm'] if !opts[:'lsm'].nil?
386
+ query_params[:'panel'] = opts[:'panel'] if !opts[:'panel'].nil?
387
+ query_params[:'transport'] = opts[:'transport'] if !opts[:'transport'].nil?
388
+ query_params[:'status'] = opts[:'status'] if !opts[:'status'].nil?
389
+ query_params[:'full'] = opts[:'full'] if !opts[:'full'].nil?
390
+ query_params[:'mount_count'] = opts[:'mount_count'] if !opts[:'mount_count'].nil?
391
+ query_params[:'use_to'] = opts[:'use_to'] if !opts[:'use_to'].nil?
392
+ query_params[:'use_by'] = opts[:'use_by'] if !opts[:'use_by'].nil?
393
+ query_params[:'barcode'] = opts[:'barcode'] if !opts[:'barcode'].nil?
394
+ query_params[:'task_id'] = opts[:'task_id'] if !opts[:'task_id'].nil?
395
+ query_params[:'use_file_processed_size'] = opts[:'use_file_processed_size'] if !opts[:'use_file_processed_size'].nil?
396
+ query_params[:'use_file_size_to_process'] = opts[:'use_file_size_to_process'] if !opts[:'use_file_size_to_process'].nil?
397
+ query_params[:'use_file_name_processed'] = opts[:'use_file_name_processed'] if !opts[:'use_file_name_processed'].nil?
398
+ query_params[:'bandwidth'] = opts[:'bandwidth'] if !opts[:'bandwidth'].nil?
399
+
400
+ # header parameters
401
+ header_params = opts[:header_params] || {}
402
+ # HTTP header 'Accept' (if needed)
403
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
404
+
405
+ # form parameters
406
+ form_params = opts[:form_params] || {}
407
+
408
+ # http body (model)
409
+ post_body = opts[:body]
410
+
411
+ # return_type
412
+ return_type = opts[:return_type] || 'TapeDriveCollection'
413
+
414
+ # auth_names
415
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
416
+
417
+ new_options = opts.merge(
418
+ :header_params => header_params,
419
+ :query_params => query_params,
420
+ :form_params => form_params,
421
+ :body => post_body,
422
+ :auth_names => auth_names,
423
+ :return_type => return_type
424
+ )
425
+
426
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
427
+ if @api_client.config.debugging
428
+ @api_client.config.logger.debug "API called: TapeDrivesApi#index_tape_drives\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
429
+ end
430
+ return data, status_code, headers
431
+ end
432
+
433
+ # Lists all tape drives.
434
+ # **API Key Scope**: tape_drives / index
435
+ # @param tape_library_id [String] Numeric ID, serial, or name of tape library.
436
+ # @param [Hash] opts the optional parameters
437
+ # @option opts [Integer] :limit The number of items to display for pagination.
438
+ # @option opts [Integer] :offset The number of items to skip for pagination.
439
+ # @option opts [Array<String>] :sort_by Sort results by attribute. Can sort on multiple attributes, separated by &#x60;|&#x60;. Order direction can be suffixing the attribute by either &#x60;:asc&#x60; (default) or &#x60;:desc&#x60;.
440
+ # @option opts [String] :id Filter on id
441
+ # @option opts [String] :name Filter on name
442
+ # @option opts [String] :serial Filter on serial
443
+ # @option opts [String] :comment Filter on comment
444
+ # @option opts [String] :scsi_address Filter on scsi address
445
+ # @option opts [String] :vendor Filter on vendor
446
+ # @option opts [String] :product Filter on product
447
+ # @option opts [String] :firmware Filter on firmware
448
+ # @option opts [String] :device Filter on device
449
+ # @option opts [String] :sgdevice Filter on sgdevice
450
+ # @option opts [String] :libso Filter on libso
451
+ # @option opts [String] :acs Filter on acs
452
+ # @option opts [String] :lsm Filter on lsm
453
+ # @option opts [String] :panel Filter on panel
454
+ # @option opts [String] :transport Filter on transport
455
+ # @option opts [String] :status Filter on status
456
+ # @option opts [String] :full Filter on full
457
+ # @option opts [String] :mount_count Filter on mount count
458
+ # @option opts [String] :use_to Filter on use to
459
+ # @option opts [String] :use_by Filter on use by
460
+ # @option opts [String] :barcode Filter on barcode
461
+ # @option opts [String] :task_id Filter on task id
462
+ # @option opts [String] :use_file_processed_size Filter on use file processed size
463
+ # @option opts [String] :use_file_size_to_process Filter on use file size to process
464
+ # @option opts [String] :use_file_name_processed Filter on use file name processed
465
+ # @option opts [String] :bandwidth Filter on bandwidth
466
+ # @return [TapeDriveCollection]
467
+ def index_tape_drives_by_tape_library(tape_library_id, opts = {})
468
+ data, _status_code, _headers = index_tape_drives_by_tape_library_with_http_info(tape_library_id, opts)
469
+ data
470
+ end
471
+
472
+ # Lists all tape drives.
473
+ # **API Key Scope**: tape_drives / index
474
+ # @param tape_library_id [String] Numeric ID, serial, or name of tape library.
475
+ # @param [Hash] opts the optional parameters
476
+ # @option opts [Integer] :limit The number of items to display for pagination.
477
+ # @option opts [Integer] :offset The number of items to skip for pagination.
478
+ # @option opts [Array<String>] :sort_by Sort results by attribute. Can sort on multiple attributes, separated by &#x60;|&#x60;. Order direction can be suffixing the attribute by either &#x60;:asc&#x60; (default) or &#x60;:desc&#x60;.
479
+ # @option opts [String] :id Filter on id
480
+ # @option opts [String] :name Filter on name
481
+ # @option opts [String] :serial Filter on serial
482
+ # @option opts [String] :comment Filter on comment
483
+ # @option opts [String] :scsi_address Filter on scsi address
484
+ # @option opts [String] :vendor Filter on vendor
485
+ # @option opts [String] :product Filter on product
486
+ # @option opts [String] :firmware Filter on firmware
487
+ # @option opts [String] :device Filter on device
488
+ # @option opts [String] :sgdevice Filter on sgdevice
489
+ # @option opts [String] :libso Filter on libso
490
+ # @option opts [String] :acs Filter on acs
491
+ # @option opts [String] :lsm Filter on lsm
492
+ # @option opts [String] :panel Filter on panel
493
+ # @option opts [String] :transport Filter on transport
494
+ # @option opts [String] :status Filter on status
495
+ # @option opts [String] :full Filter on full
496
+ # @option opts [String] :mount_count Filter on mount count
497
+ # @option opts [String] :use_to Filter on use to
498
+ # @option opts [String] :use_by Filter on use by
499
+ # @option opts [String] :barcode Filter on barcode
500
+ # @option opts [String] :task_id Filter on task id
501
+ # @option opts [String] :use_file_processed_size Filter on use file processed size
502
+ # @option opts [String] :use_file_size_to_process Filter on use file size to process
503
+ # @option opts [String] :use_file_name_processed Filter on use file name processed
504
+ # @option opts [String] :bandwidth Filter on bandwidth
505
+ # @return [Array<(TapeDriveCollection, Integer, Hash)>] TapeDriveCollection data, response status code and response headers
506
+ def index_tape_drives_by_tape_library_with_http_info(tape_library_id, opts = {})
507
+ if @api_client.config.debugging
508
+ @api_client.config.logger.debug 'Calling API: TapeDrivesApi.index_tape_drives_by_tape_library ...'
509
+ end
510
+ # verify the required parameter 'tape_library_id' is set
511
+ if @api_client.config.client_side_validation && tape_library_id.nil?
512
+ fail ArgumentError, "Missing the required parameter 'tape_library_id' when calling TapeDrivesApi.index_tape_drives_by_tape_library"
513
+ end
514
+ # resource path
515
+ local_var_path = '/tape_libraries/{tape_library_id}/tape_drives'.sub('{' + 'tape_library_id' + '}', CGI.escape(tape_library_id.to_s))
516
+
517
+ # query parameters
518
+ query_params = opts[:query_params] || {}
519
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
520
+ query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
521
+ query_params[:'sort_by'] = @api_client.build_collection_param(opts[:'sort_by'], :pipe) if !opts[:'sort_by'].nil?
522
+ query_params[:'id'] = opts[:'id'] if !opts[:'id'].nil?
523
+ query_params[:'name'] = opts[:'name'] if !opts[:'name'].nil?
524
+ query_params[:'serial'] = opts[:'serial'] if !opts[:'serial'].nil?
525
+ query_params[:'comment'] = opts[:'comment'] if !opts[:'comment'].nil?
526
+ query_params[:'scsi_address'] = opts[:'scsi_address'] if !opts[:'scsi_address'].nil?
527
+ query_params[:'vendor'] = opts[:'vendor'] if !opts[:'vendor'].nil?
528
+ query_params[:'product'] = opts[:'product'] if !opts[:'product'].nil?
529
+ query_params[:'firmware'] = opts[:'firmware'] if !opts[:'firmware'].nil?
530
+ query_params[:'device'] = opts[:'device'] if !opts[:'device'].nil?
531
+ query_params[:'sgdevice'] = opts[:'sgdevice'] if !opts[:'sgdevice'].nil?
532
+ query_params[:'libso'] = opts[:'libso'] if !opts[:'libso'].nil?
533
+ query_params[:'acs'] = opts[:'acs'] if !opts[:'acs'].nil?
534
+ query_params[:'lsm'] = opts[:'lsm'] if !opts[:'lsm'].nil?
535
+ query_params[:'panel'] = opts[:'panel'] if !opts[:'panel'].nil?
536
+ query_params[:'transport'] = opts[:'transport'] if !opts[:'transport'].nil?
537
+ query_params[:'status'] = opts[:'status'] if !opts[:'status'].nil?
538
+ query_params[:'full'] = opts[:'full'] if !opts[:'full'].nil?
539
+ query_params[:'mount_count'] = opts[:'mount_count'] if !opts[:'mount_count'].nil?
540
+ query_params[:'use_to'] = opts[:'use_to'] if !opts[:'use_to'].nil?
541
+ query_params[:'use_by'] = opts[:'use_by'] if !opts[:'use_by'].nil?
542
+ query_params[:'barcode'] = opts[:'barcode'] if !opts[:'barcode'].nil?
543
+ query_params[:'task_id'] = opts[:'task_id'] if !opts[:'task_id'].nil?
544
+ query_params[:'use_file_processed_size'] = opts[:'use_file_processed_size'] if !opts[:'use_file_processed_size'].nil?
545
+ query_params[:'use_file_size_to_process'] = opts[:'use_file_size_to_process'] if !opts[:'use_file_size_to_process'].nil?
546
+ query_params[:'use_file_name_processed'] = opts[:'use_file_name_processed'] if !opts[:'use_file_name_processed'].nil?
547
+ query_params[:'bandwidth'] = opts[:'bandwidth'] if !opts[:'bandwidth'].nil?
548
+
549
+ # header parameters
550
+ header_params = opts[:header_params] || {}
551
+ # HTTP header 'Accept' (if needed)
552
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
553
+
554
+ # form parameters
555
+ form_params = opts[:form_params] || {}
556
+
557
+ # http body (model)
558
+ post_body = opts[:body]
559
+
560
+ # return_type
561
+ return_type = opts[:return_type] || 'TapeDriveCollection'
562
+
563
+ # auth_names
564
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
565
+
566
+ new_options = opts.merge(
567
+ :header_params => header_params,
568
+ :query_params => query_params,
569
+ :form_params => form_params,
570
+ :body => post_body,
571
+ :auth_names => auth_names,
572
+ :return_type => return_type
573
+ )
574
+
575
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
576
+ if @api_client.config.debugging
577
+ @api_client.config.logger.debug "API called: TapeDrivesApi#index_tape_drives_by_tape_library\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
578
+ end
579
+ return data, status_code, headers
580
+ end
581
+
582
+ # Displays a specific tape drive.
583
+ # **API Key Scope**: tape_drives / show
584
+ # @param tape_drive_id [String] Numeric ID, serial, or name of tape drive.
585
+ # @param [Hash] opts the optional parameters
586
+ # @return [TapeDrive]
587
+ def show_tape_drive(tape_drive_id, opts = {})
588
+ data, _status_code, _headers = show_tape_drive_with_http_info(tape_drive_id, opts)
589
+ data
590
+ end
591
+
592
+ # Displays a specific tape drive.
593
+ # **API Key Scope**: tape_drives / show
594
+ # @param tape_drive_id [String] Numeric ID, serial, or name of tape drive.
595
+ # @param [Hash] opts the optional parameters
596
+ # @return [Array<(TapeDrive, Integer, Hash)>] TapeDrive data, response status code and response headers
597
+ def show_tape_drive_with_http_info(tape_drive_id, opts = {})
598
+ if @api_client.config.debugging
599
+ @api_client.config.logger.debug 'Calling API: TapeDrivesApi.show_tape_drive ...'
600
+ end
601
+ # verify the required parameter 'tape_drive_id' is set
602
+ if @api_client.config.client_side_validation && tape_drive_id.nil?
603
+ fail ArgumentError, "Missing the required parameter 'tape_drive_id' when calling TapeDrivesApi.show_tape_drive"
604
+ end
605
+ # resource path
606
+ local_var_path = '/tape_drives/{tape_drive_id}'.sub('{' + 'tape_drive_id' + '}', CGI.escape(tape_drive_id.to_s))
607
+
608
+ # query parameters
609
+ query_params = opts[:query_params] || {}
610
+
611
+ # header parameters
612
+ header_params = opts[:header_params] || {}
613
+ # HTTP header 'Accept' (if needed)
614
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
615
+
616
+ # form parameters
617
+ form_params = opts[:form_params] || {}
618
+
619
+ # http body (model)
620
+ post_body = opts[:body]
621
+
622
+ # return_type
623
+ return_type = opts[:return_type] || 'TapeDrive'
624
+
625
+ # auth_names
626
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
627
+
628
+ new_options = opts.merge(
629
+ :header_params => header_params,
630
+ :query_params => query_params,
631
+ :form_params => form_params,
632
+ :body => post_body,
633
+ :auth_names => auth_names,
634
+ :return_type => return_type
635
+ )
636
+
637
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
638
+ if @api_client.config.debugging
639
+ @api_client.config.logger.debug "API called: TapeDrivesApi#show_tape_drive\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
640
+ end
641
+ return data, status_code, headers
642
+ end
643
+
644
+ # Displays a specific tape drive.
645
+ # **API Key Scope**: tape_drives / show
646
+ # @param tape_library_id [String] Numeric ID, serial, or name of tape library.
647
+ # @param tape_drive_id [String] Numeric ID, serial, or name of tape drive.
648
+ # @param [Hash] opts the optional parameters
649
+ # @return [TapeDrive]
650
+ def show_tape_drive_by_tape_library(tape_library_id, tape_drive_id, opts = {})
651
+ data, _status_code, _headers = show_tape_drive_by_tape_library_with_http_info(tape_library_id, tape_drive_id, opts)
652
+ data
653
+ end
654
+
655
+ # Displays a specific tape drive.
656
+ # **API Key Scope**: tape_drives / show
657
+ # @param tape_library_id [String] Numeric ID, serial, or name of tape library.
658
+ # @param tape_drive_id [String] Numeric ID, serial, or name of tape drive.
659
+ # @param [Hash] opts the optional parameters
660
+ # @return [Array<(TapeDrive, Integer, Hash)>] TapeDrive data, response status code and response headers
661
+ def show_tape_drive_by_tape_library_with_http_info(tape_library_id, tape_drive_id, opts = {})
662
+ if @api_client.config.debugging
663
+ @api_client.config.logger.debug 'Calling API: TapeDrivesApi.show_tape_drive_by_tape_library ...'
664
+ end
665
+ # verify the required parameter 'tape_library_id' is set
666
+ if @api_client.config.client_side_validation && tape_library_id.nil?
667
+ fail ArgumentError, "Missing the required parameter 'tape_library_id' when calling TapeDrivesApi.show_tape_drive_by_tape_library"
668
+ end
669
+ # verify the required parameter 'tape_drive_id' is set
670
+ if @api_client.config.client_side_validation && tape_drive_id.nil?
671
+ fail ArgumentError, "Missing the required parameter 'tape_drive_id' when calling TapeDrivesApi.show_tape_drive_by_tape_library"
672
+ end
673
+ # resource path
674
+ local_var_path = '/tape_libraries/{tape_library_id}/tape_drives/{tape_drive_id}'.sub('{' + 'tape_library_id' + '}', CGI.escape(tape_library_id.to_s)).sub('{' + 'tape_drive_id' + '}', CGI.escape(tape_drive_id.to_s))
675
+
676
+ # query parameters
677
+ query_params = opts[:query_params] || {}
678
+
679
+ # header parameters
680
+ header_params = opts[:header_params] || {}
681
+ # HTTP header 'Accept' (if needed)
682
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
683
+
684
+ # form parameters
685
+ form_params = opts[:form_params] || {}
686
+
687
+ # http body (model)
688
+ post_body = opts[:body]
689
+
690
+ # return_type
691
+ return_type = opts[:return_type] || 'TapeDrive'
692
+
693
+ # auth_names
694
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
695
+
696
+ new_options = opts.merge(
697
+ :header_params => header_params,
698
+ :query_params => query_params,
699
+ :form_params => form_params,
700
+ :body => post_body,
701
+ :auth_names => auth_names,
702
+ :return_type => return_type
703
+ )
704
+
705
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
706
+ if @api_client.config.debugging
707
+ @api_client.config.logger.debug "API called: TapeDrivesApi#show_tape_drive_by_tape_library\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
708
+ end
709
+ return data, status_code, headers
710
+ end
711
+
712
+ # Updates a specific tape drive.
713
+ # **API Key Scope**: tape_drives / update
714
+ # @param tape_drive_id [String] Numeric ID, serial, or name of tape drive.
715
+ # @param tape_drive_body [TapeDrive]
716
+ # @param [Hash] opts the optional parameters
717
+ # @return [TapeDrive]
718
+ def update_tape_drive(tape_drive_id, tape_drive_body, opts = {})
719
+ data, _status_code, _headers = update_tape_drive_with_http_info(tape_drive_id, tape_drive_body, opts)
720
+ data
721
+ end
722
+
723
+ # Updates a specific tape drive.
724
+ # **API Key Scope**: tape_drives / update
725
+ # @param tape_drive_id [String] Numeric ID, serial, or name of tape drive.
726
+ # @param tape_drive_body [TapeDrive]
727
+ # @param [Hash] opts the optional parameters
728
+ # @return [Array<(TapeDrive, Integer, Hash)>] TapeDrive data, response status code and response headers
729
+ def update_tape_drive_with_http_info(tape_drive_id, tape_drive_body, opts = {})
730
+ if @api_client.config.debugging
731
+ @api_client.config.logger.debug 'Calling API: TapeDrivesApi.update_tape_drive ...'
732
+ end
733
+ # verify the required parameter 'tape_drive_id' is set
734
+ if @api_client.config.client_side_validation && tape_drive_id.nil?
735
+ fail ArgumentError, "Missing the required parameter 'tape_drive_id' when calling TapeDrivesApi.update_tape_drive"
736
+ end
737
+ # verify the required parameter 'tape_drive_body' is set
738
+ if @api_client.config.client_side_validation && tape_drive_body.nil?
739
+ fail ArgumentError, "Missing the required parameter 'tape_drive_body' when calling TapeDrivesApi.update_tape_drive"
740
+ end
741
+ # resource path
742
+ local_var_path = '/tape_drives/{tape_drive_id}'.sub('{' + 'tape_drive_id' + '}', CGI.escape(tape_drive_id.to_s))
743
+
744
+ # query parameters
745
+ query_params = opts[:query_params] || {}
746
+
747
+ # header parameters
748
+ header_params = opts[:header_params] || {}
749
+ # HTTP header 'Accept' (if needed)
750
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
751
+ # HTTP header 'Content-Type'
752
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
753
+
754
+ # form parameters
755
+ form_params = opts[:form_params] || {}
756
+
757
+ # http body (model)
758
+ post_body = opts[:body] || @api_client.object_to_http_body(tape_drive_body)
759
+
760
+ # return_type
761
+ return_type = opts[:return_type] || 'TapeDrive'
762
+
763
+ # auth_names
764
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
765
+
766
+ new_options = opts.merge(
767
+ :header_params => header_params,
768
+ :query_params => query_params,
769
+ :form_params => form_params,
770
+ :body => post_body,
771
+ :auth_names => auth_names,
772
+ :return_type => return_type
773
+ )
774
+
775
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
776
+ if @api_client.config.debugging
777
+ @api_client.config.logger.debug "API called: TapeDrivesApi#update_tape_drive\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
778
+ end
779
+ return data, status_code, headers
780
+ end
781
+
782
+ # Updates a specific tape drive.
783
+ # **API Key Scope**: tape_drives / update
784
+ # @param tape_library_id [String] Numeric ID, serial, or name of tape library.
785
+ # @param tape_drive_id [String] Numeric ID, serial, or name of tape drive.
786
+ # @param tape_drive_body [TapeDrive]
787
+ # @param [Hash] opts the optional parameters
788
+ # @return [TapeDrive]
789
+ def update_tape_drive_by_tape_library(tape_library_id, tape_drive_id, tape_drive_body, opts = {})
790
+ data, _status_code, _headers = update_tape_drive_by_tape_library_with_http_info(tape_library_id, tape_drive_id, tape_drive_body, opts)
791
+ data
792
+ end
793
+
794
+ # Updates a specific tape drive.
795
+ # **API Key Scope**: tape_drives / update
796
+ # @param tape_library_id [String] Numeric ID, serial, or name of tape library.
797
+ # @param tape_drive_id [String] Numeric ID, serial, or name of tape drive.
798
+ # @param tape_drive_body [TapeDrive]
799
+ # @param [Hash] opts the optional parameters
800
+ # @return [Array<(TapeDrive, Integer, Hash)>] TapeDrive data, response status code and response headers
801
+ def update_tape_drive_by_tape_library_with_http_info(tape_library_id, tape_drive_id, tape_drive_body, opts = {})
802
+ if @api_client.config.debugging
803
+ @api_client.config.logger.debug 'Calling API: TapeDrivesApi.update_tape_drive_by_tape_library ...'
804
+ end
805
+ # verify the required parameter 'tape_library_id' is set
806
+ if @api_client.config.client_side_validation && tape_library_id.nil?
807
+ fail ArgumentError, "Missing the required parameter 'tape_library_id' when calling TapeDrivesApi.update_tape_drive_by_tape_library"
808
+ end
809
+ # verify the required parameter 'tape_drive_id' is set
810
+ if @api_client.config.client_side_validation && tape_drive_id.nil?
811
+ fail ArgumentError, "Missing the required parameter 'tape_drive_id' when calling TapeDrivesApi.update_tape_drive_by_tape_library"
812
+ end
813
+ # verify the required parameter 'tape_drive_body' is set
814
+ if @api_client.config.client_side_validation && tape_drive_body.nil?
815
+ fail ArgumentError, "Missing the required parameter 'tape_drive_body' when calling TapeDrivesApi.update_tape_drive_by_tape_library"
816
+ end
817
+ # resource path
818
+ local_var_path = '/tape_libraries/{tape_library_id}/tape_drives/{tape_drive_id}'.sub('{' + 'tape_library_id' + '}', CGI.escape(tape_library_id.to_s)).sub('{' + 'tape_drive_id' + '}', CGI.escape(tape_drive_id.to_s))
819
+
820
+ # query parameters
821
+ query_params = opts[:query_params] || {}
822
+
823
+ # header parameters
824
+ header_params = opts[:header_params] || {}
825
+ # HTTP header 'Accept' (if needed)
826
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
827
+ # HTTP header 'Content-Type'
828
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
829
+
830
+ # form parameters
831
+ form_params = opts[:form_params] || {}
832
+
833
+ # http body (model)
834
+ post_body = opts[:body] || @api_client.object_to_http_body(tape_drive_body)
835
+
836
+ # return_type
837
+ return_type = opts[:return_type] || 'TapeDrive'
838
+
839
+ # auth_names
840
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
841
+
842
+ new_options = opts.merge(
843
+ :header_params => header_params,
844
+ :query_params => query_params,
845
+ :form_params => form_params,
846
+ :body => post_body,
847
+ :auth_names => auth_names,
848
+ :return_type => return_type
849
+ )
850
+
851
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
852
+ if @api_client.config.debugging
853
+ @api_client.config.logger.debug "API called: TapeDrivesApi#update_tape_drive_by_tape_library\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
854
+ end
855
+ return data, status_code, headers
856
+ end
857
+ end
858
+ end