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,78 @@
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 MountsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # List all mounted storages.
23
+ # **API Key Scope**: mounts / index
24
+ # @param [Hash] opts the optional parameters
25
+ # @return [MountCollection]
26
+ def index_mounts(opts = {})
27
+ data, _status_code, _headers = index_mounts_with_http_info(opts)
28
+ data
29
+ end
30
+
31
+ # List all mounted storages.
32
+ # **API Key Scope**: mounts / index
33
+ # @param [Hash] opts the optional parameters
34
+ # @return [Array<(MountCollection, Integer, Hash)>] MountCollection data, response status code and response headers
35
+ def index_mounts_with_http_info(opts = {})
36
+ if @api_client.config.debugging
37
+ @api_client.config.logger.debug 'Calling API: MountsApi.index_mounts ...'
38
+ end
39
+ # resource path
40
+ local_var_path = '/mounts'
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
+
50
+ # form parameters
51
+ form_params = opts[:form_params] || {}
52
+
53
+ # http body (model)
54
+ post_body = opts[:body]
55
+
56
+ # return_type
57
+ return_type = opts[:return_type] || 'MountCollection'
58
+
59
+ # auth_names
60
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
61
+
62
+ new_options = opts.merge(
63
+ :header_params => header_params,
64
+ :query_params => query_params,
65
+ :form_params => form_params,
66
+ :body => post_body,
67
+ :auth_names => auth_names,
68
+ :return_type => return_type
69
+ )
70
+
71
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
72
+ if @api_client.config.debugging
73
+ @api_client.config.logger.debug "API called: MountsApi#index_mounts\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
74
+ end
75
+ return data, status_code, headers
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,361 @@
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 NasApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Creates a new NAS.
23
+ # **API Key Scope**: nas / create
24
+ # @param nas_body [Nas]
25
+ # @param [Hash] opts the optional parameters
26
+ # @return [Nas]
27
+ def create_nas(nas_body, opts = {})
28
+ data, _status_code, _headers = create_nas_with_http_info(nas_body, opts)
29
+ data
30
+ end
31
+
32
+ # Creates a new NAS.
33
+ # **API Key Scope**: nas / create
34
+ # @param nas_body [Nas]
35
+ # @param [Hash] opts the optional parameters
36
+ # @return [Array<(Nas, Integer, Hash)>] Nas data, response status code and response headers
37
+ def create_nas_with_http_info(nas_body, opts = {})
38
+ if @api_client.config.debugging
39
+ @api_client.config.logger.debug 'Calling API: NasApi.create_nas ...'
40
+ end
41
+ # verify the required parameter 'nas_body' is set
42
+ if @api_client.config.client_side_validation && nas_body.nil?
43
+ fail ArgumentError, "Missing the required parameter 'nas_body' when calling NasApi.create_nas"
44
+ end
45
+ # resource path
46
+ local_var_path = '/nas'
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(nas_body)
63
+
64
+ # return_type
65
+ return_type = opts[:return_type] || 'Nas'
66
+
67
+ # auth_names
68
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
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(:POST, local_var_path, new_options)
80
+ if @api_client.config.debugging
81
+ @api_client.config.logger.debug "API called: NasApi#create_nas\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
82
+ end
83
+ return data, status_code, headers
84
+ end
85
+
86
+ # Destroys a specific NAS.
87
+ # **API Key Scope**: nas / destroy
88
+ # @param nas_id [String] Numeric ID or name of NAS.
89
+ # @param [Hash] opts the optional parameters
90
+ # @return [nil]
91
+ def destroy_nas(nas_id, opts = {})
92
+ destroy_nas_with_http_info(nas_id, opts)
93
+ nil
94
+ end
95
+
96
+ # Destroys a specific NAS.
97
+ # **API Key Scope**: nas / destroy
98
+ # @param nas_id [String] Numeric ID or name of NAS.
99
+ # @param [Hash] opts the optional parameters
100
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
101
+ def destroy_nas_with_http_info(nas_id, opts = {})
102
+ if @api_client.config.debugging
103
+ @api_client.config.logger.debug 'Calling API: NasApi.destroy_nas ...'
104
+ end
105
+ # verify the required parameter 'nas_id' is set
106
+ if @api_client.config.client_side_validation && nas_id.nil?
107
+ fail ArgumentError, "Missing the required parameter 'nas_id' when calling NasApi.destroy_nas"
108
+ end
109
+ # resource path
110
+ local_var_path = '/nas/{nas_id}'.sub('{' + 'nas_id' + '}', CGI.escape(nas_id.to_s))
111
+
112
+ # query parameters
113
+ query_params = opts[:query_params] || {}
114
+
115
+ # header parameters
116
+ header_params = opts[:header_params] || {}
117
+
118
+ # form parameters
119
+ form_params = opts[:form_params] || {}
120
+
121
+ # http body (model)
122
+ post_body = opts[:body]
123
+
124
+ # return_type
125
+ return_type = opts[:return_type]
126
+
127
+ # auth_names
128
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
129
+
130
+ new_options = opts.merge(
131
+ :header_params => header_params,
132
+ :query_params => query_params,
133
+ :form_params => form_params,
134
+ :body => post_body,
135
+ :auth_names => auth_names,
136
+ :return_type => return_type
137
+ )
138
+
139
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
140
+ if @api_client.config.debugging
141
+ @api_client.config.logger.debug "API called: NasApi#destroy_nas\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
142
+ end
143
+ return data, status_code, headers
144
+ end
145
+
146
+ # Lists all NAS.
147
+ # **API Key Scope**: nas / index
148
+ # @param [Hash] opts the optional parameters
149
+ # @option opts [Integer] :limit The number of items to display for pagination.
150
+ # @option opts [Integer] :offset The number of items to skip for pagination.
151
+ # @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;.
152
+ # @option opts [String] :id Filter on id
153
+ # @option opts [String] :name Filter on name
154
+ # @option opts [String] :comment Filter on comment
155
+ # @option opts [String] :host Filter on host
156
+ # @option opts [String] :type Filter on type
157
+ # @option opts [String] :price Filter on price
158
+ # @return [NasCollection]
159
+ def index_nas(opts = {})
160
+ data, _status_code, _headers = index_nas_with_http_info(opts)
161
+ data
162
+ end
163
+
164
+ # Lists all NAS.
165
+ # **API Key Scope**: nas / index
166
+ # @param [Hash] opts the optional parameters
167
+ # @option opts [Integer] :limit The number of items to display for pagination.
168
+ # @option opts [Integer] :offset The number of items to skip for pagination.
169
+ # @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;.
170
+ # @option opts [String] :id Filter on id
171
+ # @option opts [String] :name Filter on name
172
+ # @option opts [String] :comment Filter on comment
173
+ # @option opts [String] :host Filter on host
174
+ # @option opts [String] :type Filter on type
175
+ # @option opts [String] :price Filter on price
176
+ # @return [Array<(NasCollection, Integer, Hash)>] NasCollection data, response status code and response headers
177
+ def index_nas_with_http_info(opts = {})
178
+ if @api_client.config.debugging
179
+ @api_client.config.logger.debug 'Calling API: NasApi.index_nas ...'
180
+ end
181
+ # resource path
182
+ local_var_path = '/nas'
183
+
184
+ # query parameters
185
+ query_params = opts[:query_params] || {}
186
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
187
+ query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
188
+ query_params[:'sort_by'] = @api_client.build_collection_param(opts[:'sort_by'], :pipe) if !opts[:'sort_by'].nil?
189
+ query_params[:'id'] = opts[:'id'] if !opts[:'id'].nil?
190
+ query_params[:'name'] = opts[:'name'] if !opts[:'name'].nil?
191
+ query_params[:'comment'] = opts[:'comment'] if !opts[:'comment'].nil?
192
+ query_params[:'host'] = opts[:'host'] if !opts[:'host'].nil?
193
+ query_params[:'type'] = opts[:'type'] if !opts[:'type'].nil?
194
+ query_params[:'price'] = opts[:'price'] if !opts[:'price'].nil?
195
+
196
+ # header parameters
197
+ header_params = opts[:header_params] || {}
198
+ # HTTP header 'Accept' (if needed)
199
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
200
+
201
+ # form parameters
202
+ form_params = opts[:form_params] || {}
203
+
204
+ # http body (model)
205
+ post_body = opts[:body]
206
+
207
+ # return_type
208
+ return_type = opts[:return_type] || 'NasCollection'
209
+
210
+ # auth_names
211
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
212
+
213
+ new_options = opts.merge(
214
+ :header_params => header_params,
215
+ :query_params => query_params,
216
+ :form_params => form_params,
217
+ :body => post_body,
218
+ :auth_names => auth_names,
219
+ :return_type => return_type
220
+ )
221
+
222
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
223
+ if @api_client.config.debugging
224
+ @api_client.config.logger.debug "API called: NasApi#index_nas\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
225
+ end
226
+ return data, status_code, headers
227
+ end
228
+
229
+ # Displays a specific NAS.
230
+ # **API Key Scope**: nas / show
231
+ # @param nas_id [String] Numeric ID or name of NAS.
232
+ # @param [Hash] opts the optional parameters
233
+ # @return [Nas]
234
+ def show_nas(nas_id, opts = {})
235
+ data, _status_code, _headers = show_nas_with_http_info(nas_id, opts)
236
+ data
237
+ end
238
+
239
+ # Displays a specific NAS.
240
+ # **API Key Scope**: nas / show
241
+ # @param nas_id [String] Numeric ID or name of NAS.
242
+ # @param [Hash] opts the optional parameters
243
+ # @return [Array<(Nas, Integer, Hash)>] Nas data, response status code and response headers
244
+ def show_nas_with_http_info(nas_id, opts = {})
245
+ if @api_client.config.debugging
246
+ @api_client.config.logger.debug 'Calling API: NasApi.show_nas ...'
247
+ end
248
+ # verify the required parameter 'nas_id' is set
249
+ if @api_client.config.client_side_validation && nas_id.nil?
250
+ fail ArgumentError, "Missing the required parameter 'nas_id' when calling NasApi.show_nas"
251
+ end
252
+ # resource path
253
+ local_var_path = '/nas/{nas_id}'.sub('{' + 'nas_id' + '}', CGI.escape(nas_id.to_s))
254
+
255
+ # query parameters
256
+ query_params = opts[:query_params] || {}
257
+
258
+ # header parameters
259
+ header_params = opts[:header_params] || {}
260
+ # HTTP header 'Accept' (if needed)
261
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
262
+
263
+ # form parameters
264
+ form_params = opts[:form_params] || {}
265
+
266
+ # http body (model)
267
+ post_body = opts[:body]
268
+
269
+ # return_type
270
+ return_type = opts[:return_type] || 'Nas'
271
+
272
+ # auth_names
273
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
274
+
275
+ new_options = opts.merge(
276
+ :header_params => header_params,
277
+ :query_params => query_params,
278
+ :form_params => form_params,
279
+ :body => post_body,
280
+ :auth_names => auth_names,
281
+ :return_type => return_type
282
+ )
283
+
284
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
285
+ if @api_client.config.debugging
286
+ @api_client.config.logger.debug "API called: NasApi#show_nas\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
287
+ end
288
+ return data, status_code, headers
289
+ end
290
+
291
+ # Updates a specific NAS.
292
+ # **API Key Scope**: nas / update
293
+ # @param nas_id [String] Numeric ID or name of NAS.
294
+ # @param nas_body [Nas]
295
+ # @param [Hash] opts the optional parameters
296
+ # @return [Nas]
297
+ def update_nas(nas_id, nas_body, opts = {})
298
+ data, _status_code, _headers = update_nas_with_http_info(nas_id, nas_body, opts)
299
+ data
300
+ end
301
+
302
+ # Updates a specific NAS.
303
+ # **API Key Scope**: nas / update
304
+ # @param nas_id [String] Numeric ID or name of NAS.
305
+ # @param nas_body [Nas]
306
+ # @param [Hash] opts the optional parameters
307
+ # @return [Array<(Nas, Integer, Hash)>] Nas data, response status code and response headers
308
+ def update_nas_with_http_info(nas_id, nas_body, opts = {})
309
+ if @api_client.config.debugging
310
+ @api_client.config.logger.debug 'Calling API: NasApi.update_nas ...'
311
+ end
312
+ # verify the required parameter 'nas_id' is set
313
+ if @api_client.config.client_side_validation && nas_id.nil?
314
+ fail ArgumentError, "Missing the required parameter 'nas_id' when calling NasApi.update_nas"
315
+ end
316
+ # verify the required parameter 'nas_body' is set
317
+ if @api_client.config.client_side_validation && nas_body.nil?
318
+ fail ArgumentError, "Missing the required parameter 'nas_body' when calling NasApi.update_nas"
319
+ end
320
+ # resource path
321
+ local_var_path = '/nas/{nas_id}'.sub('{' + 'nas_id' + '}', CGI.escape(nas_id.to_s))
322
+
323
+ # query parameters
324
+ query_params = opts[:query_params] || {}
325
+
326
+ # header parameters
327
+ header_params = opts[:header_params] || {}
328
+ # HTTP header 'Accept' (if needed)
329
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
330
+ # HTTP header 'Content-Type'
331
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
332
+
333
+ # form parameters
334
+ form_params = opts[:form_params] || {}
335
+
336
+ # http body (model)
337
+ post_body = opts[:body] || @api_client.object_to_http_body(nas_body)
338
+
339
+ # return_type
340
+ return_type = opts[:return_type] || 'Nas'
341
+
342
+ # auth_names
343
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
344
+
345
+ new_options = opts.merge(
346
+ :header_params => header_params,
347
+ :query_params => query_params,
348
+ :form_params => form_params,
349
+ :body => post_body,
350
+ :auth_names => auth_names,
351
+ :return_type => return_type
352
+ )
353
+
354
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
355
+ if @api_client.config.debugging
356
+ @api_client.config.logger.debug "API called: NasApi#update_nas\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
357
+ end
358
+ return data, status_code, headers
359
+ end
360
+ end
361
+ end
@@ -0,0 +1,1305 @@
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 NasSharesApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Creates a new NAS share.
23
+ # **API Key Scope**: nas_shares / create
24
+ # @param nas_id [String] Numeric ID or name of NAS.
25
+ # @param nas_share_body [NasShare]
26
+ # @param [Hash] opts the optional parameters
27
+ # @return [NasShare]
28
+ def create_nas_share_by_nas(nas_id, nas_share_body, opts = {})
29
+ data, _status_code, _headers = create_nas_share_by_nas_with_http_info(nas_id, nas_share_body, opts)
30
+ data
31
+ end
32
+
33
+ # Creates a new NAS share.
34
+ # **API Key Scope**: nas_shares / create
35
+ # @param nas_id [String] Numeric ID or name of NAS.
36
+ # @param nas_share_body [NasShare]
37
+ # @param [Hash] opts the optional parameters
38
+ # @return [Array<(NasShare, Integer, Hash)>] NasShare data, response status code and response headers
39
+ def create_nas_share_by_nas_with_http_info(nas_id, nas_share_body, opts = {})
40
+ if @api_client.config.debugging
41
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.create_nas_share_by_nas ...'
42
+ end
43
+ # verify the required parameter 'nas_id' is set
44
+ if @api_client.config.client_side_validation && nas_id.nil?
45
+ fail ArgumentError, "Missing the required parameter 'nas_id' when calling NasSharesApi.create_nas_share_by_nas"
46
+ end
47
+ # verify the required parameter 'nas_share_body' is set
48
+ if @api_client.config.client_side_validation && nas_share_body.nil?
49
+ fail ArgumentError, "Missing the required parameter 'nas_share_body' when calling NasSharesApi.create_nas_share_by_nas"
50
+ end
51
+ # resource path
52
+ local_var_path = '/nas/{nas_id}/nas_shares'.sub('{' + 'nas_id' + '}', CGI.escape(nas_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(nas_share_body)
69
+
70
+ # return_type
71
+ return_type = opts[:return_type] || 'NasShare'
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: NasSharesApi#create_nas_share_by_nas\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
88
+ end
89
+ return data, status_code, headers
90
+ end
91
+
92
+ # Destroys a specific NAS share.
93
+ # **API Key Scope**: nas_shares / destroy
94
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
95
+ # @param [Hash] opts the optional parameters
96
+ # @return [nil]
97
+ def destroy_nas_share(nas_share_id, opts = {})
98
+ destroy_nas_share_with_http_info(nas_share_id, opts)
99
+ nil
100
+ end
101
+
102
+ # Destroys a specific NAS share.
103
+ # **API Key Scope**: nas_shares / destroy
104
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
105
+ # @param [Hash] opts the optional parameters
106
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
107
+ def destroy_nas_share_with_http_info(nas_share_id, opts = {})
108
+ if @api_client.config.debugging
109
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.destroy_nas_share ...'
110
+ end
111
+ # verify the required parameter 'nas_share_id' is set
112
+ if @api_client.config.client_side_validation && nas_share_id.nil?
113
+ fail ArgumentError, "Missing the required parameter 'nas_share_id' when calling NasSharesApi.destroy_nas_share"
114
+ end
115
+ # resource path
116
+ local_var_path = '/nas_shares/{nas_share_id}'.sub('{' + 'nas_share_id' + '}', CGI.escape(nas_share_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: NasSharesApi#destroy_nas_share\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
148
+ end
149
+ return data, status_code, headers
150
+ end
151
+
152
+ # Destroys a specific NAS share.
153
+ # **API Key Scope**: nas_shares / destroy
154
+ # @param nas_id [String] Numeric ID or name of NAS.
155
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
156
+ # @param [Hash] opts the optional parameters
157
+ # @return [nil]
158
+ def destroy_nas_share_by_nas(nas_id, nas_share_id, opts = {})
159
+ destroy_nas_share_by_nas_with_http_info(nas_id, nas_share_id, opts)
160
+ nil
161
+ end
162
+
163
+ # Destroys a specific NAS share.
164
+ # **API Key Scope**: nas_shares / destroy
165
+ # @param nas_id [String] Numeric ID or name of NAS.
166
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
167
+ # @param [Hash] opts the optional parameters
168
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
169
+ def destroy_nas_share_by_nas_with_http_info(nas_id, nas_share_id, opts = {})
170
+ if @api_client.config.debugging
171
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.destroy_nas_share_by_nas ...'
172
+ end
173
+ # verify the required parameter 'nas_id' is set
174
+ if @api_client.config.client_side_validation && nas_id.nil?
175
+ fail ArgumentError, "Missing the required parameter 'nas_id' when calling NasSharesApi.destroy_nas_share_by_nas"
176
+ end
177
+ # verify the required parameter 'nas_share_id' is set
178
+ if @api_client.config.client_side_validation && nas_share_id.nil?
179
+ fail ArgumentError, "Missing the required parameter 'nas_share_id' when calling NasSharesApi.destroy_nas_share_by_nas"
180
+ end
181
+ # resource path
182
+ local_var_path = '/nas/{nas_id}/nas_shares/{nas_share_id}'.sub('{' + 'nas_id' + '}', CGI.escape(nas_id.to_s)).sub('{' + 'nas_share_id' + '}', CGI.escape(nas_share_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: NasSharesApi#destroy_nas_share_by_nas\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
214
+ end
215
+ return data, status_code, headers
216
+ end
217
+
218
+ # Destroys a specific NAS share.
219
+ # **API Key Scope**: nas_shares / destroy
220
+ # @param pool_id [String] Numeric ID, or name of pool.
221
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
222
+ # @param [Hash] opts the optional parameters
223
+ # @return [nil]
224
+ def destroy_nas_share_by_pool(pool_id, nas_share_id, opts = {})
225
+ destroy_nas_share_by_pool_with_http_info(pool_id, nas_share_id, opts)
226
+ nil
227
+ end
228
+
229
+ # Destroys a specific NAS share.
230
+ # **API Key Scope**: nas_shares / destroy
231
+ # @param pool_id [String] Numeric ID, or name of pool.
232
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
233
+ # @param [Hash] opts the optional parameters
234
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
235
+ def destroy_nas_share_by_pool_with_http_info(pool_id, nas_share_id, opts = {})
236
+ if @api_client.config.debugging
237
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.destroy_nas_share_by_pool ...'
238
+ end
239
+ # verify the required parameter 'pool_id' is set
240
+ if @api_client.config.client_side_validation && pool_id.nil?
241
+ fail ArgumentError, "Missing the required parameter 'pool_id' when calling NasSharesApi.destroy_nas_share_by_pool"
242
+ end
243
+ # verify the required parameter 'nas_share_id' is set
244
+ if @api_client.config.client_side_validation && nas_share_id.nil?
245
+ fail ArgumentError, "Missing the required parameter 'nas_share_id' when calling NasSharesApi.destroy_nas_share_by_pool"
246
+ end
247
+ # resource path
248
+ local_var_path = '/pools/{pool_id}/nas_shares/{nas_share_id}'.sub('{' + 'pool_id' + '}', CGI.escape(pool_id.to_s)).sub('{' + 'nas_share_id' + '}', CGI.escape(nas_share_id.to_s))
249
+
250
+ # query parameters
251
+ query_params = opts[:query_params] || {}
252
+
253
+ # header parameters
254
+ header_params = opts[:header_params] || {}
255
+
256
+ # form parameters
257
+ form_params = opts[:form_params] || {}
258
+
259
+ # http body (model)
260
+ post_body = opts[:body]
261
+
262
+ # return_type
263
+ return_type = opts[:return_type]
264
+
265
+ # auth_names
266
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
267
+
268
+ new_options = opts.merge(
269
+ :header_params => header_params,
270
+ :query_params => query_params,
271
+ :form_params => form_params,
272
+ :body => post_body,
273
+ :auth_names => auth_names,
274
+ :return_type => return_type
275
+ )
276
+
277
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
278
+ if @api_client.config.debugging
279
+ @api_client.config.logger.debug "API called: NasSharesApi#destroy_nas_share_by_pool\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
280
+ end
281
+ return data, status_code, headers
282
+ end
283
+
284
+ # Lists all NAS shares.
285
+ # **API Key Scope**: nas_shares / index Optional API Key Explicit Scope: nas_shares / get_password
286
+ # @param [Hash] opts the optional parameters
287
+ # @option opts [Integer] :limit The number of items to display for pagination.
288
+ # @option opts [Integer] :offset The number of items to skip for pagination.
289
+ # @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;.
290
+ # @option opts [String] :id Filter on id
291
+ # @option opts [String] :name Filter on name
292
+ # @option opts [String] :path Filter on path
293
+ # @option opts [String] :options Filter on options
294
+ # @option opts [String] :username Filter on username
295
+ # @option opts [String] :nas_id Filter on NAS id
296
+ # @option opts [String] :pool_id Filter on a pool id
297
+ # @return [NasShareCollection]
298
+ def index_nas_shares(opts = {})
299
+ data, _status_code, _headers = index_nas_shares_with_http_info(opts)
300
+ data
301
+ end
302
+
303
+ # Lists all NAS shares.
304
+ # **API Key Scope**: nas_shares / index Optional API Key Explicit Scope: nas_shares / get_password
305
+ # @param [Hash] opts the optional parameters
306
+ # @option opts [Integer] :limit The number of items to display for pagination.
307
+ # @option opts [Integer] :offset The number of items to skip for pagination.
308
+ # @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;.
309
+ # @option opts [String] :id Filter on id
310
+ # @option opts [String] :name Filter on name
311
+ # @option opts [String] :path Filter on path
312
+ # @option opts [String] :options Filter on options
313
+ # @option opts [String] :username Filter on username
314
+ # @option opts [String] :nas_id Filter on NAS id
315
+ # @option opts [String] :pool_id Filter on a pool id
316
+ # @return [Array<(NasShareCollection, Integer, Hash)>] NasShareCollection data, response status code and response headers
317
+ def index_nas_shares_with_http_info(opts = {})
318
+ if @api_client.config.debugging
319
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.index_nas_shares ...'
320
+ end
321
+ # resource path
322
+ local_var_path = '/nas_shares'
323
+
324
+ # query parameters
325
+ query_params = opts[:query_params] || {}
326
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
327
+ query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
328
+ query_params[:'sort_by'] = @api_client.build_collection_param(opts[:'sort_by'], :pipe) if !opts[:'sort_by'].nil?
329
+ query_params[:'id'] = opts[:'id'] if !opts[:'id'].nil?
330
+ query_params[:'name'] = opts[:'name'] if !opts[:'name'].nil?
331
+ query_params[:'path'] = opts[:'path'] if !opts[:'path'].nil?
332
+ query_params[:'options'] = opts[:'options'] if !opts[:'options'].nil?
333
+ query_params[:'username'] = opts[:'username'] if !opts[:'username'].nil?
334
+ query_params[:'nas_id'] = opts[:'nas_id'] if !opts[:'nas_id'].nil?
335
+ query_params[:'pool_id'] = opts[:'pool_id'] if !opts[:'pool_id'].nil?
336
+
337
+ # header parameters
338
+ header_params = opts[:header_params] || {}
339
+ # HTTP header 'Accept' (if needed)
340
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
341
+
342
+ # form parameters
343
+ form_params = opts[:form_params] || {}
344
+
345
+ # http body (model)
346
+ post_body = opts[:body]
347
+
348
+ # return_type
349
+ return_type = opts[:return_type] || 'NasShareCollection'
350
+
351
+ # auth_names
352
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
353
+
354
+ new_options = opts.merge(
355
+ :header_params => header_params,
356
+ :query_params => query_params,
357
+ :form_params => form_params,
358
+ :body => post_body,
359
+ :auth_names => auth_names,
360
+ :return_type => return_type
361
+ )
362
+
363
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
364
+ if @api_client.config.debugging
365
+ @api_client.config.logger.debug "API called: NasSharesApi#index_nas_shares\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
366
+ end
367
+ return data, status_code, headers
368
+ end
369
+
370
+ # Lists all NAS shares.
371
+ # **API Key Scope**: nas_shares / index Optional API Key Explicit Scope: nas_shares / get_password
372
+ # @param nas_id [String] Numeric ID or name of NAS.
373
+ # @param [Hash] opts the optional parameters
374
+ # @option opts [Integer] :limit The number of items to display for pagination.
375
+ # @option opts [Integer] :offset The number of items to skip for pagination.
376
+ # @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;.
377
+ # @option opts [String] :id Filter on id
378
+ # @option opts [String] :name Filter on name
379
+ # @option opts [String] :path Filter on path
380
+ # @option opts [String] :options Filter on options
381
+ # @option opts [String] :username Filter on username
382
+ # @option opts [String] :pool_id Filter on a pool id
383
+ # @return [NasShareCollection]
384
+ def index_nas_shares_by_nas(nas_id, opts = {})
385
+ data, _status_code, _headers = index_nas_shares_by_nas_with_http_info(nas_id, opts)
386
+ data
387
+ end
388
+
389
+ # Lists all NAS shares.
390
+ # **API Key Scope**: nas_shares / index Optional API Key Explicit Scope: nas_shares / get_password
391
+ # @param nas_id [String] Numeric ID or name of NAS.
392
+ # @param [Hash] opts the optional parameters
393
+ # @option opts [Integer] :limit The number of items to display for pagination.
394
+ # @option opts [Integer] :offset The number of items to skip for pagination.
395
+ # @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;.
396
+ # @option opts [String] :id Filter on id
397
+ # @option opts [String] :name Filter on name
398
+ # @option opts [String] :path Filter on path
399
+ # @option opts [String] :options Filter on options
400
+ # @option opts [String] :username Filter on username
401
+ # @option opts [String] :pool_id Filter on a pool id
402
+ # @return [Array<(NasShareCollection, Integer, Hash)>] NasShareCollection data, response status code and response headers
403
+ def index_nas_shares_by_nas_with_http_info(nas_id, opts = {})
404
+ if @api_client.config.debugging
405
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.index_nas_shares_by_nas ...'
406
+ end
407
+ # verify the required parameter 'nas_id' is set
408
+ if @api_client.config.client_side_validation && nas_id.nil?
409
+ fail ArgumentError, "Missing the required parameter 'nas_id' when calling NasSharesApi.index_nas_shares_by_nas"
410
+ end
411
+ # resource path
412
+ local_var_path = '/nas/{nas_id}/nas_shares'.sub('{' + 'nas_id' + '}', CGI.escape(nas_id.to_s))
413
+
414
+ # query parameters
415
+ query_params = opts[:query_params] || {}
416
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
417
+ query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
418
+ query_params[:'sort_by'] = @api_client.build_collection_param(opts[:'sort_by'], :pipe) if !opts[:'sort_by'].nil?
419
+ query_params[:'id'] = opts[:'id'] if !opts[:'id'].nil?
420
+ query_params[:'name'] = opts[:'name'] if !opts[:'name'].nil?
421
+ query_params[:'path'] = opts[:'path'] if !opts[:'path'].nil?
422
+ query_params[:'options'] = opts[:'options'] if !opts[:'options'].nil?
423
+ query_params[:'username'] = opts[:'username'] if !opts[:'username'].nil?
424
+ query_params[:'pool_id'] = opts[:'pool_id'] if !opts[:'pool_id'].nil?
425
+
426
+ # header parameters
427
+ header_params = opts[:header_params] || {}
428
+ # HTTP header 'Accept' (if needed)
429
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
430
+
431
+ # form parameters
432
+ form_params = opts[:form_params] || {}
433
+
434
+ # http body (model)
435
+ post_body = opts[:body]
436
+
437
+ # return_type
438
+ return_type = opts[:return_type] || 'NasShareCollection'
439
+
440
+ # auth_names
441
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
442
+
443
+ new_options = opts.merge(
444
+ :header_params => header_params,
445
+ :query_params => query_params,
446
+ :form_params => form_params,
447
+ :body => post_body,
448
+ :auth_names => auth_names,
449
+ :return_type => return_type
450
+ )
451
+
452
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
453
+ if @api_client.config.debugging
454
+ @api_client.config.logger.debug "API called: NasSharesApi#index_nas_shares_by_nas\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
455
+ end
456
+ return data, status_code, headers
457
+ end
458
+
459
+ # Lists all NAS shares from pool.
460
+ # **API Key Scope**: nas_shares / index Optional API Key Explicit Scope: nas_shares / get_password
461
+ # @param pool_id [String] Numeric ID, or name of pool.
462
+ # @param [Hash] opts the optional parameters
463
+ # @option opts [Integer] :limit The number of items to display for pagination.
464
+ # @option opts [Integer] :offset The number of items to skip for pagination.
465
+ # @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;.
466
+ # @option opts [String] :id Filter on id
467
+ # @option opts [String] :name Filter on name
468
+ # @option opts [String] :path Filter on path
469
+ # @option opts [String] :options Filter on options
470
+ # @option opts [String] :username Filter on username
471
+ # @option opts [String] :nas_id Filter on NAS id
472
+ # @return [NasShareCollection]
473
+ def index_nas_shares_by_pool(pool_id, opts = {})
474
+ data, _status_code, _headers = index_nas_shares_by_pool_with_http_info(pool_id, opts)
475
+ data
476
+ end
477
+
478
+ # Lists all NAS shares from pool.
479
+ # **API Key Scope**: nas_shares / index Optional API Key Explicit Scope: nas_shares / get_password
480
+ # @param pool_id [String] Numeric ID, or name of pool.
481
+ # @param [Hash] opts the optional parameters
482
+ # @option opts [Integer] :limit The number of items to display for pagination.
483
+ # @option opts [Integer] :offset The number of items to skip for pagination.
484
+ # @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;.
485
+ # @option opts [String] :id Filter on id
486
+ # @option opts [String] :name Filter on name
487
+ # @option opts [String] :path Filter on path
488
+ # @option opts [String] :options Filter on options
489
+ # @option opts [String] :username Filter on username
490
+ # @option opts [String] :nas_id Filter on NAS id
491
+ # @return [Array<(NasShareCollection, Integer, Hash)>] NasShareCollection data, response status code and response headers
492
+ def index_nas_shares_by_pool_with_http_info(pool_id, opts = {})
493
+ if @api_client.config.debugging
494
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.index_nas_shares_by_pool ...'
495
+ end
496
+ # verify the required parameter 'pool_id' is set
497
+ if @api_client.config.client_side_validation && pool_id.nil?
498
+ fail ArgumentError, "Missing the required parameter 'pool_id' when calling NasSharesApi.index_nas_shares_by_pool"
499
+ end
500
+ # resource path
501
+ local_var_path = '/pools/{pool_id}/nas_shares'.sub('{' + 'pool_id' + '}', CGI.escape(pool_id.to_s))
502
+
503
+ # query parameters
504
+ query_params = opts[:query_params] || {}
505
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
506
+ query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
507
+ query_params[:'sort_by'] = @api_client.build_collection_param(opts[:'sort_by'], :pipe) if !opts[:'sort_by'].nil?
508
+ query_params[:'id'] = opts[:'id'] if !opts[:'id'].nil?
509
+ query_params[:'name'] = opts[:'name'] if !opts[:'name'].nil?
510
+ query_params[:'path'] = opts[:'path'] if !opts[:'path'].nil?
511
+ query_params[:'options'] = opts[:'options'] if !opts[:'options'].nil?
512
+ query_params[:'username'] = opts[:'username'] if !opts[:'username'].nil?
513
+ query_params[:'nas_id'] = opts[:'nas_id'] if !opts[:'nas_id'].nil?
514
+
515
+ # header parameters
516
+ header_params = opts[:header_params] || {}
517
+ # HTTP header 'Accept' (if needed)
518
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
519
+
520
+ # form parameters
521
+ form_params = opts[:form_params] || {}
522
+
523
+ # http body (model)
524
+ post_body = opts[:body]
525
+
526
+ # return_type
527
+ return_type = opts[:return_type] || 'NasShareCollection'
528
+
529
+ # auth_names
530
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
531
+
532
+ new_options = opts.merge(
533
+ :header_params => header_params,
534
+ :query_params => query_params,
535
+ :form_params => form_params,
536
+ :body => post_body,
537
+ :auth_names => auth_names,
538
+ :return_type => return_type
539
+ )
540
+
541
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
542
+ if @api_client.config.debugging
543
+ @api_client.config.logger.debug "API called: NasSharesApi#index_nas_shares_by_pool\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
544
+ end
545
+ return data, status_code, headers
546
+ end
547
+
548
+ # Get mount status of NAS Share.
549
+ # **API Key Scope**: nas_shares / mount_status
550
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
551
+ # @param [Hash] opts the optional parameters
552
+ # @return [MountStatus]
553
+ def mount_status_nas_share(nas_share_id, opts = {})
554
+ data, _status_code, _headers = mount_status_nas_share_with_http_info(nas_share_id, opts)
555
+ data
556
+ end
557
+
558
+ # Get mount status of NAS Share.
559
+ # **API Key Scope**: nas_shares / mount_status
560
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
561
+ # @param [Hash] opts the optional parameters
562
+ # @return [Array<(MountStatus, Integer, Hash)>] MountStatus data, response status code and response headers
563
+ def mount_status_nas_share_with_http_info(nas_share_id, opts = {})
564
+ if @api_client.config.debugging
565
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.mount_status_nas_share ...'
566
+ end
567
+ # verify the required parameter 'nas_share_id' is set
568
+ if @api_client.config.client_side_validation && nas_share_id.nil?
569
+ fail ArgumentError, "Missing the required parameter 'nas_share_id' when calling NasSharesApi.mount_status_nas_share"
570
+ end
571
+ # resource path
572
+ local_var_path = '/nas_shares/{nas_share_id}/mount'.sub('{' + 'nas_share_id' + '}', CGI.escape(nas_share_id.to_s))
573
+
574
+ # query parameters
575
+ query_params = opts[:query_params] || {}
576
+
577
+ # header parameters
578
+ header_params = opts[:header_params] || {}
579
+ # HTTP header 'Accept' (if needed)
580
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
581
+
582
+ # form parameters
583
+ form_params = opts[:form_params] || {}
584
+
585
+ # http body (model)
586
+ post_body = opts[:body]
587
+
588
+ # return_type
589
+ return_type = opts[:return_type] || 'MountStatus'
590
+
591
+ # auth_names
592
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
593
+
594
+ new_options = opts.merge(
595
+ :header_params => header_params,
596
+ :query_params => query_params,
597
+ :form_params => form_params,
598
+ :body => post_body,
599
+ :auth_names => auth_names,
600
+ :return_type => return_type
601
+ )
602
+
603
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
604
+ if @api_client.config.debugging
605
+ @api_client.config.logger.debug "API called: NasSharesApi#mount_status_nas_share\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
606
+ end
607
+ return data, status_code, headers
608
+ end
609
+
610
+ # Get mount status of NAS Share.
611
+ # **API Key Scope**: nas_shares / mount_status
612
+ # @param nas_id [String] Numeric ID or name of NAS.
613
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
614
+ # @param [Hash] opts the optional parameters
615
+ # @return [MountStatus]
616
+ def mount_status_nas_share_by_nas(nas_id, nas_share_id, opts = {})
617
+ data, _status_code, _headers = mount_status_nas_share_by_nas_with_http_info(nas_id, nas_share_id, opts)
618
+ data
619
+ end
620
+
621
+ # Get mount status of NAS Share.
622
+ # **API Key Scope**: nas_shares / mount_status
623
+ # @param nas_id [String] Numeric ID or name of NAS.
624
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
625
+ # @param [Hash] opts the optional parameters
626
+ # @return [Array<(MountStatus, Integer, Hash)>] MountStatus data, response status code and response headers
627
+ def mount_status_nas_share_by_nas_with_http_info(nas_id, nas_share_id, opts = {})
628
+ if @api_client.config.debugging
629
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.mount_status_nas_share_by_nas ...'
630
+ end
631
+ # verify the required parameter 'nas_id' is set
632
+ if @api_client.config.client_side_validation && nas_id.nil?
633
+ fail ArgumentError, "Missing the required parameter 'nas_id' when calling NasSharesApi.mount_status_nas_share_by_nas"
634
+ end
635
+ # verify the required parameter 'nas_share_id' is set
636
+ if @api_client.config.client_side_validation && nas_share_id.nil?
637
+ fail ArgumentError, "Missing the required parameter 'nas_share_id' when calling NasSharesApi.mount_status_nas_share_by_nas"
638
+ end
639
+ # resource path
640
+ local_var_path = '/nas/{nas_id}/nas_shares/{nas_share_id}/mount'.sub('{' + 'nas_id' + '}', CGI.escape(nas_id.to_s)).sub('{' + 'nas_share_id' + '}', CGI.escape(nas_share_id.to_s))
641
+
642
+ # query parameters
643
+ query_params = opts[:query_params] || {}
644
+
645
+ # header parameters
646
+ header_params = opts[:header_params] || {}
647
+ # HTTP header 'Accept' (if needed)
648
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
649
+
650
+ # form parameters
651
+ form_params = opts[:form_params] || {}
652
+
653
+ # http body (model)
654
+ post_body = opts[:body]
655
+
656
+ # return_type
657
+ return_type = opts[:return_type] || 'MountStatus'
658
+
659
+ # auth_names
660
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
661
+
662
+ new_options = opts.merge(
663
+ :header_params => header_params,
664
+ :query_params => query_params,
665
+ :form_params => form_params,
666
+ :body => post_body,
667
+ :auth_names => auth_names,
668
+ :return_type => return_type
669
+ )
670
+
671
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
672
+ if @api_client.config.debugging
673
+ @api_client.config.logger.debug "API called: NasSharesApi#mount_status_nas_share_by_nas\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
674
+ end
675
+ return data, status_code, headers
676
+ end
677
+
678
+ # Get mount status of NAS Share.
679
+ # **API Key Scope**: nas_shares / mount_status
680
+ # @param pool_id [String] Numeric ID, or name of pool.
681
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
682
+ # @param [Hash] opts the optional parameters
683
+ # @return [MountStatus]
684
+ def mount_status_nas_share_by_pool(pool_id, nas_share_id, opts = {})
685
+ data, _status_code, _headers = mount_status_nas_share_by_pool_with_http_info(pool_id, nas_share_id, opts)
686
+ data
687
+ end
688
+
689
+ # Get mount status of NAS Share.
690
+ # **API Key Scope**: nas_shares / mount_status
691
+ # @param pool_id [String] Numeric ID, or name of pool.
692
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
693
+ # @param [Hash] opts the optional parameters
694
+ # @return [Array<(MountStatus, Integer, Hash)>] MountStatus data, response status code and response headers
695
+ def mount_status_nas_share_by_pool_with_http_info(pool_id, nas_share_id, opts = {})
696
+ if @api_client.config.debugging
697
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.mount_status_nas_share_by_pool ...'
698
+ end
699
+ # verify the required parameter 'pool_id' is set
700
+ if @api_client.config.client_side_validation && pool_id.nil?
701
+ fail ArgumentError, "Missing the required parameter 'pool_id' when calling NasSharesApi.mount_status_nas_share_by_pool"
702
+ end
703
+ # verify the required parameter 'nas_share_id' is set
704
+ if @api_client.config.client_side_validation && nas_share_id.nil?
705
+ fail ArgumentError, "Missing the required parameter 'nas_share_id' when calling NasSharesApi.mount_status_nas_share_by_pool"
706
+ end
707
+ # resource path
708
+ local_var_path = '/pools/{pool_id}/nas_shares/{nas_share_id}/mount'.sub('{' + 'pool_id' + '}', CGI.escape(pool_id.to_s)).sub('{' + 'nas_share_id' + '}', CGI.escape(nas_share_id.to_s))
709
+
710
+ # query parameters
711
+ query_params = opts[:query_params] || {}
712
+
713
+ # header parameters
714
+ header_params = opts[:header_params] || {}
715
+ # HTTP header 'Accept' (if needed)
716
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
717
+
718
+ # form parameters
719
+ form_params = opts[:form_params] || {}
720
+
721
+ # http body (model)
722
+ post_body = opts[:body]
723
+
724
+ # return_type
725
+ return_type = opts[:return_type] || 'MountStatus'
726
+
727
+ # auth_names
728
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
729
+
730
+ new_options = opts.merge(
731
+ :header_params => header_params,
732
+ :query_params => query_params,
733
+ :form_params => form_params,
734
+ :body => post_body,
735
+ :auth_names => auth_names,
736
+ :return_type => return_type
737
+ )
738
+
739
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
740
+ if @api_client.config.debugging
741
+ @api_client.config.logger.debug "API called: NasSharesApi#mount_status_nas_share_by_pool\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
742
+ end
743
+ return data, status_code, headers
744
+ end
745
+
746
+ # Displays a specific NAS share.
747
+ # **API Key Scope**: nas_shares / show Optional API Key Explicit Scope: nas_shares / get_password
748
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
749
+ # @param [Hash] opts the optional parameters
750
+ # @return [NasShare]
751
+ def show_nas_share(nas_share_id, opts = {})
752
+ data, _status_code, _headers = show_nas_share_with_http_info(nas_share_id, opts)
753
+ data
754
+ end
755
+
756
+ # Displays a specific NAS share.
757
+ # **API Key Scope**: nas_shares / show Optional API Key Explicit Scope: nas_shares / get_password
758
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
759
+ # @param [Hash] opts the optional parameters
760
+ # @return [Array<(NasShare, Integer, Hash)>] NasShare data, response status code and response headers
761
+ def show_nas_share_with_http_info(nas_share_id, opts = {})
762
+ if @api_client.config.debugging
763
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.show_nas_share ...'
764
+ end
765
+ # verify the required parameter 'nas_share_id' is set
766
+ if @api_client.config.client_side_validation && nas_share_id.nil?
767
+ fail ArgumentError, "Missing the required parameter 'nas_share_id' when calling NasSharesApi.show_nas_share"
768
+ end
769
+ # resource path
770
+ local_var_path = '/nas_shares/{nas_share_id}'.sub('{' + 'nas_share_id' + '}', CGI.escape(nas_share_id.to_s))
771
+
772
+ # query parameters
773
+ query_params = opts[:query_params] || {}
774
+
775
+ # header parameters
776
+ header_params = opts[:header_params] || {}
777
+ # HTTP header 'Accept' (if needed)
778
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
779
+
780
+ # form parameters
781
+ form_params = opts[:form_params] || {}
782
+
783
+ # http body (model)
784
+ post_body = opts[:body]
785
+
786
+ # return_type
787
+ return_type = opts[:return_type] || 'NasShare'
788
+
789
+ # auth_names
790
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
791
+
792
+ new_options = opts.merge(
793
+ :header_params => header_params,
794
+ :query_params => query_params,
795
+ :form_params => form_params,
796
+ :body => post_body,
797
+ :auth_names => auth_names,
798
+ :return_type => return_type
799
+ )
800
+
801
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
802
+ if @api_client.config.debugging
803
+ @api_client.config.logger.debug "API called: NasSharesApi#show_nas_share\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
804
+ end
805
+ return data, status_code, headers
806
+ end
807
+
808
+ # Displays a specific NAS share.
809
+ # **API Key Scope**: nas_shares / show Optional API Key Explicit Scope: nas_shares / get_password
810
+ # @param nas_id [String] Numeric ID or name of NAS.
811
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
812
+ # @param [Hash] opts the optional parameters
813
+ # @return [NasShare]
814
+ def show_nas_share_by_nas(nas_id, nas_share_id, opts = {})
815
+ data, _status_code, _headers = show_nas_share_by_nas_with_http_info(nas_id, nas_share_id, opts)
816
+ data
817
+ end
818
+
819
+ # Displays a specific NAS share.
820
+ # **API Key Scope**: nas_shares / show Optional API Key Explicit Scope: nas_shares / get_password
821
+ # @param nas_id [String] Numeric ID or name of NAS.
822
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
823
+ # @param [Hash] opts the optional parameters
824
+ # @return [Array<(NasShare, Integer, Hash)>] NasShare data, response status code and response headers
825
+ def show_nas_share_by_nas_with_http_info(nas_id, nas_share_id, opts = {})
826
+ if @api_client.config.debugging
827
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.show_nas_share_by_nas ...'
828
+ end
829
+ # verify the required parameter 'nas_id' is set
830
+ if @api_client.config.client_side_validation && nas_id.nil?
831
+ fail ArgumentError, "Missing the required parameter 'nas_id' when calling NasSharesApi.show_nas_share_by_nas"
832
+ end
833
+ # verify the required parameter 'nas_share_id' is set
834
+ if @api_client.config.client_side_validation && nas_share_id.nil?
835
+ fail ArgumentError, "Missing the required parameter 'nas_share_id' when calling NasSharesApi.show_nas_share_by_nas"
836
+ end
837
+ # resource path
838
+ local_var_path = '/nas/{nas_id}/nas_shares/{nas_share_id}'.sub('{' + 'nas_id' + '}', CGI.escape(nas_id.to_s)).sub('{' + 'nas_share_id' + '}', CGI.escape(nas_share_id.to_s))
839
+
840
+ # query parameters
841
+ query_params = opts[:query_params] || {}
842
+
843
+ # header parameters
844
+ header_params = opts[:header_params] || {}
845
+ # HTTP header 'Accept' (if needed)
846
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
847
+
848
+ # form parameters
849
+ form_params = opts[:form_params] || {}
850
+
851
+ # http body (model)
852
+ post_body = opts[:body]
853
+
854
+ # return_type
855
+ return_type = opts[:return_type] || 'NasShare'
856
+
857
+ # auth_names
858
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
859
+
860
+ new_options = opts.merge(
861
+ :header_params => header_params,
862
+ :query_params => query_params,
863
+ :form_params => form_params,
864
+ :body => post_body,
865
+ :auth_names => auth_names,
866
+ :return_type => return_type
867
+ )
868
+
869
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
870
+ if @api_client.config.debugging
871
+ @api_client.config.logger.debug "API called: NasSharesApi#show_nas_share_by_nas\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
872
+ end
873
+ return data, status_code, headers
874
+ end
875
+
876
+ # Displays a specific NAS share.
877
+ # **API Key Scope**: nas_shares / show Optional API Key Explicit Scope: nas_shares / get_password
878
+ # @param pool_id [String] Numeric ID, or name of pool.
879
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
880
+ # @param [Hash] opts the optional parameters
881
+ # @return [NasShare]
882
+ def show_nas_share_by_pool(pool_id, nas_share_id, opts = {})
883
+ data, _status_code, _headers = show_nas_share_by_pool_with_http_info(pool_id, nas_share_id, opts)
884
+ data
885
+ end
886
+
887
+ # Displays a specific NAS share.
888
+ # **API Key Scope**: nas_shares / show Optional API Key Explicit Scope: nas_shares / get_password
889
+ # @param pool_id [String] Numeric ID, or name of pool.
890
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
891
+ # @param [Hash] opts the optional parameters
892
+ # @return [Array<(NasShare, Integer, Hash)>] NasShare data, response status code and response headers
893
+ def show_nas_share_by_pool_with_http_info(pool_id, nas_share_id, opts = {})
894
+ if @api_client.config.debugging
895
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.show_nas_share_by_pool ...'
896
+ end
897
+ # verify the required parameter 'pool_id' is set
898
+ if @api_client.config.client_side_validation && pool_id.nil?
899
+ fail ArgumentError, "Missing the required parameter 'pool_id' when calling NasSharesApi.show_nas_share_by_pool"
900
+ end
901
+ # verify the required parameter 'nas_share_id' is set
902
+ if @api_client.config.client_side_validation && nas_share_id.nil?
903
+ fail ArgumentError, "Missing the required parameter 'nas_share_id' when calling NasSharesApi.show_nas_share_by_pool"
904
+ end
905
+ # resource path
906
+ local_var_path = '/pools/{pool_id}/nas_shares/{nas_share_id}'.sub('{' + 'pool_id' + '}', CGI.escape(pool_id.to_s)).sub('{' + 'nas_share_id' + '}', CGI.escape(nas_share_id.to_s))
907
+
908
+ # query parameters
909
+ query_params = opts[:query_params] || {}
910
+
911
+ # header parameters
912
+ header_params = opts[:header_params] || {}
913
+ # HTTP header 'Accept' (if needed)
914
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
915
+
916
+ # form parameters
917
+ form_params = opts[:form_params] || {}
918
+
919
+ # http body (model)
920
+ post_body = opts[:body]
921
+
922
+ # return_type
923
+ return_type = opts[:return_type] || 'NasShare'
924
+
925
+ # auth_names
926
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
927
+
928
+ new_options = opts.merge(
929
+ :header_params => header_params,
930
+ :query_params => query_params,
931
+ :form_params => form_params,
932
+ :body => post_body,
933
+ :auth_names => auth_names,
934
+ :return_type => return_type
935
+ )
936
+
937
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
938
+ if @api_client.config.debugging
939
+ @api_client.config.logger.debug "API called: NasSharesApi#show_nas_share_by_pool\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
940
+ end
941
+ return data, status_code, headers
942
+ end
943
+
944
+ # Test an unsaved NAS Share.
945
+ # **API Key Scope**: nas_shares / test
946
+ # @param nas_id [String] Numeric ID or name of NAS.
947
+ # @param nas_share_body [NasShare]
948
+ # @param [Hash] opts the optional parameters
949
+ # @return [ActiveJobStatus]
950
+ def test_nas_share(nas_id, nas_share_body, opts = {})
951
+ data, _status_code, _headers = test_nas_share_with_http_info(nas_id, nas_share_body, opts)
952
+ data
953
+ end
954
+
955
+ # Test an unsaved NAS Share.
956
+ # **API Key Scope**: nas_shares / test
957
+ # @param nas_id [String] Numeric ID or name of NAS.
958
+ # @param nas_share_body [NasShare]
959
+ # @param [Hash] opts the optional parameters
960
+ # @return [Array<(ActiveJobStatus, Integer, Hash)>] ActiveJobStatus data, response status code and response headers
961
+ def test_nas_share_with_http_info(nas_id, nas_share_body, opts = {})
962
+ if @api_client.config.debugging
963
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.test_nas_share ...'
964
+ end
965
+ # verify the required parameter 'nas_id' is set
966
+ if @api_client.config.client_side_validation && nas_id.nil?
967
+ fail ArgumentError, "Missing the required parameter 'nas_id' when calling NasSharesApi.test_nas_share"
968
+ end
969
+ # verify the required parameter 'nas_share_body' is set
970
+ if @api_client.config.client_side_validation && nas_share_body.nil?
971
+ fail ArgumentError, "Missing the required parameter 'nas_share_body' when calling NasSharesApi.test_nas_share"
972
+ end
973
+ # resource path
974
+ local_var_path = '/nas/{nas_id}/nas_shares/-/test'.sub('{' + 'nas_id' + '}', CGI.escape(nas_id.to_s))
975
+
976
+ # query parameters
977
+ query_params = opts[:query_params] || {}
978
+
979
+ # header parameters
980
+ header_params = opts[:header_params] || {}
981
+ # HTTP header 'Accept' (if needed)
982
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'queued', 'working', 'failed'])
983
+ # HTTP header 'Content-Type'
984
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
985
+
986
+ # form parameters
987
+ form_params = opts[:form_params] || {}
988
+
989
+ # http body (model)
990
+ post_body = opts[:body] || @api_client.object_to_http_body(nas_share_body)
991
+
992
+ # return_type
993
+ return_type = opts[:return_type] || 'ActiveJobStatus'
994
+
995
+ # auth_names
996
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
997
+
998
+ new_options = opts.merge(
999
+ :header_params => header_params,
1000
+ :query_params => query_params,
1001
+ :form_params => form_params,
1002
+ :body => post_body,
1003
+ :auth_names => auth_names,
1004
+ :return_type => return_type
1005
+ )
1006
+
1007
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
1008
+ if @api_client.config.debugging
1009
+ @api_client.config.logger.debug "API called: NasSharesApi#test_nas_share\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1010
+ end
1011
+ return data, status_code, headers
1012
+ end
1013
+
1014
+ # Check result of a NAS Share test job.
1015
+ # **API Key Scope**: nas_shares / test
1016
+ # @param nas_id [String] Numeric ID or name of NAS.
1017
+ # @param job_id [String] ID of active job
1018
+ # @param [Hash] opts the optional parameters
1019
+ # @return [ActiveJobStatus]
1020
+ def test_result_nas_share(nas_id, job_id, opts = {})
1021
+ data, _status_code, _headers = test_result_nas_share_with_http_info(nas_id, job_id, opts)
1022
+ data
1023
+ end
1024
+
1025
+ # Check result of a NAS Share test job.
1026
+ # **API Key Scope**: nas_shares / test
1027
+ # @param nas_id [String] Numeric ID or name of NAS.
1028
+ # @param job_id [String] ID of active job
1029
+ # @param [Hash] opts the optional parameters
1030
+ # @return [Array<(ActiveJobStatus, Integer, Hash)>] ActiveJobStatus data, response status code and response headers
1031
+ def test_result_nas_share_with_http_info(nas_id, job_id, opts = {})
1032
+ if @api_client.config.debugging
1033
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.test_result_nas_share ...'
1034
+ end
1035
+ # verify the required parameter 'nas_id' is set
1036
+ if @api_client.config.client_side_validation && nas_id.nil?
1037
+ fail ArgumentError, "Missing the required parameter 'nas_id' when calling NasSharesApi.test_result_nas_share"
1038
+ end
1039
+ # verify the required parameter 'job_id' is set
1040
+ if @api_client.config.client_side_validation && job_id.nil?
1041
+ fail ArgumentError, "Missing the required parameter 'job_id' when calling NasSharesApi.test_result_nas_share"
1042
+ end
1043
+ # resource path
1044
+ local_var_path = '/nas/{nas_id}/nas_shares/-/test'.sub('{' + 'nas_id' + '}', CGI.escape(nas_id.to_s))
1045
+
1046
+ # query parameters
1047
+ query_params = opts[:query_params] || {}
1048
+ query_params[:'job_id'] = job_id
1049
+
1050
+ # header parameters
1051
+ header_params = opts[:header_params] || {}
1052
+ # HTTP header 'Accept' (if needed)
1053
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'queued', 'working', 'failed'])
1054
+
1055
+ # form parameters
1056
+ form_params = opts[:form_params] || {}
1057
+
1058
+ # http body (model)
1059
+ post_body = opts[:body]
1060
+
1061
+ # return_type
1062
+ return_type = opts[:return_type] || 'ActiveJobStatus'
1063
+
1064
+ # auth_names
1065
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
1066
+
1067
+ new_options = opts.merge(
1068
+ :header_params => header_params,
1069
+ :query_params => query_params,
1070
+ :form_params => form_params,
1071
+ :body => post_body,
1072
+ :auth_names => auth_names,
1073
+ :return_type => return_type
1074
+ )
1075
+
1076
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1077
+ if @api_client.config.debugging
1078
+ @api_client.config.logger.debug "API called: NasSharesApi#test_result_nas_share\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1079
+ end
1080
+ return data, status_code, headers
1081
+ end
1082
+
1083
+ # Updates a specific NAS share.
1084
+ # **API Key Scope**: nas_shares / update
1085
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
1086
+ # @param nas_share_body [NasShare]
1087
+ # @param [Hash] opts the optional parameters
1088
+ # @return [NasShare]
1089
+ def update_nas_share(nas_share_id, nas_share_body, opts = {})
1090
+ data, _status_code, _headers = update_nas_share_with_http_info(nas_share_id, nas_share_body, opts)
1091
+ data
1092
+ end
1093
+
1094
+ # Updates a specific NAS share.
1095
+ # **API Key Scope**: nas_shares / update
1096
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
1097
+ # @param nas_share_body [NasShare]
1098
+ # @param [Hash] opts the optional parameters
1099
+ # @return [Array<(NasShare, Integer, Hash)>] NasShare data, response status code and response headers
1100
+ def update_nas_share_with_http_info(nas_share_id, nas_share_body, opts = {})
1101
+ if @api_client.config.debugging
1102
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.update_nas_share ...'
1103
+ end
1104
+ # verify the required parameter 'nas_share_id' is set
1105
+ if @api_client.config.client_side_validation && nas_share_id.nil?
1106
+ fail ArgumentError, "Missing the required parameter 'nas_share_id' when calling NasSharesApi.update_nas_share"
1107
+ end
1108
+ # verify the required parameter 'nas_share_body' is set
1109
+ if @api_client.config.client_side_validation && nas_share_body.nil?
1110
+ fail ArgumentError, "Missing the required parameter 'nas_share_body' when calling NasSharesApi.update_nas_share"
1111
+ end
1112
+ # resource path
1113
+ local_var_path = '/nas_shares/{nas_share_id}'.sub('{' + 'nas_share_id' + '}', CGI.escape(nas_share_id.to_s))
1114
+
1115
+ # query parameters
1116
+ query_params = opts[:query_params] || {}
1117
+
1118
+ # header parameters
1119
+ header_params = opts[:header_params] || {}
1120
+ # HTTP header 'Accept' (if needed)
1121
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1122
+ # HTTP header 'Content-Type'
1123
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
1124
+
1125
+ # form parameters
1126
+ form_params = opts[:form_params] || {}
1127
+
1128
+ # http body (model)
1129
+ post_body = opts[:body] || @api_client.object_to_http_body(nas_share_body)
1130
+
1131
+ # return_type
1132
+ return_type = opts[:return_type] || 'NasShare'
1133
+
1134
+ # auth_names
1135
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
1136
+
1137
+ new_options = opts.merge(
1138
+ :header_params => header_params,
1139
+ :query_params => query_params,
1140
+ :form_params => form_params,
1141
+ :body => post_body,
1142
+ :auth_names => auth_names,
1143
+ :return_type => return_type
1144
+ )
1145
+
1146
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
1147
+ if @api_client.config.debugging
1148
+ @api_client.config.logger.debug "API called: NasSharesApi#update_nas_share\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1149
+ end
1150
+ return data, status_code, headers
1151
+ end
1152
+
1153
+ # Updates a specific NAS share.
1154
+ # **API Key Scope**: nas_shares / update
1155
+ # @param nas_id [String] Numeric ID or name of NAS.
1156
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
1157
+ # @param nas_share_body [NasShare]
1158
+ # @param [Hash] opts the optional parameters
1159
+ # @return [NasShare]
1160
+ def update_nas_share_by_nas(nas_id, nas_share_id, nas_share_body, opts = {})
1161
+ data, _status_code, _headers = update_nas_share_by_nas_with_http_info(nas_id, nas_share_id, nas_share_body, opts)
1162
+ data
1163
+ end
1164
+
1165
+ # Updates a specific NAS share.
1166
+ # **API Key Scope**: nas_shares / update
1167
+ # @param nas_id [String] Numeric ID or name of NAS.
1168
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
1169
+ # @param nas_share_body [NasShare]
1170
+ # @param [Hash] opts the optional parameters
1171
+ # @return [Array<(NasShare, Integer, Hash)>] NasShare data, response status code and response headers
1172
+ def update_nas_share_by_nas_with_http_info(nas_id, nas_share_id, nas_share_body, opts = {})
1173
+ if @api_client.config.debugging
1174
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.update_nas_share_by_nas ...'
1175
+ end
1176
+ # verify the required parameter 'nas_id' is set
1177
+ if @api_client.config.client_side_validation && nas_id.nil?
1178
+ fail ArgumentError, "Missing the required parameter 'nas_id' when calling NasSharesApi.update_nas_share_by_nas"
1179
+ end
1180
+ # verify the required parameter 'nas_share_id' is set
1181
+ if @api_client.config.client_side_validation && nas_share_id.nil?
1182
+ fail ArgumentError, "Missing the required parameter 'nas_share_id' when calling NasSharesApi.update_nas_share_by_nas"
1183
+ end
1184
+ # verify the required parameter 'nas_share_body' is set
1185
+ if @api_client.config.client_side_validation && nas_share_body.nil?
1186
+ fail ArgumentError, "Missing the required parameter 'nas_share_body' when calling NasSharesApi.update_nas_share_by_nas"
1187
+ end
1188
+ # resource path
1189
+ local_var_path = '/nas/{nas_id}/nas_shares/{nas_share_id}'.sub('{' + 'nas_id' + '}', CGI.escape(nas_id.to_s)).sub('{' + 'nas_share_id' + '}', CGI.escape(nas_share_id.to_s))
1190
+
1191
+ # query parameters
1192
+ query_params = opts[:query_params] || {}
1193
+
1194
+ # header parameters
1195
+ header_params = opts[:header_params] || {}
1196
+ # HTTP header 'Accept' (if needed)
1197
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1198
+ # HTTP header 'Content-Type'
1199
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
1200
+
1201
+ # form parameters
1202
+ form_params = opts[:form_params] || {}
1203
+
1204
+ # http body (model)
1205
+ post_body = opts[:body] || @api_client.object_to_http_body(nas_share_body)
1206
+
1207
+ # return_type
1208
+ return_type = opts[:return_type] || 'NasShare'
1209
+
1210
+ # auth_names
1211
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
1212
+
1213
+ new_options = opts.merge(
1214
+ :header_params => header_params,
1215
+ :query_params => query_params,
1216
+ :form_params => form_params,
1217
+ :body => post_body,
1218
+ :auth_names => auth_names,
1219
+ :return_type => return_type
1220
+ )
1221
+
1222
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
1223
+ if @api_client.config.debugging
1224
+ @api_client.config.logger.debug "API called: NasSharesApi#update_nas_share_by_nas\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1225
+ end
1226
+ return data, status_code, headers
1227
+ end
1228
+
1229
+ # Updates a specific NAS share.
1230
+ # **API Key Scope**: nas_shares / update
1231
+ # @param pool_id [String] Numeric ID, or name of pool.
1232
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
1233
+ # @param nas_share_body [NasShare]
1234
+ # @param [Hash] opts the optional parameters
1235
+ # @return [NasShare]
1236
+ def update_nas_share_by_pool(pool_id, nas_share_id, nas_share_body, opts = {})
1237
+ data, _status_code, _headers = update_nas_share_by_pool_with_http_info(pool_id, nas_share_id, nas_share_body, opts)
1238
+ data
1239
+ end
1240
+
1241
+ # Updates a specific NAS share.
1242
+ # **API Key Scope**: nas_shares / update
1243
+ # @param pool_id [String] Numeric ID, or name of pool.
1244
+ # @param nas_share_id [String] Numeric ID or name of NAS share.
1245
+ # @param nas_share_body [NasShare]
1246
+ # @param [Hash] opts the optional parameters
1247
+ # @return [Array<(NasShare, Integer, Hash)>] NasShare data, response status code and response headers
1248
+ def update_nas_share_by_pool_with_http_info(pool_id, nas_share_id, nas_share_body, opts = {})
1249
+ if @api_client.config.debugging
1250
+ @api_client.config.logger.debug 'Calling API: NasSharesApi.update_nas_share_by_pool ...'
1251
+ end
1252
+ # verify the required parameter 'pool_id' is set
1253
+ if @api_client.config.client_side_validation && pool_id.nil?
1254
+ fail ArgumentError, "Missing the required parameter 'pool_id' when calling NasSharesApi.update_nas_share_by_pool"
1255
+ end
1256
+ # verify the required parameter 'nas_share_id' is set
1257
+ if @api_client.config.client_side_validation && nas_share_id.nil?
1258
+ fail ArgumentError, "Missing the required parameter 'nas_share_id' when calling NasSharesApi.update_nas_share_by_pool"
1259
+ end
1260
+ # verify the required parameter 'nas_share_body' is set
1261
+ if @api_client.config.client_side_validation && nas_share_body.nil?
1262
+ fail ArgumentError, "Missing the required parameter 'nas_share_body' when calling NasSharesApi.update_nas_share_by_pool"
1263
+ end
1264
+ # resource path
1265
+ local_var_path = '/pools/{pool_id}/nas_shares/{nas_share_id}'.sub('{' + 'pool_id' + '}', CGI.escape(pool_id.to_s)).sub('{' + 'nas_share_id' + '}', CGI.escape(nas_share_id.to_s))
1266
+
1267
+ # query parameters
1268
+ query_params = opts[:query_params] || {}
1269
+
1270
+ # header parameters
1271
+ header_params = opts[:header_params] || {}
1272
+ # HTTP header 'Accept' (if needed)
1273
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1274
+ # HTTP header 'Content-Type'
1275
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
1276
+
1277
+ # form parameters
1278
+ form_params = opts[:form_params] || {}
1279
+
1280
+ # http body (model)
1281
+ post_body = opts[:body] || @api_client.object_to_http_body(nas_share_body)
1282
+
1283
+ # return_type
1284
+ return_type = opts[:return_type] || 'NasShare'
1285
+
1286
+ # auth_names
1287
+ auth_names = opts[:auth_names] || ['BasicAuth', 'BearerAuth']
1288
+
1289
+ new_options = opts.merge(
1290
+ :header_params => header_params,
1291
+ :query_params => query_params,
1292
+ :form_params => form_params,
1293
+ :body => post_body,
1294
+ :auth_names => auth_names,
1295
+ :return_type => return_type
1296
+ )
1297
+
1298
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
1299
+ if @api_client.config.debugging
1300
+ @api_client.config.logger.debug "API called: NasSharesApi#update_nas_share_by_pool\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1301
+ end
1302
+ return data, status_code, headers
1303
+ end
1304
+ end
1305
+ end