ibm_cloud_power 1.1.1 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (547) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +70 -0
  3. data/README.md +207 -68
  4. data/docs/AuxiliaryVolumeForOnboarding.md +20 -0
  5. data/docs/AuxiliaryVolumesForOnboarding.md +20 -0
  6. data/docs/CloneTaskReference.md +10 -9
  7. data/docs/CloneTaskStatus.md +14 -13
  8. data/docs/ClonedVolume.md +10 -9
  9. data/docs/ClonedVolumeDetail.md +10 -9
  10. data/docs/CloudConnection.md +34 -31
  11. data/docs/CloudConnectionCreate.md +22 -13
  12. data/docs/CloudConnectionCreateResponse.md +46 -0
  13. data/docs/CloudConnectionEndpointClassic.md +10 -9
  14. data/docs/CloudConnectionEndpointClassicUpdate.md +20 -0
  15. data/docs/CloudConnectionEndpointGRE.md +10 -9
  16. data/docs/CloudConnectionEndpointVPC.md +10 -9
  17. data/docs/CloudConnectionGRETunnel.md +10 -11
  18. data/docs/CloudConnectionGRETunnelCreate.md +20 -0
  19. data/docs/CloudConnectionSpeed.md +4 -5
  20. data/docs/CloudConnectionUpdate.md +18 -17
  21. data/docs/CloudConnectionVPC.md +10 -9
  22. data/docs/CloudConnectionVirtualPrivateClouds.md +8 -7
  23. data/docs/CloudConnectionVirtualPrivateCloudsVirtualPrivateCloudsInner.md +24 -0
  24. data/docs/CloudConnections.md +8 -7
  25. data/docs/CloudInstance.md +28 -27
  26. data/docs/CloudInstanceCreate.md +20 -19
  27. data/docs/CloudInstanceReference.md +22 -21
  28. data/docs/CloudInstanceUpdate.md +16 -15
  29. data/docs/CloudInstanceUsageLimits.md +28 -27
  30. data/docs/ConsoleLanguage.md +20 -0
  31. data/docs/ConsoleLanguages.md +18 -0
  32. data/docs/CreateCosImageImportJob.md +38 -0
  33. data/docs/CreateDataVolume.md +28 -19
  34. data/docs/CreateImage.md +32 -27
  35. data/docs/DeadPeerDetection.md +22 -0
  36. data/docs/DisasterRecoveryLocation.md +20 -0
  37. data/docs/DisasterRecoveryLocations.md +18 -0
  38. data/docs/Error.md +10 -9
  39. data/docs/Event.md +24 -23
  40. data/docs/EventUser.md +12 -11
  41. data/docs/Events.md +8 -7
  42. data/docs/ExportImage.md +14 -13
  43. data/docs/FlashCopyMapping.md +30 -0
  44. data/docs/IKEPolicies.md +18 -0
  45. data/docs/IKEPolicy.md +30 -0
  46. data/docs/IKEPolicyAuthentication.md +15 -0
  47. data/docs/IKEPolicyCreate.md +30 -0
  48. data/docs/IKEPolicyOptions.md +24 -0
  49. data/docs/IKEPolicyRef.md +20 -0
  50. data/docs/IKEPolicyTemplate.md +26 -0
  51. data/docs/IKEPolicyUpdate.md +30 -0
  52. data/docs/IPAddressRange.md +10 -9
  53. data/docs/IPSECPolicyAuthentication.md +15 -0
  54. data/docs/IPSecPolicies.md +18 -0
  55. data/docs/IPSecPolicy.md +30 -0
  56. data/docs/IPSecPolicyCreate.md +28 -0
  57. data/docs/IPSecPolicyOptions.md +22 -0
  58. data/docs/IPSecPolicyRef.md +20 -0
  59. data/docs/IPSecPolicyTemplate.md +24 -0
  60. data/docs/IPSecPolicyUpdate.md +28 -0
  61. data/docs/Image.md +32 -31
  62. data/docs/ImageReference.md +26 -25
  63. data/docs/ImageSpecifications.md +20 -19
  64. data/docs/ImageVolume.md +14 -13
  65. data/docs/Images.md +8 -7
  66. data/docs/Job.md +24 -0
  67. data/docs/JobReference.md +20 -0
  68. data/docs/Jobs.md +18 -0
  69. data/docs/MaximumStorageAllocation.md +12 -11
  70. data/docs/MinMaxDefault.md +12 -11
  71. data/docs/MultiVolumesCreate.md +30 -21
  72. data/docs/Network.md +32 -27
  73. data/docs/NetworkCloudConnectionsInner.md +20 -0
  74. data/docs/NetworkCreate.md +20 -19
  75. data/docs/NetworkID.md +18 -0
  76. data/docs/NetworkIDs.md +18 -0
  77. data/docs/NetworkIpAddressMetrics.md +14 -13
  78. data/docs/NetworkPort.md +22 -21
  79. data/docs/NetworkPortCreate.md +10 -9
  80. data/docs/NetworkPortPvmInstance.md +10 -9
  81. data/docs/NetworkPortUpdate.md +10 -9
  82. data/docs/NetworkPorts.md +8 -7
  83. data/docs/NetworkReference.md +20 -17
  84. data/docs/NetworkUpdate.md +14 -13
  85. data/docs/Networks.md +8 -7
  86. data/docs/Operation.md +22 -0
  87. data/docs/Operations.md +12 -11
  88. data/docs/Options.md +18 -0
  89. data/docs/PCloudCloudConnectionsApi.md +245 -110
  90. data/docs/PCloudDisasterRecoveryApi.md +130 -0
  91. data/docs/PCloudEventsApi.md +66 -31
  92. data/docs/PCloudImagesApi.md +525 -109
  93. data/docs/PCloudInstancesApi.md +22 -100
  94. data/docs/PCloudJobsApi.md +208 -0
  95. data/docs/PCloudNetworksApi.md +292 -123
  96. data/docs/PCloudPVMInstancesApi.md +774 -226
  97. data/docs/PCloudPlacementGroupsApi.md +183 -82
  98. data/docs/PCloudSAPApi.md +86 -36
  99. data/docs/PCloudSPPPlacementGroupsApi.md +399 -0
  100. data/docs/PCloudSharedProcessorPoolsApi.md +332 -0
  101. data/docs/PCloudSnapshotsApi.md +113 -46
  102. data/docs/PCloudStorageCapacityApi.md +112 -45
  103. data/docs/PCloudSystemPoolsApi.md +30 -14
  104. data/docs/PCloudTasksApi.md +58 -25
  105. data/docs/PCloudTenantsApi.md +58 -25
  106. data/docs/PCloudTenantsSSHKeysApi.md +147 -63
  107. data/docs/PCloudVPNConnectionsApi.md +752 -0
  108. data/docs/PCloudVPNPoliciesApi.md +677 -0
  109. data/docs/PCloudVolumeGroupsApi.md +657 -0
  110. data/docs/PCloudVolumeOnboardingApi.md +200 -0
  111. data/docs/PCloudVolumesApi.md +915 -276
  112. data/docs/PVMInstance.md +86 -69
  113. data/docs/PVMInstanceAction.md +8 -7
  114. data/docs/PVMInstanceAddNetwork.md +10 -9
  115. data/docs/PVMInstanceCapture.md +20 -19
  116. data/docs/PVMInstanceClone.md +22 -21
  117. data/docs/PVMInstanceConsole.md +8 -7
  118. data/docs/PVMInstanceCreate.md +58 -45
  119. data/docs/PVMInstanceFault.md +14 -13
  120. data/docs/PVMInstanceHealth.md +12 -11
  121. data/docs/PVMInstanceMultiCreate.md +12 -11
  122. data/docs/PVMInstanceNetwork.md +24 -23
  123. data/docs/PVMInstanceNetworks.md +8 -7
  124. data/docs/PVMInstanceOperation.md +10 -9
  125. data/docs/PVMInstanceReference.md +80 -61
  126. data/docs/PVMInstanceRemoveNetwork.md +8 -7
  127. data/docs/PVMInstanceUpdate.md +28 -23
  128. data/docs/PVMInstanceUpdateResponse.md +20 -17
  129. data/docs/PVMInstanceVolumeUpdate.md +8 -7
  130. data/docs/PVMInstances.md +8 -7
  131. data/docs/PeerSubnetUpdate.md +18 -0
  132. data/docs/PeerSubnets.md +18 -0
  133. data/docs/PeeringNetwork.md +12 -11
  134. data/docs/PinPolicy.md +4 -5
  135. data/docs/PlacementGroup.md +14 -13
  136. data/docs/PlacementGroupCreate.md +10 -9
  137. data/docs/PlacementGroupServer.md +8 -7
  138. data/docs/PlacementGroups.md +8 -7
  139. data/docs/RemoteCopyRelationship.md +44 -0
  140. data/docs/SAPCreate.md +36 -23
  141. data/docs/SAPProfile.md +16 -15
  142. data/docs/SAPProfileReference.md +10 -9
  143. data/docs/SAPProfiles.md +8 -7
  144. data/docs/SPPPlacementGroup.md +24 -0
  145. data/docs/SPPPlacementGroupCreate.md +20 -0
  146. data/docs/SPPPlacementGroups.md +18 -0
  147. data/docs/SRC.md +10 -9
  148. data/docs/SSHKey.md +12 -11
  149. data/docs/SSHKeys.md +8 -7
  150. data/docs/SharedProcessorPool.md +36 -0
  151. data/docs/SharedProcessorPoolCreate.md +24 -0
  152. data/docs/SharedProcessorPoolDetail.md +20 -0
  153. data/docs/SharedProcessorPoolPlacementGroup.md +22 -0
  154. data/docs/SharedProcessorPoolServer.md +32 -0
  155. data/docs/SharedProcessorPoolUpdate.md +20 -0
  156. data/docs/SharedProcessorPools.md +18 -0
  157. data/docs/Site.md +20 -0
  158. data/docs/Snapshot.md +26 -25
  159. data/docs/SnapshotCreate.md +12 -11
  160. data/docs/SnapshotCreateResponse.md +8 -7
  161. data/docs/SnapshotRestore.md +8 -7
  162. data/docs/SnapshotUpdate.md +10 -9
  163. data/docs/Snapshots.md +8 -7
  164. data/docs/SoftwareLicenses.md +16 -15
  165. data/docs/Status.md +22 -0
  166. data/docs/StatusDescription.md +18 -0
  167. data/docs/StatusDescriptionError.md +22 -0
  168. data/docs/StockImage.md +12 -11
  169. data/docs/StorageAffinity.md +26 -0
  170. data/docs/StoragePoolCapacity.md +14 -13
  171. data/docs/StoragePoolsCapacity.md +10 -9
  172. data/docs/StorageTypeCapacity.md +12 -11
  173. data/docs/StorageTypesCapacity.md +10 -9
  174. data/docs/System.md +12 -11
  175. data/docs/SystemPool.md +22 -21
  176. data/docs/Task.md +24 -23
  177. data/docs/TaskReference.md +10 -9
  178. data/docs/Tenant.md +20 -19
  179. data/docs/TenantUpdate.md +10 -9
  180. data/docs/UpdateVolume.md +14 -13
  181. data/docs/VPNConnection.md +40 -0
  182. data/docs/VPNConnectionCreate.md +30 -0
  183. data/docs/VPNConnectionCreateResponse.md +42 -0
  184. data/docs/VPNConnectionUpdate.md +24 -0
  185. data/docs/VPNConnections.md +18 -0
  186. data/docs/VPNaaSOptions.md +26 -0
  187. data/docs/VirtualCores.md +12 -11
  188. data/docs/Volume.md +58 -33
  189. data/docs/VolumeAction.md +18 -0
  190. data/docs/VolumeGroup.md +28 -0
  191. data/docs/VolumeGroupAction.md +22 -0
  192. data/docs/VolumeGroupActionReset.md +18 -0
  193. data/docs/VolumeGroupActionStart.md +18 -0
  194. data/docs/VolumeGroupActionStop.md +18 -0
  195. data/docs/VolumeGroupCreate.md +22 -0
  196. data/docs/VolumeGroupCreateResponse.md +24 -0
  197. data/docs/VolumeGroupDetails.md +30 -0
  198. data/docs/VolumeGroupRemoteCopyRelationships.md +20 -0
  199. data/docs/VolumeGroupStorageDetails.md +34 -0
  200. data/docs/VolumeGroupUpdate.md +20 -0
  201. data/docs/VolumeGroups.md +18 -0
  202. data/docs/VolumeGroupsDetails.md +18 -0
  203. data/docs/VolumeInfo.md +10 -9
  204. data/docs/VolumeOnboarding.md +30 -0
  205. data/docs/VolumeOnboardingCommon.md +24 -0
  206. data/docs/VolumeOnboardingCreate.md +20 -0
  207. data/docs/VolumeOnboardingCreateResponse.md +20 -0
  208. data/docs/VolumeOnboardingFailure.md +20 -0
  209. data/docs/VolumeOnboardings.md +18 -0
  210. data/docs/VolumeReference.md +60 -35
  211. data/docs/VolumeRemoteCopyRelationship.md +48 -0
  212. data/docs/Volumes.md +8 -7
  213. data/docs/VolumesAttach.md +18 -0
  214. data/docs/VolumesAttachmentResponse.md +18 -0
  215. data/docs/VolumesClone.md +22 -21
  216. data/docs/VolumesCloneAsyncRequest.md +10 -9
  217. data/docs/VolumesCloneCancel.md +8 -7
  218. data/docs/VolumesCloneCreate.md +10 -9
  219. data/docs/VolumesCloneDetail.md +24 -23
  220. data/docs/VolumesCloneExecute.md +10 -9
  221. data/docs/VolumesCloneRequest.md +10 -9
  222. data/docs/VolumesCloneResponse.md +10 -7
  223. data/docs/VolumesClones.md +8 -7
  224. data/git_push.sh +3 -4
  225. data/ibm_cloud_power.gemspec +3 -3
  226. data/lib/ibm_cloud_power/api/p_cloud_cloud_connections_api.rb +77 -63
  227. data/lib/ibm_cloud_power/api/p_cloud_disaster_recovery_api.rb +138 -0
  228. data/lib/ibm_cloud_power/api/p_cloud_events_api.rb +21 -19
  229. data/lib/ibm_cloud_power/api/p_cloud_images_api.rb +343 -44
  230. data/lib/ibm_cloud_power/api/p_cloud_instances_api.rb +7 -134
  231. data/lib/ibm_cloud_power/api/p_cloud_jobs_api.rb +234 -0
  232. data/lib/ibm_cloud_power/api/p_cloud_networks_api.rb +67 -45
  233. data/lib/ibm_cloud_power/api/p_cloud_placement_groups_api.rb +61 -46
  234. data/lib/ibm_cloud_power/api/p_cloud_pvm_instances_api.rb +431 -98
  235. data/lib/ibm_cloud_power/api/p_cloud_sap_api.rb +17 -11
  236. data/lib/ibm_cloud_power/api/p_cloud_shared_processor_pools_api.rb +367 -0
  237. data/lib/ibm_cloud_power/api/p_cloud_snapshots_api.rb +23 -16
  238. data/lib/ibm_cloud_power/api/p_cloud_spp_placement_groups_api.rb +435 -0
  239. data/lib/ibm_cloud_power/api/p_cloud_storage_capacity_api.rb +17 -13
  240. data/lib/ibm_cloud_power/api/p_cloud_system_pools_api.rb +7 -6
  241. data/lib/ibm_cloud_power/api/p_cloud_tasks_api.rb +14 -12
  242. data/lib/ibm_cloud_power/api/p_cloud_tenants_api.rb +15 -10
  243. data/lib/ibm_cloud_power/api/p_cloud_tenants_ssh_keys_api.rb +37 -26
  244. data/lib/ibm_cloud_power/api/p_cloud_volume_groups_api.rb +707 -0
  245. data/lib/ibm_cloud_power/api/p_cloud_volume_onboarding_api.rb +222 -0
  246. data/lib/ibm_cloud_power/api/p_cloud_volumes_api.rb +458 -115
  247. data/lib/ibm_cloud_power/api/p_cloud_vpn_connections_api.rb +835 -0
  248. data/lib/ibm_cloud_power/api/p_cloud_vpn_policies_api.rb +732 -0
  249. data/lib/ibm_cloud_power/api_client.rb +56 -52
  250. data/lib/ibm_cloud_power/api_error.rb +1 -1
  251. data/lib/ibm_cloud_power/configuration.rb +43 -12
  252. data/lib/ibm_cloud_power/models/auxiliary_volume_for_onboarding.rb +235 -0
  253. data/lib/ibm_cloud_power/models/auxiliary_volumes_for_onboarding.rb +241 -0
  254. data/lib/ibm_cloud_power/models/clone_task_reference.rb +19 -8
  255. data/lib/ibm_cloud_power/models/clone_task_status.rb +48 -37
  256. data/lib/ibm_cloud_power/models/cloned_volume.rb +33 -22
  257. data/lib/ibm_cloud_power/models/cloned_volume_detail.rb +37 -26
  258. data/lib/ibm_cloud_power/models/cloud_connection.rb +114 -93
  259. data/lib/ibm_cloud_power/models/cloud_connection_create.rb +108 -23
  260. data/lib/ibm_cloud_power/models/cloud_connection_create_response.rb +416 -0
  261. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_classic.rb +20 -9
  262. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_classic_update.rb +229 -0
  263. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_gre.rb +19 -8
  264. data/lib/ibm_cloud_power/models/cloud_connection_endpoint_vpc.rb +19 -8
  265. data/lib/ibm_cloud_power/models/cloud_connection_gre_tunnel.rb +30 -29
  266. data/lib/ibm_cloud_power/models/cloud_connection_gre_tunnel_create.rb +240 -0
  267. data/lib/ibm_cloud_power/models/cloud_connection_speed.rb +2 -1
  268. data/lib/ibm_cloud_power/models/cloud_connection_update.rb +77 -32
  269. data/lib/ibm_cloud_power/models/cloud_connection_virtual_private_clouds.rb +20 -9
  270. data/lib/ibm_cloud_power/models/cloud_connection_virtual_private_clouds_virtual_private_clouds_inner.rb +270 -0
  271. data/lib/ibm_cloud_power/models/cloud_connection_vpc.rb +33 -22
  272. data/lib/ibm_cloud_power/models/cloud_connections.rb +19 -8
  273. data/lib/ibm_cloud_power/models/cloud_instance.rb +101 -90
  274. data/lib/ibm_cloud_power/models/cloud_instance_create.rb +19 -8
  275. data/lib/ibm_cloud_power/models/cloud_instance_reference.rb +69 -58
  276. data/lib/ibm_cloud_power/models/cloud_instance_update.rb +19 -8
  277. data/lib/ibm_cloud_power/models/cloud_instance_usage_limits.rb +60 -49
  278. data/lib/ibm_cloud_power/models/console_language.rb +235 -0
  279. data/lib/ibm_cloud_power/models/console_languages.rb +227 -0
  280. data/lib/ibm_cloud_power/models/create_cos_image_import_job.rb +387 -0
  281. data/lib/ibm_cloud_power/models/create_data_volume.rb +98 -43
  282. data/lib/ibm_cloud_power/models/create_image.rb +91 -62
  283. data/lib/ibm_cloud_power/models/dead_peer_detection.rb +350 -0
  284. data/lib/ibm_cloud_power/models/disaster_recovery_location.rb +232 -0
  285. data/lib/ibm_cloud_power/models/disaster_recovery_locations.rb +227 -0
  286. data/lib/ibm_cloud_power/models/error.rb +32 -21
  287. data/lib/ibm_cloud_power/models/event.rb +84 -73
  288. data/lib/ibm_cloud_power/models/event_user.rb +34 -23
  289. data/lib/ibm_cloud_power/models/events.rb +19 -8
  290. data/lib/ibm_cloud_power/models/export_image.rb +35 -24
  291. data/lib/ibm_cloud_power/models/flash_copy_mapping.rb +285 -0
  292. data/lib/ibm_cloud_power/models/ike_policies.rb +227 -0
  293. data/lib/ibm_cloud_power/models/ike_policy.rb +401 -0
  294. data/lib/ibm_cloud_power/models/ike_policy_authentication.rb +42 -0
  295. data/lib/ibm_cloud_power/models/ike_policy_create.rb +424 -0
  296. data/lib/ibm_cloud_power/models/ike_policy_options.rb +274 -0
  297. data/lib/ibm_cloud_power/models/ike_policy_ref.rb +241 -0
  298. data/lib/ibm_cloud_power/models/ike_policy_template.rb +313 -0
  299. data/lib/ibm_cloud_power/models/ike_policy_update.rb +386 -0
  300. data/lib/ibm_cloud_power/models/image.rb +105 -94
  301. data/lib/ibm_cloud_power/models/image_reference.rb +100 -89
  302. data/lib/ibm_cloud_power/models/image_specifications.rb +48 -37
  303. data/lib/ibm_cloud_power/models/image_volume.rb +40 -29
  304. data/lib/ibm_cloud_power/models/images.rb +19 -8
  305. data/lib/ibm_cloud_power/models/ip_address_range.rb +38 -27
  306. data/lib/ibm_cloud_power/models/ip_sec_policies.rb +227 -0
  307. data/lib/ibm_cloud_power/models/ip_sec_policy.rb +389 -0
  308. data/lib/ibm_cloud_power/models/ip_sec_policy_create.rb +397 -0
  309. data/lib/ibm_cloud_power/models/ip_sec_policy_options.rb +258 -0
  310. data/lib/ibm_cloud_power/models/ip_sec_policy_ref.rb +241 -0
  311. data/lib/ibm_cloud_power/models/ip_sec_policy_template.rb +298 -0
  312. data/lib/ibm_cloud_power/models/ip_sec_policy_update.rb +364 -0
  313. data/lib/ibm_cloud_power/models/ipsec_policy_authentication.rb +41 -0
  314. data/lib/ibm_cloud_power/models/job.rb +263 -0
  315. data/lib/ibm_cloud_power/models/job_reference.rb +240 -0
  316. data/lib/ibm_cloud_power/models/jobs.rb +227 -0
  317. data/lib/ibm_cloud_power/models/maximum_storage_allocation.rb +40 -29
  318. data/lib/ibm_cloud_power/models/min_max_default.rb +40 -29
  319. data/lib/ibm_cloud_power/models/multi_volumes_create.rb +112 -57
  320. data/lib/ibm_cloud_power/models/network.rb +127 -94
  321. data/lib/ibm_cloud_power/models/network_cloud_connections_inner.rb +230 -0
  322. data/lib/ibm_cloud_power/models/network_create.rb +55 -44
  323. data/lib/ibm_cloud_power/models/network_id.rb +225 -0
  324. data/lib/ibm_cloud_power/models/network_ids.rb +222 -0
  325. data/lib/ibm_cloud_power/models/network_ip_address_metrics.rb +35 -24
  326. data/lib/ibm_cloud_power/models/network_port.rb +70 -59
  327. data/lib/ibm_cloud_power/models/network_port_create.rb +19 -8
  328. data/lib/ibm_cloud_power/models/network_port_pvm_instance.rb +33 -22
  329. data/lib/ibm_cloud_power/models/network_port_update.rb +19 -8
  330. data/lib/ibm_cloud_power/models/network_ports.rb +19 -8
  331. data/lib/ibm_cloud_power/models/network_reference.rb +77 -56
  332. data/lib/ibm_cloud_power/models/network_update.rb +42 -31
  333. data/lib/ibm_cloud_power/models/networks.rb +19 -8
  334. data/lib/ibm_cloud_power/models/operation.rb +255 -0
  335. data/lib/ibm_cloud_power/models/operations.rb +19 -8
  336. data/lib/ibm_cloud_power/models/options.rb +224 -0
  337. data/lib/ibm_cloud_power/models/peer_subnet_update.rb +225 -0
  338. data/lib/ibm_cloud_power/models/peer_subnets.rb +222 -0
  339. data/lib/ibm_cloud_power/models/peering_network.rb +38 -27
  340. data/lib/ibm_cloud_power/models/pin_policy.rb +8 -4
  341. data/lib/ibm_cloud_power/models/placement_group.rb +40 -29
  342. data/lib/ibm_cloud_power/models/placement_group_create.rb +19 -8
  343. data/lib/ibm_cloud_power/models/placement_group_server.rb +19 -8
  344. data/lib/ibm_cloud_power/models/placement_groups.rb +19 -8
  345. data/lib/ibm_cloud_power/models/pvm_instance.rb +311 -219
  346. data/lib/ibm_cloud_power/models/pvm_instance_action.rb +19 -8
  347. data/lib/ibm_cloud_power/models/pvm_instance_add_network.rb +33 -22
  348. data/lib/ibm_cloud_power/models/pvm_instance_capture.rb +51 -40
  349. data/lib/ibm_cloud_power/models/pvm_instance_clone.rb +69 -58
  350. data/lib/ibm_cloud_power/models/pvm_instance_console.rb +20 -9
  351. data/lib/ibm_cloud_power/models/pvm_instance_create.rb +236 -154
  352. data/lib/ibm_cloud_power/models/pvm_instance_fault.rb +33 -22
  353. data/lib/ibm_cloud_power/models/pvm_instance_health.rb +33 -22
  354. data/lib/ibm_cloud_power/models/pvm_instance_multi_create.rb +30 -19
  355. data/lib/ibm_cloud_power/models/pvm_instance_network.rb +72 -61
  356. data/lib/ibm_cloud_power/models/pvm_instance_networks.rb +19 -8
  357. data/lib/ibm_cloud_power/models/pvm_instance_operation.rb +37 -26
  358. data/lib/ibm_cloud_power/models/pvm_instance_reference.rb +284 -180
  359. data/lib/ibm_cloud_power/models/pvm_instance_remove_network.rb +19 -8
  360. data/lib/ibm_cloud_power/models/pvm_instance_update.rb +79 -46
  361. data/lib/ibm_cloud_power/models/pvm_instance_update_response.rb +64 -43
  362. data/lib/ibm_cloud_power/models/pvm_instance_volume_update.rb +19 -8
  363. data/lib/ibm_cloud_power/models/pvm_instances.rb +19 -8
  364. data/lib/ibm_cloud_power/models/remote_copy_relationship.rb +360 -0
  365. data/lib/ibm_cloud_power/models/sap_create.rb +123 -53
  366. data/lib/ibm_cloud_power/models/sap_profile.rb +56 -45
  367. data/lib/ibm_cloud_power/models/sap_profile_reference.rb +38 -27
  368. data/lib/ibm_cloud_power/models/sap_profiles.rb +19 -8
  369. data/lib/ibm_cloud_power/models/shared_processor_pool.rb +337 -0
  370. data/lib/ibm_cloud_power/models/shared_processor_pool_create.rb +265 -0
  371. data/lib/ibm_cloud_power/models/shared_processor_pool_detail.rb +241 -0
  372. data/lib/ibm_cloud_power/models/shared_processor_pool_placement_group.rb +255 -0
  373. data/lib/ibm_cloud_power/models/shared_processor_pool_server.rb +290 -0
  374. data/lib/ibm_cloud_power/models/shared_processor_pool_update.rb +230 -0
  375. data/lib/ibm_cloud_power/models/shared_processor_pools.rb +222 -0
  376. data/lib/ibm_cloud_power/models/site.rb +230 -0
  377. data/lib/ibm_cloud_power/models/snapshot.rb +90 -79
  378. data/lib/ibm_cloud_power/models/snapshot_create.rb +39 -28
  379. data/lib/ibm_cloud_power/models/snapshot_create_response.rb +19 -8
  380. data/lib/ibm_cloud_power/models/snapshot_restore.rb +19 -8
  381. data/lib/ibm_cloud_power/models/snapshot_update.rb +33 -22
  382. data/lib/ibm_cloud_power/models/snapshots.rb +19 -8
  383. data/lib/ibm_cloud_power/models/software_licenses.rb +35 -24
  384. data/lib/ibm_cloud_power/models/spp_placement_group.rb +267 -0
  385. data/lib/ibm_cloud_power/models/spp_placement_group_create.rb +274 -0
  386. data/lib/ibm_cloud_power/models/spp_placement_groups.rb +222 -0
  387. data/lib/ibm_cloud_power/models/src.rb +33 -22
  388. data/lib/ibm_cloud_power/models/ssh_key.rb +33 -22
  389. data/lib/ibm_cloud_power/models/ssh_keys.rb +19 -8
  390. data/lib/ibm_cloud_power/models/status.rb +250 -0
  391. data/lib/ibm_cloud_power/models/status_description.rb +223 -0
  392. data/lib/ibm_cloud_power/models/status_description_error.rb +243 -0
  393. data/lib/ibm_cloud_power/models/stock_image.rb +34 -23
  394. data/lib/ibm_cloud_power/models/storage_affinity.rb +298 -0
  395. data/lib/ibm_cloud_power/models/storage_pool_capacity.rb +30 -19
  396. data/lib/ibm_cloud_power/models/storage_pools_capacity.rb +19 -8
  397. data/lib/ibm_cloud_power/models/storage_type_capacity.rb +33 -22
  398. data/lib/ibm_cloud_power/models/storage_types_capacity.rb +19 -8
  399. data/lib/ibm_cloud_power/models/system.rb +19 -8
  400. data/lib/ibm_cloud_power/models/system_pool.rb +51 -40
  401. data/lib/ibm_cloud_power/models/task.rb +85 -74
  402. data/lib/ibm_cloud_power/models/task_reference.rb +38 -27
  403. data/lib/ibm_cloud_power/models/tenant.rb +72 -61
  404. data/lib/ibm_cloud_power/models/tenant_update.rb +19 -8
  405. data/lib/ibm_cloud_power/models/update_volume.rb +37 -26
  406. data/lib/ibm_cloud_power/models/virtual_cores.rb +34 -23
  407. data/lib/ibm_cloud_power/models/volume.rb +263 -98
  408. data/lib/ibm_cloud_power/models/volume_action.rb +225 -0
  409. data/lib/ibm_cloud_power/models/volume_group.rb +279 -0
  410. data/lib/ibm_cloud_power/models/volume_group_action.rb +238 -0
  411. data/lib/ibm_cloud_power/models/volume_group_action_reset.rb +262 -0
  412. data/lib/ibm_cloud_power/models/volume_group_action_start.rb +262 -0
  413. data/lib/ibm_cloud_power/models/volume_group_action_stop.rb +226 -0
  414. data/lib/ibm_cloud_power/models/volume_group_create.rb +247 -0
  415. data/lib/ibm_cloud_power/models/volume_group_create_response.rb +265 -0
  416. data/lib/ibm_cloud_power/models/volume_group_details.rb +291 -0
  417. data/lib/ibm_cloud_power/models/volume_group_remote_copy_relationships.rb +232 -0
  418. data/lib/ibm_cloud_power/models/volume_group_storage_details.rb +307 -0
  419. data/lib/ibm_cloud_power/models/volume_group_update.rb +234 -0
  420. data/lib/ibm_cloud_power/models/volume_groups.rb +227 -0
  421. data/lib/ibm_cloud_power/models/volume_groups_details.rb +227 -0
  422. data/lib/ibm_cloud_power/models/volume_info.rb +33 -22
  423. data/lib/ibm_cloud_power/models/volume_onboarding.rb +296 -0
  424. data/lib/ibm_cloud_power/models/volume_onboarding_common.rb +257 -0
  425. data/lib/ibm_cloud_power/models/volume_onboarding_create.rb +236 -0
  426. data/lib/ibm_cloud_power/models/volume_onboarding_create_response.rb +230 -0
  427. data/lib/ibm_cloud_power/models/volume_onboarding_failure.rb +232 -0
  428. data/lib/ibm_cloud_power/models/volume_onboardings.rb +227 -0
  429. data/lib/ibm_cloud_power/models/volume_reference.rb +290 -125
  430. data/lib/ibm_cloud_power/models/volume_remote_copy_relationship.rb +387 -0
  431. data/lib/ibm_cloud_power/models/volumes.rb +19 -8
  432. data/lib/ibm_cloud_power/models/volumes_attach.rb +227 -0
  433. data/lib/ibm_cloud_power/models/volumes_attachment_response.rb +225 -0
  434. data/lib/ibm_cloud_power/models/volumes_clone.rb +68 -57
  435. data/lib/ibm_cloud_power/models/volumes_clone_async_request.rb +31 -20
  436. data/lib/ibm_cloud_power/models/volumes_clone_cancel.rb +19 -8
  437. data/lib/ibm_cloud_power/models/volumes_clone_create.rb +30 -19
  438. data/lib/ibm_cloud_power/models/volumes_clone_detail.rb +75 -64
  439. data/lib/ibm_cloud_power/models/volumes_clone_execute.rb +20 -9
  440. data/lib/ibm_cloud_power/models/volumes_clone_request.rb +30 -19
  441. data/lib/ibm_cloud_power/models/volumes_clone_response.rb +32 -13
  442. data/lib/ibm_cloud_power/models/volumes_clones.rb +19 -8
  443. data/lib/ibm_cloud_power/models/vp_naa_s_options.rb +280 -0
  444. data/lib/ibm_cloud_power/models/vpn_connection.rb +437 -0
  445. data/lib/ibm_cloud_power/models/vpn_connection_create.rb +353 -0
  446. data/lib/ibm_cloud_power/models/vpn_connection_create_response.rb +453 -0
  447. data/lib/ibm_cloud_power/models/vpn_connection_update.rb +251 -0
  448. data/lib/ibm_cloud_power/models/vpn_connections.rb +222 -0
  449. data/lib/ibm_cloud_power/version.rb +2 -2
  450. data/lib/ibm_cloud_power.rb +93 -6
  451. data/pkg/ibm_cloud_power-2.1.0.gem +0 -0
  452. data/spec/api/p_cloud_disaster_recovery_api_spec.rb +56 -0
  453. data/spec/api/p_cloud_jobs_api_spec.rb +73 -0
  454. data/spec/api/p_cloud_shared_processor_pools_api_spec.rb +95 -0
  455. data/spec/api/p_cloud_spp_placement_groups_api_spec.rb +108 -0
  456. data/spec/api/p_cloud_volume_groups_api_spec.rb +155 -0
  457. data/spec/api/p_cloud_volume_onboarding_api_spec.rb +70 -0
  458. data/spec/api/p_cloud_vpn_connections_api_spec.rb +194 -0
  459. data/spec/api/p_cloud_vpn_policies_api_spec.rb +165 -0
  460. data/spec/api_client_spec.rb +3 -3
  461. data/spec/configuration_spec.rb +1 -1
  462. data/spec/models/auxiliary_volume_for_onboarding_spec.rb +40 -0
  463. data/spec/models/auxiliary_volumes_for_onboarding_spec.rb +40 -0
  464. data/spec/models/cloud_connection_create_response_spec.rb +112 -0
  465. data/spec/models/cloud_connection_endpoint_classic_update_spec.rb +40 -0
  466. data/spec/models/cloud_connection_gre_tunnel_create_spec.rb +40 -0
  467. data/spec/models/cloud_connection_virtual_private_clouds_virtual_private_clouds_inner_spec.rb +52 -0
  468. data/spec/models/console_language_spec.rb +40 -0
  469. data/spec/models/console_languages_spec.rb +34 -0
  470. data/spec/models/create_cos_image_import_job_spec.rb +102 -0
  471. data/spec/models/dead_peer_detection_spec.rb +50 -0
  472. data/spec/models/disaster_recovery_location_spec.rb +40 -0
  473. data/spec/models/disaster_recovery_locations_spec.rb +34 -0
  474. data/spec/models/flash_copy_mapping_spec.rb +70 -0
  475. data/spec/models/ike_policies_spec.rb +34 -0
  476. data/spec/models/ike_policy_authentication_spec.rb +28 -0
  477. data/spec/models/ike_policy_create_spec.rb +86 -0
  478. data/spec/models/ike_policy_options_spec.rb +52 -0
  479. data/spec/models/ike_policy_ref_spec.rb +40 -0
  480. data/spec/models/ike_policy_spec.rb +86 -0
  481. data/spec/models/ike_policy_template_spec.rb +58 -0
  482. data/spec/models/ike_policy_update_spec.rb +86 -0
  483. data/spec/models/ip_sec_policies_spec.rb +34 -0
  484. data/spec/models/ip_sec_policy_create_spec.rb +76 -0
  485. data/spec/models/ip_sec_policy_options_spec.rb +46 -0
  486. data/spec/models/ip_sec_policy_ref_spec.rb +40 -0
  487. data/spec/models/ip_sec_policy_spec.rb +82 -0
  488. data/spec/models/ip_sec_policy_template_spec.rb +52 -0
  489. data/spec/models/ip_sec_policy_update_spec.rb +76 -0
  490. data/spec/models/ipsec_policy_authentication_spec.rb +28 -0
  491. data/spec/models/job_reference_spec.rb +40 -0
  492. data/spec/models/job_spec.rb +52 -0
  493. data/spec/models/jobs_spec.rb +34 -0
  494. data/spec/models/network_cloud_connections_inner_spec.rb +40 -0
  495. data/spec/models/network_id_spec.rb +34 -0
  496. data/spec/models/network_ids_spec.rb +34 -0
  497. data/spec/models/operation_spec.rb +46 -0
  498. data/spec/models/options_spec.rb +34 -0
  499. data/spec/models/peer_subnet_update_spec.rb +34 -0
  500. data/spec/models/peer_subnets_spec.rb +34 -0
  501. data/spec/models/remote_copy_relationship_spec.rb +112 -0
  502. data/spec/models/shared_processor_pool_create_spec.rb +52 -0
  503. data/spec/models/shared_processor_pool_detail_spec.rb +40 -0
  504. data/spec/models/shared_processor_pool_placement_group_spec.rb +46 -0
  505. data/spec/models/shared_processor_pool_server_spec.rb +76 -0
  506. data/spec/models/shared_processor_pool_spec.rb +88 -0
  507. data/spec/models/shared_processor_pool_update_spec.rb +40 -0
  508. data/spec/models/shared_processor_pools_spec.rb +34 -0
  509. data/spec/models/site_spec.rb +40 -0
  510. data/spec/models/spp_placement_group_create_spec.rb +44 -0
  511. data/spec/models/spp_placement_group_spec.rb +52 -0
  512. data/spec/models/spp_placement_groups_spec.rb +34 -0
  513. data/spec/models/status_description_error_spec.rb +46 -0
  514. data/spec/models/status_description_spec.rb +34 -0
  515. data/spec/models/status_spec.rb +46 -0
  516. data/spec/models/storage_affinity_spec.rb +62 -0
  517. data/spec/models/volume_action_spec.rb +34 -0
  518. data/spec/models/volume_group_action_reset_spec.rb +38 -0
  519. data/spec/models/volume_group_action_spec.rb +46 -0
  520. data/spec/models/volume_group_action_start_spec.rb +38 -0
  521. data/spec/models/volume_group_action_stop_spec.rb +34 -0
  522. data/spec/models/volume_group_create_response_spec.rb +52 -0
  523. data/spec/models/volume_group_create_spec.rb +46 -0
  524. data/spec/models/volume_group_details_spec.rb +70 -0
  525. data/spec/models/volume_group_remote_copy_relationships_spec.rb +40 -0
  526. data/spec/models/volume_group_spec.rb +64 -0
  527. data/spec/models/volume_group_storage_details_spec.rb +82 -0
  528. data/spec/models/volume_group_update_spec.rb +40 -0
  529. data/spec/models/volume_groups_details_spec.rb +34 -0
  530. data/spec/models/volume_groups_spec.rb +34 -0
  531. data/spec/models/volume_onboarding_common_spec.rb +52 -0
  532. data/spec/models/volume_onboarding_create_response_spec.rb +40 -0
  533. data/spec/models/volume_onboarding_create_spec.rb +40 -0
  534. data/spec/models/volume_onboarding_failure_spec.rb +40 -0
  535. data/spec/models/volume_onboarding_spec.rb +70 -0
  536. data/spec/models/volume_onboardings_spec.rb +34 -0
  537. data/spec/models/volume_remote_copy_relationship_spec.rb +124 -0
  538. data/spec/models/volumes_attach_spec.rb +34 -0
  539. data/spec/models/volumes_attachment_response_spec.rb +34 -0
  540. data/spec/models/vp_naa_s_options_spec.rb +58 -0
  541. data/spec/models/vpn_connection_create_response_spec.rb +114 -0
  542. data/spec/models/vpn_connection_create_spec.rb +74 -0
  543. data/spec/models/vpn_connection_spec.rb +108 -0
  544. data/spec/models/vpn_connection_update_spec.rb +52 -0
  545. data/spec/models/vpn_connections_spec.rb +34 -0
  546. data/spec/spec_helper.rb +1 -1
  547. metadata +374 -4
@@ -0,0 +1,732 @@
1
+ =begin
2
+ #Power Cloud API
3
+
4
+ #IBM Power Cloud API for Power Hardware / Infrastructure
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: kylej@us.ibm.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 6.2.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module IbmCloudPower
16
+ class PCloudVPNPoliciesApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Delete IKE Policy
23
+ # Delete an IKE Policy (by its unique identifier)
24
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
25
+ # @param ike_policy_id [String] ID of a IKE Policy
26
+ # @param [Hash] opts the optional parameters
27
+ # @return [Object]
28
+ def pcloud_ikepolicies_delete(cloud_instance_id, ike_policy_id, opts = {})
29
+ data, _status_code, _headers = pcloud_ikepolicies_delete_with_http_info(cloud_instance_id, ike_policy_id, opts)
30
+ data
31
+ end
32
+
33
+ # Delete IKE Policy
34
+ # Delete an IKE Policy (by its unique identifier)
35
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
36
+ # @param ike_policy_id [String] ID of a IKE Policy
37
+ # @param [Hash] opts the optional parameters
38
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
39
+ def pcloud_ikepolicies_delete_with_http_info(cloud_instance_id, ike_policy_id, opts = {})
40
+ if @api_client.config.debugging
41
+ @api_client.config.logger.debug 'Calling API: PCloudVPNPoliciesApi.pcloud_ikepolicies_delete ...'
42
+ end
43
+ # verify the required parameter 'cloud_instance_id' is set
44
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
45
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNPoliciesApi.pcloud_ikepolicies_delete"
46
+ end
47
+ # verify the required parameter 'ike_policy_id' is set
48
+ if @api_client.config.client_side_validation && ike_policy_id.nil?
49
+ fail ArgumentError, "Missing the required parameter 'ike_policy_id' when calling PCloudVPNPoliciesApi.pcloud_ikepolicies_delete"
50
+ end
51
+ # resource path
52
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ike-policies/{ike_policy_id}'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'ike_policy_id' + '}', CGI.escape(ike_policy_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
+
62
+ # form parameters
63
+ form_params = opts[:form_params] || {}
64
+
65
+ # http body (model)
66
+ post_body = opts[:debug_body]
67
+
68
+ # return_type
69
+ return_type = opts[:debug_return_type] || 'Object'
70
+
71
+ # auth_names
72
+ auth_names = opts[:debug_auth_names] || []
73
+
74
+ new_options = opts.merge(
75
+ :operation => :"PCloudVPNPoliciesApi.pcloud_ikepolicies_delete",
76
+ :header_params => header_params,
77
+ :query_params => query_params,
78
+ :form_params => form_params,
79
+ :body => post_body,
80
+ :auth_names => auth_names,
81
+ :return_type => return_type
82
+ )
83
+
84
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
85
+ if @api_client.config.debugging
86
+ @api_client.config.logger.debug "API called: PCloudVPNPoliciesApi#pcloud_ikepolicies_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
87
+ end
88
+ return data, status_code, headers
89
+ end
90
+
91
+ # Get the specified IKE Policy
92
+ # Get an IKE Policy (by its unique identifier)
93
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
94
+ # @param ike_policy_id [String] ID of a IKE Policy
95
+ # @param [Hash] opts the optional parameters
96
+ # @return [IKEPolicy]
97
+ def pcloud_ikepolicies_get(cloud_instance_id, ike_policy_id, opts = {})
98
+ data, _status_code, _headers = pcloud_ikepolicies_get_with_http_info(cloud_instance_id, ike_policy_id, opts)
99
+ data
100
+ end
101
+
102
+ # Get the specified IKE Policy
103
+ # Get an IKE Policy (by its unique identifier)
104
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
105
+ # @param ike_policy_id [String] ID of a IKE Policy
106
+ # @param [Hash] opts the optional parameters
107
+ # @return [Array<(IKEPolicy, Integer, Hash)>] IKEPolicy data, response status code and response headers
108
+ def pcloud_ikepolicies_get_with_http_info(cloud_instance_id, ike_policy_id, opts = {})
109
+ if @api_client.config.debugging
110
+ @api_client.config.logger.debug 'Calling API: PCloudVPNPoliciesApi.pcloud_ikepolicies_get ...'
111
+ end
112
+ # verify the required parameter 'cloud_instance_id' is set
113
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
114
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNPoliciesApi.pcloud_ikepolicies_get"
115
+ end
116
+ # verify the required parameter 'ike_policy_id' is set
117
+ if @api_client.config.client_side_validation && ike_policy_id.nil?
118
+ fail ArgumentError, "Missing the required parameter 'ike_policy_id' when calling PCloudVPNPoliciesApi.pcloud_ikepolicies_get"
119
+ end
120
+ # resource path
121
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ike-policies/{ike_policy_id}'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'ike_policy_id' + '}', CGI.escape(ike_policy_id.to_s))
122
+
123
+ # query parameters
124
+ query_params = opts[:query_params] || {}
125
+
126
+ # header parameters
127
+ header_params = opts[:header_params] || {}
128
+ # HTTP header 'Accept' (if needed)
129
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
130
+
131
+ # form parameters
132
+ form_params = opts[:form_params] || {}
133
+
134
+ # http body (model)
135
+ post_body = opts[:debug_body]
136
+
137
+ # return_type
138
+ return_type = opts[:debug_return_type] || 'IKEPolicy'
139
+
140
+ # auth_names
141
+ auth_names = opts[:debug_auth_names] || []
142
+
143
+ new_options = opts.merge(
144
+ :operation => :"PCloudVPNPoliciesApi.pcloud_ikepolicies_get",
145
+ :header_params => header_params,
146
+ :query_params => query_params,
147
+ :form_params => form_params,
148
+ :body => post_body,
149
+ :auth_names => auth_names,
150
+ :return_type => return_type
151
+ )
152
+
153
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
154
+ if @api_client.config.debugging
155
+ @api_client.config.logger.debug "API called: PCloudVPNPoliciesApi#pcloud_ikepolicies_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
156
+ end
157
+ return data, status_code, headers
158
+ end
159
+
160
+ # Get all IKE Policies
161
+ # List all IKE Policies with all attributes
162
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
163
+ # @param [Hash] opts the optional parameters
164
+ # @return [IKEPolicies]
165
+ def pcloud_ikepolicies_getall(cloud_instance_id, opts = {})
166
+ data, _status_code, _headers = pcloud_ikepolicies_getall_with_http_info(cloud_instance_id, opts)
167
+ data
168
+ end
169
+
170
+ # Get all IKE Policies
171
+ # List all IKE Policies with all attributes
172
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
173
+ # @param [Hash] opts the optional parameters
174
+ # @return [Array<(IKEPolicies, Integer, Hash)>] IKEPolicies data, response status code and response headers
175
+ def pcloud_ikepolicies_getall_with_http_info(cloud_instance_id, opts = {})
176
+ if @api_client.config.debugging
177
+ @api_client.config.logger.debug 'Calling API: PCloudVPNPoliciesApi.pcloud_ikepolicies_getall ...'
178
+ end
179
+ # verify the required parameter 'cloud_instance_id' is set
180
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
181
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNPoliciesApi.pcloud_ikepolicies_getall"
182
+ end
183
+ # resource path
184
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ike-policies'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s))
185
+
186
+ # query parameters
187
+ query_params = opts[:query_params] || {}
188
+
189
+ # header parameters
190
+ header_params = opts[:header_params] || {}
191
+ # HTTP header 'Accept' (if needed)
192
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
193
+
194
+ # form parameters
195
+ form_params = opts[:form_params] || {}
196
+
197
+ # http body (model)
198
+ post_body = opts[:debug_body]
199
+
200
+ # return_type
201
+ return_type = opts[:debug_return_type] || 'IKEPolicies'
202
+
203
+ # auth_names
204
+ auth_names = opts[:debug_auth_names] || []
205
+
206
+ new_options = opts.merge(
207
+ :operation => :"PCloudVPNPoliciesApi.pcloud_ikepolicies_getall",
208
+ :header_params => header_params,
209
+ :query_params => query_params,
210
+ :form_params => form_params,
211
+ :body => post_body,
212
+ :auth_names => auth_names,
213
+ :return_type => return_type
214
+ )
215
+
216
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
217
+ if @api_client.config.debugging
218
+ @api_client.config.logger.debug "API called: PCloudVPNPoliciesApi#pcloud_ikepolicies_getall\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
219
+ end
220
+ return data, status_code, headers
221
+ end
222
+
223
+ # Add IKE Policy
224
+ # Add a new IKE Policy
225
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
226
+ # @param body [IKEPolicyCreate] Parameters for the creation of a new IKE Policy
227
+ # @param [Hash] opts the optional parameters
228
+ # @return [IKEPolicy]
229
+ def pcloud_ikepolicies_post(cloud_instance_id, body, opts = {})
230
+ data, _status_code, _headers = pcloud_ikepolicies_post_with_http_info(cloud_instance_id, body, opts)
231
+ data
232
+ end
233
+
234
+ # Add IKE Policy
235
+ # Add a new IKE Policy
236
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
237
+ # @param body [IKEPolicyCreate] Parameters for the creation of a new IKE Policy
238
+ # @param [Hash] opts the optional parameters
239
+ # @return [Array<(IKEPolicy, Integer, Hash)>] IKEPolicy data, response status code and response headers
240
+ def pcloud_ikepolicies_post_with_http_info(cloud_instance_id, body, opts = {})
241
+ if @api_client.config.debugging
242
+ @api_client.config.logger.debug 'Calling API: PCloudVPNPoliciesApi.pcloud_ikepolicies_post ...'
243
+ end
244
+ # verify the required parameter 'cloud_instance_id' is set
245
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
246
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNPoliciesApi.pcloud_ikepolicies_post"
247
+ end
248
+ # verify the required parameter 'body' is set
249
+ if @api_client.config.client_side_validation && body.nil?
250
+ fail ArgumentError, "Missing the required parameter 'body' when calling PCloudVPNPoliciesApi.pcloud_ikepolicies_post"
251
+ end
252
+ # resource path
253
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ike-policies'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_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
+ # HTTP header 'Content-Type'
263
+ content_type = @api_client.select_header_content_type(['application/json'])
264
+ if !content_type.nil?
265
+ header_params['Content-Type'] = content_type
266
+ end
267
+
268
+ # form parameters
269
+ form_params = opts[:form_params] || {}
270
+
271
+ # http body (model)
272
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
273
+
274
+ # return_type
275
+ return_type = opts[:debug_return_type] || 'IKEPolicy'
276
+
277
+ # auth_names
278
+ auth_names = opts[:debug_auth_names] || []
279
+
280
+ new_options = opts.merge(
281
+ :operation => :"PCloudVPNPoliciesApi.pcloud_ikepolicies_post",
282
+ :header_params => header_params,
283
+ :query_params => query_params,
284
+ :form_params => form_params,
285
+ :body => post_body,
286
+ :auth_names => auth_names,
287
+ :return_type => return_type
288
+ )
289
+
290
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
291
+ if @api_client.config.debugging
292
+ @api_client.config.logger.debug "API called: PCloudVPNPoliciesApi#pcloud_ikepolicies_post\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
293
+ end
294
+ return data, status_code, headers
295
+ end
296
+
297
+ # Update IKE Policy
298
+ # update an IKE Policy (by its unique identifier)
299
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
300
+ # @param ike_policy_id [String] ID of a IKE Policy
301
+ # @param body [Hash<String, Object>] Parameters for updating IKE Policy
302
+ # @param [Hash] opts the optional parameters
303
+ # @return [IKEPolicy]
304
+ def pcloud_ikepolicies_put(cloud_instance_id, ike_policy_id, body, opts = {})
305
+ data, _status_code, _headers = pcloud_ikepolicies_put_with_http_info(cloud_instance_id, ike_policy_id, body, opts)
306
+ data
307
+ end
308
+
309
+ # Update IKE Policy
310
+ # update an IKE Policy (by its unique identifier)
311
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
312
+ # @param ike_policy_id [String] ID of a IKE Policy
313
+ # @param body [Hash<String, Object>] Parameters for updating IKE Policy
314
+ # @param [Hash] opts the optional parameters
315
+ # @return [Array<(IKEPolicy, Integer, Hash)>] IKEPolicy data, response status code and response headers
316
+ def pcloud_ikepolicies_put_with_http_info(cloud_instance_id, ike_policy_id, body, opts = {})
317
+ if @api_client.config.debugging
318
+ @api_client.config.logger.debug 'Calling API: PCloudVPNPoliciesApi.pcloud_ikepolicies_put ...'
319
+ end
320
+ # verify the required parameter 'cloud_instance_id' is set
321
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
322
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNPoliciesApi.pcloud_ikepolicies_put"
323
+ end
324
+ # verify the required parameter 'ike_policy_id' is set
325
+ if @api_client.config.client_side_validation && ike_policy_id.nil?
326
+ fail ArgumentError, "Missing the required parameter 'ike_policy_id' when calling PCloudVPNPoliciesApi.pcloud_ikepolicies_put"
327
+ end
328
+ # verify the required parameter 'body' is set
329
+ if @api_client.config.client_side_validation && body.nil?
330
+ fail ArgumentError, "Missing the required parameter 'body' when calling PCloudVPNPoliciesApi.pcloud_ikepolicies_put"
331
+ end
332
+ # resource path
333
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ike-policies/{ike_policy_id}'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'ike_policy_id' + '}', CGI.escape(ike_policy_id.to_s))
334
+
335
+ # query parameters
336
+ query_params = opts[:query_params] || {}
337
+
338
+ # header parameters
339
+ header_params = opts[:header_params] || {}
340
+ # HTTP header 'Accept' (if needed)
341
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
342
+ # HTTP header 'Content-Type'
343
+ content_type = @api_client.select_header_content_type(['application/json'])
344
+ if !content_type.nil?
345
+ header_params['Content-Type'] = content_type
346
+ end
347
+
348
+ # form parameters
349
+ form_params = opts[:form_params] || {}
350
+
351
+ # http body (model)
352
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
353
+
354
+ # return_type
355
+ return_type = opts[:debug_return_type] || 'IKEPolicy'
356
+
357
+ # auth_names
358
+ auth_names = opts[:debug_auth_names] || []
359
+
360
+ new_options = opts.merge(
361
+ :operation => :"PCloudVPNPoliciesApi.pcloud_ikepolicies_put",
362
+ :header_params => header_params,
363
+ :query_params => query_params,
364
+ :form_params => form_params,
365
+ :body => post_body,
366
+ :auth_names => auth_names,
367
+ :return_type => return_type
368
+ )
369
+
370
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
371
+ if @api_client.config.debugging
372
+ @api_client.config.logger.debug "API called: PCloudVPNPoliciesApi#pcloud_ikepolicies_put\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
373
+ end
374
+ return data, status_code, headers
375
+ end
376
+
377
+ # Delete IPSec Policy
378
+ # Delete an IPSec Policy (by its unique identifier)
379
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
380
+ # @param ipsec_policy_id [String] ID of a IPSec Policy
381
+ # @param [Hash] opts the optional parameters
382
+ # @return [Object]
383
+ def pcloud_ipsecpolicies_delete(cloud_instance_id, ipsec_policy_id, opts = {})
384
+ data, _status_code, _headers = pcloud_ipsecpolicies_delete_with_http_info(cloud_instance_id, ipsec_policy_id, opts)
385
+ data
386
+ end
387
+
388
+ # Delete IPSec Policy
389
+ # Delete an IPSec Policy (by its unique identifier)
390
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
391
+ # @param ipsec_policy_id [String] ID of a IPSec Policy
392
+ # @param [Hash] opts the optional parameters
393
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
394
+ def pcloud_ipsecpolicies_delete_with_http_info(cloud_instance_id, ipsec_policy_id, opts = {})
395
+ if @api_client.config.debugging
396
+ @api_client.config.logger.debug 'Calling API: PCloudVPNPoliciesApi.pcloud_ipsecpolicies_delete ...'
397
+ end
398
+ # verify the required parameter 'cloud_instance_id' is set
399
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
400
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNPoliciesApi.pcloud_ipsecpolicies_delete"
401
+ end
402
+ # verify the required parameter 'ipsec_policy_id' is set
403
+ if @api_client.config.client_side_validation && ipsec_policy_id.nil?
404
+ fail ArgumentError, "Missing the required parameter 'ipsec_policy_id' when calling PCloudVPNPoliciesApi.pcloud_ipsecpolicies_delete"
405
+ end
406
+ # resource path
407
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ipsec-policies/{ipsec_policy_id}'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'ipsec_policy_id' + '}', CGI.escape(ipsec_policy_id.to_s))
408
+
409
+ # query parameters
410
+ query_params = opts[:query_params] || {}
411
+
412
+ # header parameters
413
+ header_params = opts[:header_params] || {}
414
+ # HTTP header 'Accept' (if needed)
415
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
416
+
417
+ # form parameters
418
+ form_params = opts[:form_params] || {}
419
+
420
+ # http body (model)
421
+ post_body = opts[:debug_body]
422
+
423
+ # return_type
424
+ return_type = opts[:debug_return_type] || 'Object'
425
+
426
+ # auth_names
427
+ auth_names = opts[:debug_auth_names] || []
428
+
429
+ new_options = opts.merge(
430
+ :operation => :"PCloudVPNPoliciesApi.pcloud_ipsecpolicies_delete",
431
+ :header_params => header_params,
432
+ :query_params => query_params,
433
+ :form_params => form_params,
434
+ :body => post_body,
435
+ :auth_names => auth_names,
436
+ :return_type => return_type
437
+ )
438
+
439
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
440
+ if @api_client.config.debugging
441
+ @api_client.config.logger.debug "API called: PCloudVPNPoliciesApi#pcloud_ipsecpolicies_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
442
+ end
443
+ return data, status_code, headers
444
+ end
445
+
446
+ # Get the specified IPSec Policy
447
+ # Get an IPSec Policy (by its unique identifier)
448
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
449
+ # @param ipsec_policy_id [String] ID of a IPSec Policy
450
+ # @param [Hash] opts the optional parameters
451
+ # @return [IPSecPolicy]
452
+ def pcloud_ipsecpolicies_get(cloud_instance_id, ipsec_policy_id, opts = {})
453
+ data, _status_code, _headers = pcloud_ipsecpolicies_get_with_http_info(cloud_instance_id, ipsec_policy_id, opts)
454
+ data
455
+ end
456
+
457
+ # Get the specified IPSec Policy
458
+ # Get an IPSec Policy (by its unique identifier)
459
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
460
+ # @param ipsec_policy_id [String] ID of a IPSec Policy
461
+ # @param [Hash] opts the optional parameters
462
+ # @return [Array<(IPSecPolicy, Integer, Hash)>] IPSecPolicy data, response status code and response headers
463
+ def pcloud_ipsecpolicies_get_with_http_info(cloud_instance_id, ipsec_policy_id, opts = {})
464
+ if @api_client.config.debugging
465
+ @api_client.config.logger.debug 'Calling API: PCloudVPNPoliciesApi.pcloud_ipsecpolicies_get ...'
466
+ end
467
+ # verify the required parameter 'cloud_instance_id' is set
468
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
469
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNPoliciesApi.pcloud_ipsecpolicies_get"
470
+ end
471
+ # verify the required parameter 'ipsec_policy_id' is set
472
+ if @api_client.config.client_side_validation && ipsec_policy_id.nil?
473
+ fail ArgumentError, "Missing the required parameter 'ipsec_policy_id' when calling PCloudVPNPoliciesApi.pcloud_ipsecpolicies_get"
474
+ end
475
+ # resource path
476
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ipsec-policies/{ipsec_policy_id}'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'ipsec_policy_id' + '}', CGI.escape(ipsec_policy_id.to_s))
477
+
478
+ # query parameters
479
+ query_params = opts[:query_params] || {}
480
+
481
+ # header parameters
482
+ header_params = opts[:header_params] || {}
483
+ # HTTP header 'Accept' (if needed)
484
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
485
+
486
+ # form parameters
487
+ form_params = opts[:form_params] || {}
488
+
489
+ # http body (model)
490
+ post_body = opts[:debug_body]
491
+
492
+ # return_type
493
+ return_type = opts[:debug_return_type] || 'IPSecPolicy'
494
+
495
+ # auth_names
496
+ auth_names = opts[:debug_auth_names] || []
497
+
498
+ new_options = opts.merge(
499
+ :operation => :"PCloudVPNPoliciesApi.pcloud_ipsecpolicies_get",
500
+ :header_params => header_params,
501
+ :query_params => query_params,
502
+ :form_params => form_params,
503
+ :body => post_body,
504
+ :auth_names => auth_names,
505
+ :return_type => return_type
506
+ )
507
+
508
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
509
+ if @api_client.config.debugging
510
+ @api_client.config.logger.debug "API called: PCloudVPNPoliciesApi#pcloud_ipsecpolicies_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
511
+ end
512
+ return data, status_code, headers
513
+ end
514
+
515
+ # Get all IPSec Policies
516
+ # Get all IPSec Policies with all their attributes
517
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
518
+ # @param [Hash] opts the optional parameters
519
+ # @return [IPSecPolicies]
520
+ def pcloud_ipsecpolicies_getall(cloud_instance_id, opts = {})
521
+ data, _status_code, _headers = pcloud_ipsecpolicies_getall_with_http_info(cloud_instance_id, opts)
522
+ data
523
+ end
524
+
525
+ # Get all IPSec Policies
526
+ # Get all IPSec Policies with all their attributes
527
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
528
+ # @param [Hash] opts the optional parameters
529
+ # @return [Array<(IPSecPolicies, Integer, Hash)>] IPSecPolicies data, response status code and response headers
530
+ def pcloud_ipsecpolicies_getall_with_http_info(cloud_instance_id, opts = {})
531
+ if @api_client.config.debugging
532
+ @api_client.config.logger.debug 'Calling API: PCloudVPNPoliciesApi.pcloud_ipsecpolicies_getall ...'
533
+ end
534
+ # verify the required parameter 'cloud_instance_id' is set
535
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
536
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNPoliciesApi.pcloud_ipsecpolicies_getall"
537
+ end
538
+ # resource path
539
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ipsec-policies'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s))
540
+
541
+ # query parameters
542
+ query_params = opts[:query_params] || {}
543
+
544
+ # header parameters
545
+ header_params = opts[:header_params] || {}
546
+ # HTTP header 'Accept' (if needed)
547
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
548
+
549
+ # form parameters
550
+ form_params = opts[:form_params] || {}
551
+
552
+ # http body (model)
553
+ post_body = opts[:debug_body]
554
+
555
+ # return_type
556
+ return_type = opts[:debug_return_type] || 'IPSecPolicies'
557
+
558
+ # auth_names
559
+ auth_names = opts[:debug_auth_names] || []
560
+
561
+ new_options = opts.merge(
562
+ :operation => :"PCloudVPNPoliciesApi.pcloud_ipsecpolicies_getall",
563
+ :header_params => header_params,
564
+ :query_params => query_params,
565
+ :form_params => form_params,
566
+ :body => post_body,
567
+ :auth_names => auth_names,
568
+ :return_type => return_type
569
+ )
570
+
571
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
572
+ if @api_client.config.debugging
573
+ @api_client.config.logger.debug "API called: PCloudVPNPoliciesApi#pcloud_ipsecpolicies_getall\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
574
+ end
575
+ return data, status_code, headers
576
+ end
577
+
578
+ # Add IPSec Policy
579
+ # Add a new IPSec Policy
580
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
581
+ # @param body [IPSecPolicyCreate] Parameters for the creation of a new IPSec Policy
582
+ # @param [Hash] opts the optional parameters
583
+ # @return [IPSecPolicy]
584
+ def pcloud_ipsecpolicies_post(cloud_instance_id, body, opts = {})
585
+ data, _status_code, _headers = pcloud_ipsecpolicies_post_with_http_info(cloud_instance_id, body, opts)
586
+ data
587
+ end
588
+
589
+ # Add IPSec Policy
590
+ # Add a new IPSec Policy
591
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
592
+ # @param body [IPSecPolicyCreate] Parameters for the creation of a new IPSec Policy
593
+ # @param [Hash] opts the optional parameters
594
+ # @return [Array<(IPSecPolicy, Integer, Hash)>] IPSecPolicy data, response status code and response headers
595
+ def pcloud_ipsecpolicies_post_with_http_info(cloud_instance_id, body, opts = {})
596
+ if @api_client.config.debugging
597
+ @api_client.config.logger.debug 'Calling API: PCloudVPNPoliciesApi.pcloud_ipsecpolicies_post ...'
598
+ end
599
+ # verify the required parameter 'cloud_instance_id' is set
600
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
601
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNPoliciesApi.pcloud_ipsecpolicies_post"
602
+ end
603
+ # verify the required parameter 'body' is set
604
+ if @api_client.config.client_side_validation && body.nil?
605
+ fail ArgumentError, "Missing the required parameter 'body' when calling PCloudVPNPoliciesApi.pcloud_ipsecpolicies_post"
606
+ end
607
+ # resource path
608
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ipsec-policies'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s))
609
+
610
+ # query parameters
611
+ query_params = opts[:query_params] || {}
612
+
613
+ # header parameters
614
+ header_params = opts[:header_params] || {}
615
+ # HTTP header 'Accept' (if needed)
616
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
617
+ # HTTP header 'Content-Type'
618
+ content_type = @api_client.select_header_content_type(['application/json'])
619
+ if !content_type.nil?
620
+ header_params['Content-Type'] = content_type
621
+ end
622
+
623
+ # form parameters
624
+ form_params = opts[:form_params] || {}
625
+
626
+ # http body (model)
627
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
628
+
629
+ # return_type
630
+ return_type = opts[:debug_return_type] || 'IPSecPolicy'
631
+
632
+ # auth_names
633
+ auth_names = opts[:debug_auth_names] || []
634
+
635
+ new_options = opts.merge(
636
+ :operation => :"PCloudVPNPoliciesApi.pcloud_ipsecpolicies_post",
637
+ :header_params => header_params,
638
+ :query_params => query_params,
639
+ :form_params => form_params,
640
+ :body => post_body,
641
+ :auth_names => auth_names,
642
+ :return_type => return_type
643
+ )
644
+
645
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
646
+ if @api_client.config.debugging
647
+ @api_client.config.logger.debug "API called: PCloudVPNPoliciesApi#pcloud_ipsecpolicies_post\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
648
+ end
649
+ return data, status_code, headers
650
+ end
651
+
652
+ # Update IPSec Policy
653
+ # update an IPSec Policy
654
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
655
+ # @param ipsec_policy_id [String] ID of a IPSec Policy
656
+ # @param body [Hash<String, Object>] Parameters for the update of an IPSec Policy
657
+ # @param [Hash] opts the optional parameters
658
+ # @return [IPSecPolicy]
659
+ def pcloud_ipsecpolicies_put(cloud_instance_id, ipsec_policy_id, body, opts = {})
660
+ data, _status_code, _headers = pcloud_ipsecpolicies_put_with_http_info(cloud_instance_id, ipsec_policy_id, body, opts)
661
+ data
662
+ end
663
+
664
+ # Update IPSec Policy
665
+ # update an IPSec Policy
666
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
667
+ # @param ipsec_policy_id [String] ID of a IPSec Policy
668
+ # @param body [Hash<String, Object>] Parameters for the update of an IPSec Policy
669
+ # @param [Hash] opts the optional parameters
670
+ # @return [Array<(IPSecPolicy, Integer, Hash)>] IPSecPolicy data, response status code and response headers
671
+ def pcloud_ipsecpolicies_put_with_http_info(cloud_instance_id, ipsec_policy_id, body, opts = {})
672
+ if @api_client.config.debugging
673
+ @api_client.config.logger.debug 'Calling API: PCloudVPNPoliciesApi.pcloud_ipsecpolicies_put ...'
674
+ end
675
+ # verify the required parameter 'cloud_instance_id' is set
676
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
677
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNPoliciesApi.pcloud_ipsecpolicies_put"
678
+ end
679
+ # verify the required parameter 'ipsec_policy_id' is set
680
+ if @api_client.config.client_side_validation && ipsec_policy_id.nil?
681
+ fail ArgumentError, "Missing the required parameter 'ipsec_policy_id' when calling PCloudVPNPoliciesApi.pcloud_ipsecpolicies_put"
682
+ end
683
+ # verify the required parameter 'body' is set
684
+ if @api_client.config.client_side_validation && body.nil?
685
+ fail ArgumentError, "Missing the required parameter 'body' when calling PCloudVPNPoliciesApi.pcloud_ipsecpolicies_put"
686
+ end
687
+ # resource path
688
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/ipsec-policies/{ipsec_policy_id}'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'ipsec_policy_id' + '}', CGI.escape(ipsec_policy_id.to_s))
689
+
690
+ # query parameters
691
+ query_params = opts[:query_params] || {}
692
+
693
+ # header parameters
694
+ header_params = opts[:header_params] || {}
695
+ # HTTP header 'Accept' (if needed)
696
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
697
+ # HTTP header 'Content-Type'
698
+ content_type = @api_client.select_header_content_type(['application/json'])
699
+ if !content_type.nil?
700
+ header_params['Content-Type'] = content_type
701
+ end
702
+
703
+ # form parameters
704
+ form_params = opts[:form_params] || {}
705
+
706
+ # http body (model)
707
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
708
+
709
+ # return_type
710
+ return_type = opts[:debug_return_type] || 'IPSecPolicy'
711
+
712
+ # auth_names
713
+ auth_names = opts[:debug_auth_names] || []
714
+
715
+ new_options = opts.merge(
716
+ :operation => :"PCloudVPNPoliciesApi.pcloud_ipsecpolicies_put",
717
+ :header_params => header_params,
718
+ :query_params => query_params,
719
+ :form_params => form_params,
720
+ :body => post_body,
721
+ :auth_names => auth_names,
722
+ :return_type => return_type
723
+ )
724
+
725
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
726
+ if @api_client.config.debugging
727
+ @api_client.config.logger.debug "API called: PCloudVPNPoliciesApi#pcloud_ipsecpolicies_put\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
728
+ end
729
+ return data, status_code, headers
730
+ end
731
+ end
732
+ end