ibm_cloud_power 1.1.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (383) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +68 -3
  3. data/docs/CloneTaskReference.md +10 -9
  4. data/docs/CloneTaskStatus.md +14 -13
  5. data/docs/ClonedVolume.md +10 -9
  6. data/docs/ClonedVolumeDetail.md +10 -9
  7. data/docs/CloudConnection.md +32 -31
  8. data/docs/CloudConnectionCreate.md +14 -13
  9. data/docs/CloudConnectionCreateResponse.md +44 -0
  10. data/docs/CloudConnectionEndpointClassic.md +10 -9
  11. data/docs/CloudConnectionEndpointGRE.md +10 -9
  12. data/docs/CloudConnectionEndpointVPC.md +10 -9
  13. data/docs/CloudConnectionGRETunnel.md +12 -11
  14. data/docs/CloudConnectionSpeed.md +4 -5
  15. data/docs/CloudConnectionUpdate.md +18 -17
  16. data/docs/CloudConnectionVPC.md +10 -9
  17. data/docs/CloudConnectionVirtualPrivateClouds.md +8 -7
  18. data/docs/CloudConnectionVirtualPrivateCloudsVirtualPrivateCloudsInner.md +24 -0
  19. data/docs/CloudConnections.md +8 -7
  20. data/docs/CloudInstance.md +28 -27
  21. data/docs/CloudInstanceCreate.md +20 -19
  22. data/docs/CloudInstanceReference.md +22 -21
  23. data/docs/CloudInstanceUpdate.md +16 -15
  24. data/docs/CloudInstanceUsageLimits.md +28 -27
  25. data/docs/CreateCosImageImportJob.md +38 -0
  26. data/docs/CreateDataVolume.md +26 -19
  27. data/docs/CreateImage.md +32 -27
  28. data/docs/DeadPeerDetection.md +22 -0
  29. data/docs/Error.md +10 -9
  30. data/docs/Event.md +24 -23
  31. data/docs/EventUser.md +12 -11
  32. data/docs/Events.md +8 -7
  33. data/docs/ExportImage.md +14 -13
  34. data/docs/IKEPolicies.md +18 -0
  35. data/docs/IKEPolicy.md +30 -0
  36. data/docs/IKEPolicyCreate.md +30 -0
  37. data/docs/IKEPolicyOptions.md +24 -0
  38. data/docs/IKEPolicyRef.md +20 -0
  39. data/docs/IKEPolicyTemplate.md +26 -0
  40. data/docs/IKEPolicyUpdate.md +30 -0
  41. data/docs/IPAddressRange.md +10 -9
  42. data/docs/IPSecPolicies.md +18 -0
  43. data/docs/IPSecPolicy.md +30 -0
  44. data/docs/IPSecPolicyCreate.md +28 -0
  45. data/docs/IPSecPolicyOptions.md +22 -0
  46. data/docs/IPSecPolicyRef.md +20 -0
  47. data/docs/IPSecPolicyTemplate.md +24 -0
  48. data/docs/IPSecPolicyUpdate.md +28 -0
  49. data/docs/Image.md +32 -31
  50. data/docs/ImageReference.md +26 -25
  51. data/docs/ImageSpecifications.md +20 -19
  52. data/docs/ImageVolume.md +14 -13
  53. data/docs/Images.md +8 -7
  54. data/docs/Job.md +24 -0
  55. data/docs/JobReference.md +20 -0
  56. data/docs/Jobs.md +18 -0
  57. data/docs/MaximumStorageAllocation.md +12 -11
  58. data/docs/MinMaxDefault.md +12 -11
  59. data/docs/MultiVolumesCreate.md +28 -21
  60. data/docs/Network.md +28 -27
  61. data/docs/NetworkCreate.md +20 -19
  62. data/docs/NetworkID.md +18 -0
  63. data/docs/NetworkIDs.md +18 -0
  64. data/docs/NetworkIpAddressMetrics.md +14 -13
  65. data/docs/NetworkPort.md +22 -21
  66. data/docs/NetworkPortCreate.md +10 -9
  67. data/docs/NetworkPortPvmInstance.md +10 -9
  68. data/docs/NetworkPortUpdate.md +10 -9
  69. data/docs/NetworkPorts.md +8 -7
  70. data/docs/NetworkReference.md +18 -17
  71. data/docs/NetworkUpdate.md +14 -13
  72. data/docs/Networks.md +8 -7
  73. data/docs/Operation.md +22 -0
  74. data/docs/Operations.md +12 -11
  75. data/docs/Options.md +18 -0
  76. data/docs/PCloudCloudConnectionsApi.md +229 -94
  77. data/docs/PCloudEventsApi.md +60 -27
  78. data/docs/PCloudImagesApi.md +513 -101
  79. data/docs/PCloudInstancesApi.md +83 -33
  80. data/docs/PCloudJobsApi.md +208 -0
  81. data/docs/PCloudNetworksApi.md +287 -118
  82. data/docs/PCloudPVMInstancesApi.md +628 -208
  83. data/docs/PCloudPlacementGroupsApi.md +177 -76
  84. data/docs/PCloudSAPApi.md +86 -36
  85. data/docs/PCloudSnapshotsApi.md +112 -45
  86. data/docs/PCloudStorageCapacityApi.md +112 -45
  87. data/docs/PCloudSystemPoolsApi.md +29 -13
  88. data/docs/PCloudTasksApi.md +55 -22
  89. data/docs/PCloudTenantsApi.md +57 -24
  90. data/docs/PCloudTenantsSSHKeysApi.md +143 -59
  91. data/docs/PCloudVPNConnectionsApi.md +817 -0
  92. data/docs/PCloudVPNPoliciesApi.md +677 -0
  93. data/docs/PCloudVolumesApi.md +629 -256
  94. data/docs/PVMInstance.md +72 -69
  95. data/docs/PVMInstanceAction.md +8 -7
  96. data/docs/PVMInstanceAddNetwork.md +10 -9
  97. data/docs/PVMInstanceCapture.md +20 -19
  98. data/docs/PVMInstanceClone.md +22 -21
  99. data/docs/PVMInstanceConsole.md +8 -7
  100. data/docs/PVMInstanceCreate.md +50 -45
  101. data/docs/PVMInstanceFault.md +14 -13
  102. data/docs/PVMInstanceHealth.md +12 -11
  103. data/docs/PVMInstanceMultiCreate.md +12 -11
  104. data/docs/PVMInstanceNetwork.md +24 -23
  105. data/docs/PVMInstanceNetworks.md +8 -7
  106. data/docs/PVMInstanceOperation.md +10 -9
  107. data/docs/PVMInstanceReference.md +68 -61
  108. data/docs/PVMInstanceRemoveNetwork.md +8 -7
  109. data/docs/PVMInstanceUpdate.md +26 -23
  110. data/docs/PVMInstanceUpdateResponse.md +18 -17
  111. data/docs/PVMInstanceVolumeUpdate.md +8 -7
  112. data/docs/PVMInstances.md +8 -7
  113. data/docs/PeerSubnetUpdate.md +18 -0
  114. data/docs/PeerSubnets.md +18 -0
  115. data/docs/PeeringNetwork.md +12 -11
  116. data/docs/PinPolicy.md +4 -5
  117. data/docs/PlacementGroup.md +14 -13
  118. data/docs/PlacementGroupCreate.md +10 -9
  119. data/docs/PlacementGroupServer.md +8 -7
  120. data/docs/PlacementGroups.md +8 -7
  121. data/docs/SAPCreate.md +30 -23
  122. data/docs/SAPProfile.md +16 -15
  123. data/docs/SAPProfileReference.md +10 -9
  124. data/docs/SAPProfiles.md +8 -7
  125. data/docs/SRC.md +10 -9
  126. data/docs/SSHKey.md +12 -11
  127. data/docs/SSHKeys.md +8 -7
  128. data/docs/Snapshot.md +26 -25
  129. data/docs/SnapshotCreate.md +12 -11
  130. data/docs/SnapshotCreateResponse.md +8 -7
  131. data/docs/SnapshotRestore.md +8 -7
  132. data/docs/SnapshotUpdate.md +10 -9
  133. data/docs/Snapshots.md +8 -7
  134. data/docs/SoftwareLicenses.md +16 -15
  135. data/docs/Status.md +22 -0
  136. data/docs/StockImage.md +12 -11
  137. data/docs/StorageAffinity.md +26 -0
  138. data/docs/StoragePoolCapacity.md +14 -13
  139. data/docs/StoragePoolsCapacity.md +10 -9
  140. data/docs/StorageTypeCapacity.md +12 -11
  141. data/docs/StorageTypesCapacity.md +10 -9
  142. data/docs/System.md +12 -11
  143. data/docs/SystemPool.md +22 -21
  144. data/docs/Task.md +24 -23
  145. data/docs/TaskReference.md +10 -9
  146. data/docs/Tenant.md +20 -19
  147. data/docs/TenantUpdate.md +10 -9
  148. data/docs/UpdateVolume.md +14 -13
  149. data/docs/VPNConnection.md +40 -0
  150. data/docs/VPNConnectionCreate.md +30 -0
  151. data/docs/VPNConnectionCreateResponse.md +42 -0
  152. data/docs/VPNConnectionUpdate.md +24 -0
  153. data/docs/VPNConnections.md +18 -0
  154. data/docs/VPNaaSOptions.md +26 -0
  155. data/docs/VirtualCores.md +12 -11
  156. data/docs/Volume.md +36 -33
  157. data/docs/VolumeInfo.md +10 -9
  158. data/docs/VolumeReference.md +38 -35
  159. data/docs/Volumes.md +8 -7
  160. data/docs/VolumesClone.md +22 -21
  161. data/docs/VolumesCloneAsyncRequest.md +10 -9
  162. data/docs/VolumesCloneCancel.md +8 -7
  163. data/docs/VolumesCloneCreate.md +10 -9
  164. data/docs/VolumesCloneDetail.md +24 -23
  165. data/docs/VolumesCloneExecute.md +10 -9
  166. data/docs/VolumesCloneRequest.md +10 -9
  167. data/docs/VolumesCloneResponse.md +8 -7
  168. data/docs/VolumesClones.md +8 -7
  169. data/git_push.sh +3 -4
  170. data/ibm_cloud_power.gemspec +3 -3
  171. data/lib/ibm_cloud_power/api/p_cloud_cloud_connections_api.rb +43 -29
  172. data/lib/ibm_cloud_power/api/p_cloud_events_api.rb +9 -7
  173. data/lib/ibm_cloud_power/api/p_cloud_images_api.rb +325 -32
  174. data/lib/ibm_cloud_power/api/p_cloud_instances_api.rb +17 -11
  175. data/lib/ibm_cloud_power/api/p_cloud_jobs_api.rb +234 -0
  176. data/lib/ibm_cloud_power/api/p_cloud_networks_api.rb +57 -35
  177. data/lib/ibm_cloud_power/api/p_cloud_placement_groups_api.rb +45 -30
  178. data/lib/ibm_cloud_power/api/p_cloud_pvm_instances_api.rb +256 -64
  179. data/lib/ibm_cloud_power/api/p_cloud_sap_api.rb +17 -11
  180. data/lib/ibm_cloud_power/api/p_cloud_snapshots_api.rb +21 -14
  181. data/lib/ibm_cloud_power/api/p_cloud_storage_capacity_api.rb +17 -13
  182. data/lib/ibm_cloud_power/api/p_cloud_system_pools_api.rb +5 -4
  183. data/lib/ibm_cloud_power/api/p_cloud_tasks_api.rb +9 -7
  184. data/lib/ibm_cloud_power/api/p_cloud_tenants_api.rb +13 -8
  185. data/lib/ibm_cloud_power/api/p_cloud_tenants_ssh_keys_api.rb +29 -18
  186. data/lib/ibm_cloud_power/api/p_cloud_volumes_api.rb +125 -76
  187. data/lib/ibm_cloud_power/api/p_cloud_vpn_connections_api.rb +898 -0
  188. data/lib/ibm_cloud_power/api/p_cloud_vpn_policies_api.rb +732 -0
  189. data/lib/ibm_cloud_power/api_client.rb +56 -52
  190. data/lib/ibm_cloud_power/api_error.rb +1 -1
  191. data/lib/ibm_cloud_power/configuration.rb +43 -12
  192. data/lib/ibm_cloud_power/models/clone_task_reference.rb +19 -8
  193. data/lib/ibm_cloud_power/models/clone_task_status.rb +19 -8
  194. data/lib/ibm_cloud_power/models/cloned_volume.rb +19 -8
  195. data/lib/ibm_cloud_power/models/cloned_volume_detail.rb +19 -8
  196. data/lib/ibm_cloud_power/models/cloud_connection.rb +20 -9
  197. data/lib/ibm_cloud_power/models/cloud_connection_create.rb +53 -8
  198. data/lib/ibm_cloud_power/models/cloud_connection_create_response.rb +406 -0
  199. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_classic.rb +19 -8
  200. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_gre.rb +19 -8
  201. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_vpc.rb +19 -8
  202. data/lib/ibm_cloud_power/models/cloud_connection_gre_tunnel.rb +19 -8
  203. data/lib/ibm_cloud_power/models/cloud_connection_speed.rb +2 -1
  204. data/lib/ibm_cloud_power/models/cloud_connection_update.rb +53 -8
  205. data/lib/ibm_cloud_power/models/cloud_connection_virtual_private_clouds.rb +20 -9
  206. data/lib/ibm_cloud_power/models/cloud_connection_virtual_private_clouds_virtual_private_clouds_inner.rb +270 -0
  207. data/lib/ibm_cloud_power/models/cloud_connection_vpc.rb +19 -8
  208. data/lib/ibm_cloud_power/models/cloud_connections.rb +19 -8
  209. data/lib/ibm_cloud_power/models/cloud_instance.rb +19 -8
  210. data/lib/ibm_cloud_power/models/cloud_instance_create.rb +19 -8
  211. data/lib/ibm_cloud_power/models/cloud_instance_reference.rb +19 -8
  212. data/lib/ibm_cloud_power/models/cloud_instance_update.rb +19 -8
  213. data/lib/ibm_cloud_power/models/cloud_instance_usage_limits.rb +19 -8
  214. data/lib/ibm_cloud_power/models/create_cos_image_import_job.rb +387 -0
  215. data/lib/ibm_cloud_power/models/create_data_volume.rb +59 -14
  216. data/lib/ibm_cloud_power/models/create_image.rb +39 -9
  217. data/lib/ibm_cloud_power/models/dead_peer_detection.rb +350 -0
  218. data/lib/ibm_cloud_power/models/error.rb +32 -21
  219. data/lib/ibm_cloud_power/models/event.rb +20 -9
  220. data/lib/ibm_cloud_power/models/event_user.rb +19 -8
  221. data/lib/ibm_cloud_power/models/events.rb +19 -8
  222. data/lib/ibm_cloud_power/models/export_image.rb +19 -8
  223. data/lib/ibm_cloud_power/models/ike_policies.rb +227 -0
  224. data/lib/ibm_cloud_power/models/ike_policy.rb +414 -0
  225. data/lib/ibm_cloud_power/models/ike_policy_create.rb +414 -0
  226. data/lib/ibm_cloud_power/models/ike_policy_options.rb +274 -0
  227. data/lib/ibm_cloud_power/models/ike_policy_ref.rb +241 -0
  228. data/lib/ibm_cloud_power/models/ike_policy_template.rb +313 -0
  229. data/lib/ibm_cloud_power/models/ike_policy_update.rb +375 -0
  230. data/lib/ibm_cloud_power/models/image.rb +21 -10
  231. data/lib/ibm_cloud_power/models/image_reference.rb +21 -10
  232. data/lib/ibm_cloud_power/models/image_specifications.rb +19 -8
  233. data/lib/ibm_cloud_power/models/image_volume.rb +19 -8
  234. data/lib/ibm_cloud_power/models/images.rb +19 -8
  235. data/lib/ibm_cloud_power/models/ip_address_range.rb +19 -8
  236. data/lib/ibm_cloud_power/models/ip_sec_policies.rb +227 -0
  237. data/lib/ibm_cloud_power/models/ip_sec_policy.rb +402 -0
  238. data/lib/ibm_cloud_power/models/ip_sec_policy_create.rb +387 -0
  239. data/lib/ibm_cloud_power/models/ip_sec_policy_options.rb +258 -0
  240. data/lib/ibm_cloud_power/models/ip_sec_policy_ref.rb +241 -0
  241. data/lib/ibm_cloud_power/models/ip_sec_policy_template.rb +298 -0
  242. data/lib/ibm_cloud_power/models/ip_sec_policy_update.rb +353 -0
  243. data/lib/ibm_cloud_power/models/job.rb +263 -0
  244. data/lib/ibm_cloud_power/models/job_reference.rb +240 -0
  245. data/lib/ibm_cloud_power/models/jobs.rb +227 -0
  246. data/lib/ibm_cloud_power/models/maximum_storage_allocation.rb +20 -9
  247. data/lib/ibm_cloud_power/models/min_max_default.rb +19 -8
  248. data/lib/ibm_cloud_power/models/multi_volumes_create.rb +57 -12
  249. data/lib/ibm_cloud_power/models/network.rb +19 -8
  250. data/lib/ibm_cloud_power/models/network_create.rb +19 -8
  251. data/lib/ibm_cloud_power/models/network_id.rb +225 -0
  252. data/lib/ibm_cloud_power/models/network_ids.rb +222 -0
  253. data/lib/ibm_cloud_power/models/network_ip_address_metrics.rb +19 -8
  254. data/lib/ibm_cloud_power/models/network_port.rb +19 -8
  255. data/lib/ibm_cloud_power/models/network_port_create.rb +19 -8
  256. data/lib/ibm_cloud_power/models/network_port_pvm_instance.rb +19 -8
  257. data/lib/ibm_cloud_power/models/network_port_update.rb +19 -8
  258. data/lib/ibm_cloud_power/models/network_ports.rb +19 -8
  259. data/lib/ibm_cloud_power/models/network_reference.rb +19 -8
  260. data/lib/ibm_cloud_power/models/network_update.rb +19 -8
  261. data/lib/ibm_cloud_power/models/networks.rb +19 -8
  262. data/lib/ibm_cloud_power/models/operation.rb +255 -0
  263. data/lib/ibm_cloud_power/models/operations.rb +19 -8
  264. data/lib/ibm_cloud_power/models/options.rb +224 -0
  265. data/lib/ibm_cloud_power/models/peer_subnet_update.rb +225 -0
  266. data/lib/ibm_cloud_power/models/peer_subnets.rb +222 -0
  267. data/lib/ibm_cloud_power/models/peering_network.rb +19 -8
  268. data/lib/ibm_cloud_power/models/pin_policy.rb +2 -1
  269. data/lib/ibm_cloud_power/models/placement_group.rb +19 -8
  270. data/lib/ibm_cloud_power/models/placement_group_create.rb +19 -8
  271. data/lib/ibm_cloud_power/models/placement_group_server.rb +19 -8
  272. data/lib/ibm_cloud_power/models/placement_groups.rb +19 -8
  273. data/lib/ibm_cloud_power/models/pvm_instance.rb +57 -34
  274. data/lib/ibm_cloud_power/models/pvm_instance_action.rb +19 -8
  275. data/lib/ibm_cloud_power/models/pvm_instance_add_network.rb +19 -8
  276. data/lib/ibm_cloud_power/models/pvm_instance_capture.rb +27 -16
  277. data/lib/ibm_cloud_power/models/pvm_instance_clone.rb +28 -17
  278. data/lib/ibm_cloud_power/models/pvm_instance_console.rb +19 -8
  279. data/lib/ibm_cloud_power/models/pvm_instance_create.rb +54 -24
  280. data/lib/ibm_cloud_power/models/pvm_instance_fault.rb +20 -9
  281. data/lib/ibm_cloud_power/models/pvm_instance_health.rb +19 -8
  282. data/lib/ibm_cloud_power/models/pvm_instance_multi_create.rb +19 -8
  283. data/lib/ibm_cloud_power/models/pvm_instance_network.rb +19 -8
  284. data/lib/ibm_cloud_power/models/pvm_instance_networks.rb +19 -8
  285. data/lib/ibm_cloud_power/models/pvm_instance_operation.rb +19 -8
  286. data/lib/ibm_cloud_power/models/pvm_instance_reference.rb +55 -12
  287. data/lib/ibm_cloud_power/models/pvm_instance_remove_network.rb +19 -8
  288. data/lib/ibm_cloud_power/models/pvm_instance_update.rb +32 -9
  289. data/lib/ibm_cloud_power/models/pvm_instance_update_response.rb +19 -8
  290. data/lib/ibm_cloud_power/models/pvm_instance_volume_update.rb +19 -8
  291. data/lib/ibm_cloud_power/models/pvm_instances.rb +19 -8
  292. data/lib/ibm_cloud_power/models/sap_create.rb +56 -16
  293. data/lib/ibm_cloud_power/models/sap_profile.rb +18 -7
  294. data/lib/ibm_cloud_power/models/sap_profile_reference.rb +19 -8
  295. data/lib/ibm_cloud_power/models/sap_profiles.rb +19 -8
  296. data/lib/ibm_cloud_power/models/snapshot.rb +21 -10
  297. data/lib/ibm_cloud_power/models/snapshot_create.rb +27 -16
  298. data/lib/ibm_cloud_power/models/snapshot_create_response.rb +19 -8
  299. data/lib/ibm_cloud_power/models/snapshot_restore.rb +19 -8
  300. data/lib/ibm_cloud_power/models/snapshot_update.rb +19 -8
  301. data/lib/ibm_cloud_power/models/snapshots.rb +19 -8
  302. data/lib/ibm_cloud_power/models/software_licenses.rb +19 -8
  303. data/lib/ibm_cloud_power/models/src.rb +19 -8
  304. data/lib/ibm_cloud_power/models/ssh_key.rb +20 -9
  305. data/lib/ibm_cloud_power/models/ssh_keys.rb +19 -8
  306. data/lib/ibm_cloud_power/models/status.rb +250 -0
  307. data/lib/ibm_cloud_power/models/stock_image.rb +19 -8
  308. data/lib/ibm_cloud_power/models/storage_affinity.rb +298 -0
  309. data/lib/ibm_cloud_power/models/storage_pool_capacity.rb +20 -9
  310. data/lib/ibm_cloud_power/models/storage_pools_capacity.rb +19 -8
  311. data/lib/ibm_cloud_power/models/storage_type_capacity.rb +19 -8
  312. data/lib/ibm_cloud_power/models/storage_types_capacity.rb +19 -8
  313. data/lib/ibm_cloud_power/models/system.rb +19 -8
  314. data/lib/ibm_cloud_power/models/system_pool.rb +19 -8
  315. data/lib/ibm_cloud_power/models/task.rb +21 -10
  316. data/lib/ibm_cloud_power/models/task_reference.rb +19 -8
  317. data/lib/ibm_cloud_power/models/tenant.rb +20 -9
  318. data/lib/ibm_cloud_power/models/tenant_update.rb +19 -8
  319. data/lib/ibm_cloud_power/models/update_volume.rb +19 -8
  320. data/lib/ibm_cloud_power/models/virtual_cores.rb +19 -8
  321. data/lib/ibm_cloud_power/models/volume.rb +39 -18
  322. data/lib/ibm_cloud_power/models/volume_info.rb +19 -8
  323. data/lib/ibm_cloud_power/models/volume_reference.rb +39 -18
  324. data/lib/ibm_cloud_power/models/volumes.rb +19 -8
  325. data/lib/ibm_cloud_power/models/volumes_clone.rb +21 -10
  326. data/lib/ibm_cloud_power/models/volumes_clone_async_request.rb +30 -19
  327. data/lib/ibm_cloud_power/models/volumes_clone_cancel.rb +19 -8
  328. data/lib/ibm_cloud_power/models/volumes_clone_create.rb +30 -19
  329. data/lib/ibm_cloud_power/models/volumes_clone_detail.rb +21 -10
  330. data/lib/ibm_cloud_power/models/volumes_clone_execute.rb +19 -8
  331. data/lib/ibm_cloud_power/models/volumes_clone_request.rb +30 -19
  332. data/lib/ibm_cloud_power/models/volumes_clone_response.rb +19 -8
  333. data/lib/ibm_cloud_power/models/volumes_clones.rb +19 -8
  334. data/lib/ibm_cloud_power/models/vp_naa_s_options.rb +280 -0
  335. data/lib/ibm_cloud_power/models/vpn_connection.rb +437 -0
  336. data/lib/ibm_cloud_power/models/vpn_connection_create.rb +353 -0
  337. data/lib/ibm_cloud_power/models/vpn_connection_create_response.rb +453 -0
  338. data/lib/ibm_cloud_power/models/vpn_connection_update.rb +251 -0
  339. data/lib/ibm_cloud_power/models/vpn_connections.rb +222 -0
  340. data/lib/ibm_cloud_power/version.rb +2 -2
  341. data/lib/ibm_cloud_power.rb +39 -2
  342. data/spec/api/p_cloud_jobs_api_spec.rb +73 -0
  343. data/spec/api/p_cloud_vpn_connections_api_spec.rb +194 -0
  344. data/spec/api/p_cloud_vpn_policies_api_spec.rb +165 -0
  345. data/spec/api_client_spec.rb +3 -3
  346. data/spec/configuration_spec.rb +1 -1
  347. data/spec/models/cloud_connection_create_response_spec.rb +112 -0
  348. data/spec/models/cloud_connection_virtual_private_clouds_virtual_private_clouds_inner_spec.rb +52 -0
  349. data/spec/models/create_cos_image_import_job_spec.rb +102 -0
  350. data/spec/models/dead_peer_detection_spec.rb +50 -0
  351. data/spec/models/ike_policies_spec.rb +34 -0
  352. data/spec/models/ike_policy_create_spec.rb +86 -0
  353. data/spec/models/ike_policy_options_spec.rb +52 -0
  354. data/spec/models/ike_policy_ref_spec.rb +40 -0
  355. data/spec/models/ike_policy_spec.rb +86 -0
  356. data/spec/models/ike_policy_template_spec.rb +58 -0
  357. data/spec/models/ike_policy_update_spec.rb +86 -0
  358. data/spec/models/ip_sec_policies_spec.rb +34 -0
  359. data/spec/models/ip_sec_policy_create_spec.rb +76 -0
  360. data/spec/models/ip_sec_policy_options_spec.rb +46 -0
  361. data/spec/models/ip_sec_policy_ref_spec.rb +40 -0
  362. data/spec/models/ip_sec_policy_spec.rb +82 -0
  363. data/spec/models/ip_sec_policy_template_spec.rb +52 -0
  364. data/spec/models/ip_sec_policy_update_spec.rb +76 -0
  365. data/spec/models/job_reference_spec.rb +40 -0
  366. data/spec/models/job_spec.rb +52 -0
  367. data/spec/models/jobs_spec.rb +34 -0
  368. data/spec/models/network_id_spec.rb +34 -0
  369. data/spec/models/network_ids_spec.rb +34 -0
  370. data/spec/models/operation_spec.rb +46 -0
  371. data/spec/models/options_spec.rb +34 -0
  372. data/spec/models/peer_subnet_update_spec.rb +34 -0
  373. data/spec/models/peer_subnets_spec.rb +34 -0
  374. data/spec/models/status_spec.rb +46 -0
  375. data/spec/models/storage_affinity_spec.rb +62 -0
  376. data/spec/models/vp_naa_s_options_spec.rb +58 -0
  377. data/spec/models/vpn_connection_create_response_spec.rb +114 -0
  378. data/spec/models/vpn_connection_create_spec.rb +74 -0
  379. data/spec/models/vpn_connection_spec.rb +108 -0
  380. data/spec/models/vpn_connection_update_spec.rb +52 -0
  381. data/spec/models/vpn_connections_spec.rb +34 -0
  382. data/spec/spec_helper.rb +1 -1
  383. metadata +259 -107
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: kylej@us.ibm.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.0.0-beta2
9
+ OpenAPI Generator version: 6.0.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module IbmCloudPower
16
17
  class PVMInstanceCreate
@@ -39,13 +40,13 @@ module IbmCloudPower
39
40
  attr_accessor :memory
40
41
 
41
42
  # (deprecated - replaced by networks) List of Network IDs
42
- attr_accessor :network_i_ds
43
+ attr_accessor :network_ids
43
44
 
44
45
  # The pvm instance networks information
45
46
  attr_accessor :networks
46
47
 
47
48
  # List of volume IDs
48
- attr_accessor :volume_i_ds
49
+ attr_accessor :volume_ids
49
50
 
50
51
  # The name of the SSH key pair provided to the server for authenticating users (looked up in the tenant's list of keys)
51
52
  attr_accessor :key_pair_name
@@ -59,9 +60,14 @@ module IbmCloudPower
59
60
  # Cloud-init user-defined data. The user-defined data is made available to the VM instance as a config drive.
60
61
  attr_accessor :user_data
61
62
 
62
- # Storage type for server deployment. Only valid when you deploy one of the IBM supplied **stock** images. Storage type for a custom image (an imported image or an image that is created from a VM capture) defaults to the storage type the image was created in
63
+ # Storage type for server deployment; will be ignored if storagePool or storageAffinity is provided; Only valid when you deploy one of the IBM supplied stock images. Storage type and pool for a custom image (an imported image or an image that is created from a PVMInstance capture) defaults to the storage type and pool the image was created in
63
64
  attr_accessor :storage_type
64
65
 
66
+ attr_accessor :storage_affinity
67
+
68
+ # Storage Pool for server deployment; if provided then storageAffinity and storageType will be ignored; Only valid when you deploy one of the IBM supplied stock images. Storage type and pool for a custom image (an imported image or an image that is created from a PVMInstance capture) defaults to the storage type and pool the image was created in
69
+ attr_accessor :storage_pool
70
+
65
71
  attr_accessor :software_licenses
66
72
 
67
73
  attr_accessor :pin_policy
@@ -104,14 +110,16 @@ module IbmCloudPower
104
110
  :'processors' => :'processors',
105
111
  :'proc_type' => :'procType',
106
112
  :'memory' => :'memory',
107
- :'network_i_ds' => :'networkIDs',
113
+ :'network_ids' => :'networkIDs',
108
114
  :'networks' => :'networks',
109
- :'volume_i_ds' => :'volumeIDs',
115
+ :'volume_ids' => :'volumeIDs',
110
116
  :'key_pair_name' => :'keyPairName',
111
117
  :'sys_type' => :'sysType',
112
118
  :'migratable' => :'migratable',
113
119
  :'user_data' => :'userData',
114
120
  :'storage_type' => :'storageType',
121
+ :'storage_affinity' => :'storageAffinity',
122
+ :'storage_pool' => :'storagePool',
115
123
  :'software_licenses' => :'softwareLicenses',
116
124
  :'pin_policy' => :'pinPolicy',
117
125
  :'virtual_cores' => :'virtualCores',
@@ -119,6 +127,11 @@ module IbmCloudPower
119
127
  }
120
128
  end
121
129
 
130
+ # Returns all the JSON keys this model knows about
131
+ def self.acceptable_attributes
132
+ attribute_map.values
133
+ end
134
+
122
135
  # Attribute type mapping.
123
136
  def self.openapi_types
124
137
  {
@@ -130,14 +143,16 @@ module IbmCloudPower
130
143
  :'processors' => :'Float',
131
144
  :'proc_type' => :'String',
132
145
  :'memory' => :'Float',
133
- :'network_i_ds' => :'Array<String>',
146
+ :'network_ids' => :'Array<String>',
134
147
  :'networks' => :'Array<PVMInstanceAddNetwork>',
135
- :'volume_i_ds' => :'Array<String>',
148
+ :'volume_ids' => :'Array<String>',
136
149
  :'key_pair_name' => :'String',
137
150
  :'sys_type' => :'String',
138
151
  :'migratable' => :'Boolean',
139
152
  :'user_data' => :'String',
140
153
  :'storage_type' => :'String',
154
+ :'storage_affinity' => :'StorageAffinity',
155
+ :'storage_pool' => :'String',
141
156
  :'software_licenses' => :'SoftwareLicenses',
142
157
  :'pin_policy' => :'PinPolicy',
143
158
  :'virtual_cores' => :'VirtualCores',
@@ -204,9 +219,9 @@ module IbmCloudPower
204
219
  self.memory = attributes[:'memory']
205
220
  end
206
221
 
207
- if attributes.key?(:'network_i_ds')
208
- if (value = attributes[:'network_i_ds']).is_a?(Array)
209
- self.network_i_ds = value
222
+ if attributes.key?(:'network_ids')
223
+ if (value = attributes[:'network_ids']).is_a?(Array)
224
+ self.network_ids = value
210
225
  end
211
226
  end
212
227
 
@@ -216,9 +231,9 @@ module IbmCloudPower
216
231
  end
217
232
  end
218
233
 
219
- if attributes.key?(:'volume_i_ds')
220
- if (value = attributes[:'volume_i_ds']).is_a?(Array)
221
- self.volume_i_ds = value
234
+ if attributes.key?(:'volume_ids')
235
+ if (value = attributes[:'volume_ids']).is_a?(Array)
236
+ self.volume_ids = value
222
237
  end
223
238
  end
224
239
 
@@ -244,6 +259,14 @@ module IbmCloudPower
244
259
  self.storage_type = attributes[:'storage_type']
245
260
  end
246
261
 
262
+ if attributes.key?(:'storage_affinity')
263
+ self.storage_affinity = attributes[:'storage_affinity']
264
+ end
265
+
266
+ if attributes.key?(:'storage_pool')
267
+ self.storage_pool = attributes[:'storage_pool']
268
+ end
269
+
247
270
  if attributes.key?(:'software_licenses')
248
271
  self.software_licenses = attributes[:'software_licenses']
249
272
  end
@@ -348,14 +371,16 @@ module IbmCloudPower
348
371
  processors == o.processors &&
349
372
  proc_type == o.proc_type &&
350
373
  memory == o.memory &&
351
- network_i_ds == o.network_i_ds &&
374
+ network_ids == o.network_ids &&
352
375
  networks == o.networks &&
353
- volume_i_ds == o.volume_i_ds &&
376
+ volume_ids == o.volume_ids &&
354
377
  key_pair_name == o.key_pair_name &&
355
378
  sys_type == o.sys_type &&
356
379
  migratable == o.migratable &&
357
380
  user_data == o.user_data &&
358
381
  storage_type == o.storage_type &&
382
+ storage_affinity == o.storage_affinity &&
383
+ storage_pool == o.storage_pool &&
359
384
  software_licenses == o.software_licenses &&
360
385
  pin_policy == o.pin_policy &&
361
386
  virtual_cores == o.virtual_cores &&
@@ -371,7 +396,7 @@ module IbmCloudPower
371
396
  # Calculates hash code according to all attributes.
372
397
  # @return [Integer] Hash code
373
398
  def hash
374
- [server_name, replicants, replicant_naming_scheme, replicant_affinity_policy, image_id, processors, proc_type, memory, network_i_ds, networks, volume_i_ds, key_pair_name, sys_type, migratable, user_data, storage_type, software_licenses, pin_policy, virtual_cores, placement_group].hash
399
+ [server_name, replicants, replicant_naming_scheme, replicant_affinity_policy, image_id, processors, proc_type, memory, network_ids, networks, volume_ids, key_pair_name, sys_type, migratable, user_data, storage_type, storage_affinity, storage_pool, software_licenses, pin_policy, virtual_cores, placement_group].hash
375
400
  end
376
401
 
377
402
  # Builds the object from hash
@@ -386,8 +411,11 @@ module IbmCloudPower
386
411
  # @return [Object] Returns the model itself
387
412
  def build_from_hash(attributes)
388
413
  return nil unless attributes.is_a?(Hash)
414
+ attributes = attributes.transform_keys(&:to_sym)
389
415
  self.class.openapi_types.each_pair do |key, type|
390
- if type =~ /\AArray<(.*)>/i
416
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
417
+ self.send("#{key}=", nil)
418
+ elsif type =~ /\AArray<(.*)>/i
391
419
  # check to ensure the input is an array given that the attribute
392
420
  # is documented as an array but the input is not
393
421
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -395,8 +423,6 @@ module IbmCloudPower
395
423
  end
396
424
  elsif !attributes[self.class.attribute_map[key]].nil?
397
425
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
398
- elsif attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
399
- self.send("#{key}=", nil)
400
426
  end
401
427
  end
402
428
 
@@ -409,8 +435,8 @@ module IbmCloudPower
409
435
  # @return [Object] Deserialized data
410
436
  def _deserialize(type, value)
411
437
  case type.to_sym
412
- when :DateTime
413
- DateTime.parse(value)
438
+ when :Time
439
+ Time.parse(value)
414
440
  when :Date
415
441
  Date.parse(value)
416
442
  when :String
@@ -440,7 +466,9 @@ module IbmCloudPower
440
466
  end
441
467
  end
442
468
  else # model
443
- IbmCloudPower.const_get(type).build_from_hash(value)
469
+ # models (e.g. Pet) or oneOf
470
+ klass = IbmCloudPower.const_get(type)
471
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
444
472
  end
445
473
  end
446
474
 
@@ -466,7 +494,7 @@ module IbmCloudPower
466
494
  is_nullable = self.class.openapi_nullable.include?(attr)
467
495
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
468
496
  end
469
-
497
+
470
498
  hash[param] = _to_hash(value)
471
499
  end
472
500
  hash
@@ -489,5 +517,7 @@ module IbmCloudPower
489
517
  value
490
518
  end
491
519
  end
520
+
492
521
  end
522
+
493
523
  end
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: kylej@us.ibm.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.0.0-beta2
9
+ OpenAPI Generator version: 6.0.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module IbmCloudPower
16
17
  # Fault information (if occurred)
@@ -37,13 +38,18 @@ module IbmCloudPower
37
38
  }
38
39
  end
39
40
 
41
+ # Returns all the JSON keys this model knows about
42
+ def self.acceptable_attributes
43
+ attribute_map.values
44
+ end
45
+
40
46
  # Attribute type mapping.
41
47
  def self.openapi_types
42
48
  {
43
49
  :'code' => :'Float',
44
50
  :'details' => :'String',
45
51
  :'message' => :'String',
46
- :'created' => :'DateTime'
52
+ :'created' => :'Time'
47
53
  }
48
54
  end
49
55
 
@@ -133,8 +139,11 @@ module IbmCloudPower
133
139
  # @return [Object] Returns the model itself
134
140
  def build_from_hash(attributes)
135
141
  return nil unless attributes.is_a?(Hash)
142
+ attributes = attributes.transform_keys(&:to_sym)
136
143
  self.class.openapi_types.each_pair do |key, type|
137
- if type =~ /\AArray<(.*)>/i
144
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
145
+ self.send("#{key}=", nil)
146
+ elsif type =~ /\AArray<(.*)>/i
138
147
  # check to ensure the input is an array given that the attribute
139
148
  # is documented as an array but the input is not
140
149
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -142,8 +151,6 @@ module IbmCloudPower
142
151
  end
143
152
  elsif !attributes[self.class.attribute_map[key]].nil?
144
153
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
145
- elsif attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
146
- self.send("#{key}=", nil)
147
154
  end
148
155
  end
149
156
 
@@ -156,8 +163,8 @@ module IbmCloudPower
156
163
  # @return [Object] Deserialized data
157
164
  def _deserialize(type, value)
158
165
  case type.to_sym
159
- when :DateTime
160
- DateTime.parse(value)
166
+ when :Time
167
+ Time.parse(value)
161
168
  when :Date
162
169
  Date.parse(value)
163
170
  when :String
@@ -187,7 +194,9 @@ module IbmCloudPower
187
194
  end
188
195
  end
189
196
  else # model
190
- IbmCloudPower.const_get(type).build_from_hash(value)
197
+ # models (e.g. Pet) or oneOf
198
+ klass = IbmCloudPower.const_get(type)
199
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
191
200
  end
192
201
  end
193
202
 
@@ -213,7 +222,7 @@ module IbmCloudPower
213
222
  is_nullable = self.class.openapi_nullable.include?(attr)
214
223
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
215
224
  end
216
-
225
+
217
226
  hash[param] = _to_hash(value)
218
227
  end
219
228
  hash
@@ -236,5 +245,7 @@ module IbmCloudPower
236
245
  value
237
246
  end
238
247
  end
248
+
239
249
  end
250
+
240
251
  end
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: kylej@us.ibm.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.0.0-beta2
9
+ OpenAPI Generator version: 6.0.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module IbmCloudPower
16
17
  # PVM's health status details
@@ -33,6 +34,11 @@ module IbmCloudPower
33
34
  }
34
35
  end
35
36
 
37
+ # Returns all the JSON keys this model knows about
38
+ def self.acceptable_attributes
39
+ attribute_map.values
40
+ end
41
+
36
42
  # Attribute type mapping.
37
43
  def self.openapi_types
38
44
  {
@@ -123,8 +129,11 @@ module IbmCloudPower
123
129
  # @return [Object] Returns the model itself
124
130
  def build_from_hash(attributes)
125
131
  return nil unless attributes.is_a?(Hash)
132
+ attributes = attributes.transform_keys(&:to_sym)
126
133
  self.class.openapi_types.each_pair do |key, type|
127
- if type =~ /\AArray<(.*)>/i
134
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
135
+ self.send("#{key}=", nil)
136
+ elsif type =~ /\AArray<(.*)>/i
128
137
  # check to ensure the input is an array given that the attribute
129
138
  # is documented as an array but the input is not
130
139
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -132,8 +141,6 @@ module IbmCloudPower
132
141
  end
133
142
  elsif !attributes[self.class.attribute_map[key]].nil?
134
143
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
135
- elsif attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
136
- self.send("#{key}=", nil)
137
144
  end
138
145
  end
139
146
 
@@ -146,8 +153,8 @@ module IbmCloudPower
146
153
  # @return [Object] Deserialized data
147
154
  def _deserialize(type, value)
148
155
  case type.to_sym
149
- when :DateTime
150
- DateTime.parse(value)
156
+ when :Time
157
+ Time.parse(value)
151
158
  when :Date
152
159
  Date.parse(value)
153
160
  when :String
@@ -177,7 +184,9 @@ module IbmCloudPower
177
184
  end
178
185
  end
179
186
  else # model
180
- IbmCloudPower.const_get(type).build_from_hash(value)
187
+ # models (e.g. Pet) or oneOf
188
+ klass = IbmCloudPower.const_get(type)
189
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
181
190
  end
182
191
  end
183
192
 
@@ -203,7 +212,7 @@ module IbmCloudPower
203
212
  is_nullable = self.class.openapi_nullable.include?(attr)
204
213
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
205
214
  end
206
-
215
+
207
216
  hash[param] = _to_hash(value)
208
217
  end
209
218
  hash
@@ -226,5 +235,7 @@ module IbmCloudPower
226
235
  value
227
236
  end
228
237
  end
238
+
229
239
  end
240
+
230
241
  end
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: kylej@us.ibm.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.0.0-beta2
9
+ OpenAPI Generator version: 6.0.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module IbmCloudPower
16
17
  class PVMInstanceMultiCreate
@@ -54,6 +55,11 @@ module IbmCloudPower
54
55
  }
55
56
  end
56
57
 
58
+ # Returns all the JSON keys this model knows about
59
+ def self.acceptable_attributes
60
+ attribute_map.values
61
+ end
62
+
57
63
  # Attribute type mapping.
58
64
  def self.openapi_types
59
65
  {
@@ -172,8 +178,11 @@ module IbmCloudPower
172
178
  # @return [Object] Returns the model itself
173
179
  def build_from_hash(attributes)
174
180
  return nil unless attributes.is_a?(Hash)
181
+ attributes = attributes.transform_keys(&:to_sym)
175
182
  self.class.openapi_types.each_pair do |key, type|
176
- if type =~ /\AArray<(.*)>/i
183
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
184
+ self.send("#{key}=", nil)
185
+ elsif type =~ /\AArray<(.*)>/i
177
186
  # check to ensure the input is an array given that the attribute
178
187
  # is documented as an array but the input is not
179
188
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -181,8 +190,6 @@ module IbmCloudPower
181
190
  end
182
191
  elsif !attributes[self.class.attribute_map[key]].nil?
183
192
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
184
- elsif attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
185
- self.send("#{key}=", nil)
186
193
  end
187
194
  end
188
195
 
@@ -195,8 +202,8 @@ module IbmCloudPower
195
202
  # @return [Object] Deserialized data
196
203
  def _deserialize(type, value)
197
204
  case type.to_sym
198
- when :DateTime
199
- DateTime.parse(value)
205
+ when :Time
206
+ Time.parse(value)
200
207
  when :Date
201
208
  Date.parse(value)
202
209
  when :String
@@ -226,7 +233,9 @@ module IbmCloudPower
226
233
  end
227
234
  end
228
235
  else # model
229
- IbmCloudPower.const_get(type).build_from_hash(value)
236
+ # models (e.g. Pet) or oneOf
237
+ klass = IbmCloudPower.const_get(type)
238
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
230
239
  end
231
240
  end
232
241
 
@@ -252,7 +261,7 @@ module IbmCloudPower
252
261
  is_nullable = self.class.openapi_nullable.include?(attr)
253
262
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
254
263
  end
255
-
264
+
256
265
  hash[param] = _to_hash(value)
257
266
  end
258
267
  hash
@@ -275,5 +284,7 @@ module IbmCloudPower
275
284
  value
276
285
  end
277
286
  end
287
+
278
288
  end
289
+
279
290
  end
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: kylej@us.ibm.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.0.0-beta2
9
+ OpenAPI Generator version: 6.0.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module IbmCloudPower
16
17
  # A map containing information about a network address
@@ -57,6 +58,11 @@ module IbmCloudPower
57
58
  }
58
59
  end
59
60
 
61
+ # Returns all the JSON keys this model knows about
62
+ def self.acceptable_attributes
63
+ attribute_map.values
64
+ end
65
+
60
66
  # Attribute type mapping.
61
67
  def self.openapi_types
62
68
  {
@@ -183,8 +189,11 @@ module IbmCloudPower
183
189
  # @return [Object] Returns the model itself
184
190
  def build_from_hash(attributes)
185
191
  return nil unless attributes.is_a?(Hash)
192
+ attributes = attributes.transform_keys(&:to_sym)
186
193
  self.class.openapi_types.each_pair do |key, type|
187
- if type =~ /\AArray<(.*)>/i
194
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
195
+ self.send("#{key}=", nil)
196
+ elsif type =~ /\AArray<(.*)>/i
188
197
  # check to ensure the input is an array given that the attribute
189
198
  # is documented as an array but the input is not
190
199
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -192,8 +201,6 @@ module IbmCloudPower
192
201
  end
193
202
  elsif !attributes[self.class.attribute_map[key]].nil?
194
203
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
195
- elsif attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
196
- self.send("#{key}=", nil)
197
204
  end
198
205
  end
199
206
 
@@ -206,8 +213,8 @@ module IbmCloudPower
206
213
  # @return [Object] Deserialized data
207
214
  def _deserialize(type, value)
208
215
  case type.to_sym
209
- when :DateTime
210
- DateTime.parse(value)
216
+ when :Time
217
+ Time.parse(value)
211
218
  when :Date
212
219
  Date.parse(value)
213
220
  when :String
@@ -237,7 +244,9 @@ module IbmCloudPower
237
244
  end
238
245
  end
239
246
  else # model
240
- IbmCloudPower.const_get(type).build_from_hash(value)
247
+ # models (e.g. Pet) or oneOf
248
+ klass = IbmCloudPower.const_get(type)
249
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
241
250
  end
242
251
  end
243
252
 
@@ -263,7 +272,7 @@ module IbmCloudPower
263
272
  is_nullable = self.class.openapi_nullable.include?(attr)
264
273
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
265
274
  end
266
-
275
+
267
276
  hash[param] = _to_hash(value)
268
277
  end
269
278
  hash
@@ -286,5 +295,7 @@ module IbmCloudPower
286
295
  value
287
296
  end
288
297
  end
298
+
289
299
  end
300
+
290
301
  end
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: kylej@us.ibm.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.0.0-beta2
9
+ OpenAPI Generator version: 6.0.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module IbmCloudPower
16
17
  class PVMInstanceNetworks
@@ -24,6 +25,11 @@ module IbmCloudPower
24
25
  }
25
26
  end
26
27
 
28
+ # Returns all the JSON keys this model knows about
29
+ def self.acceptable_attributes
30
+ attribute_map.values
31
+ end
32
+
27
33
  # Attribute type mapping.
28
34
  def self.openapi_types
29
35
  {
@@ -109,8 +115,11 @@ module IbmCloudPower
109
115
  # @return [Object] Returns the model itself
110
116
  def build_from_hash(attributes)
111
117
  return nil unless attributes.is_a?(Hash)
118
+ attributes = attributes.transform_keys(&:to_sym)
112
119
  self.class.openapi_types.each_pair do |key, type|
113
- if type =~ /\AArray<(.*)>/i
120
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
121
+ self.send("#{key}=", nil)
122
+ elsif type =~ /\AArray<(.*)>/i
114
123
  # check to ensure the input is an array given that the attribute
115
124
  # is documented as an array but the input is not
116
125
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -118,8 +127,6 @@ module IbmCloudPower
118
127
  end
119
128
  elsif !attributes[self.class.attribute_map[key]].nil?
120
129
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
121
- elsif attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
122
- self.send("#{key}=", nil)
123
130
  end
124
131
  end
125
132
 
@@ -132,8 +139,8 @@ module IbmCloudPower
132
139
  # @return [Object] Deserialized data
133
140
  def _deserialize(type, value)
134
141
  case type.to_sym
135
- when :DateTime
136
- DateTime.parse(value)
142
+ when :Time
143
+ Time.parse(value)
137
144
  when :Date
138
145
  Date.parse(value)
139
146
  when :String
@@ -163,7 +170,9 @@ module IbmCloudPower
163
170
  end
164
171
  end
165
172
  else # model
166
- IbmCloudPower.const_get(type).build_from_hash(value)
173
+ # models (e.g. Pet) or oneOf
174
+ klass = IbmCloudPower.const_get(type)
175
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
167
176
  end
168
177
  end
169
178
 
@@ -189,7 +198,7 @@ module IbmCloudPower
189
198
  is_nullable = self.class.openapi_nullable.include?(attr)
190
199
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
191
200
  end
192
-
201
+
193
202
  hash[param] = _to_hash(value)
194
203
  end
195
204
  hash
@@ -212,5 +221,7 @@ module IbmCloudPower
212
221
  value
213
222
  end
214
223
  end
224
+
215
225
  end
226
+
216
227
  end