ibm_cloud_power 1.1.1 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
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
@@ -0,0 +1,898 @@
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.0.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module IbmCloudPower
16
+ class PCloudVPNConnectionsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Delete VPN Connection
23
+ # Delete VPN Connection (by its identifier)
24
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
25
+ # @param vpn_connection_id [String] ID of a VPN connection
26
+ # @param [Hash] opts the optional parameters
27
+ # @return [JobReference]
28
+ def pcloud_vpnconnections_delete(cloud_instance_id, vpn_connection_id, opts = {})
29
+ data, _status_code, _headers = pcloud_vpnconnections_delete_with_http_info(cloud_instance_id, vpn_connection_id, opts)
30
+ data
31
+ end
32
+
33
+ # Delete VPN Connection
34
+ # Delete VPN Connection (by its identifier)
35
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
36
+ # @param vpn_connection_id [String] ID of a VPN connection
37
+ # @param [Hash] opts the optional parameters
38
+ # @return [Array<(JobReference, Integer, Hash)>] JobReference data, response status code and response headers
39
+ def pcloud_vpnconnections_delete_with_http_info(cloud_instance_id, vpn_connection_id, opts = {})
40
+ if @api_client.config.debugging
41
+ @api_client.config.logger.debug 'Calling API: PCloudVPNConnectionsApi.pcloud_vpnconnections_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 PCloudVPNConnectionsApi.pcloud_vpnconnections_delete"
46
+ end
47
+ # verify the required parameter 'vpn_connection_id' is set
48
+ if @api_client.config.client_side_validation && vpn_connection_id.nil?
49
+ fail ArgumentError, "Missing the required parameter 'vpn_connection_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_delete"
50
+ end
51
+ # resource path
52
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'vpn_connection_id' + '}', CGI.escape(vpn_connection_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] || 'JobReference'
70
+
71
+ # auth_names
72
+ auth_names = opts[:debug_auth_names] || []
73
+
74
+ new_options = opts.merge(
75
+ :operation => :"PCloudVPNConnectionsApi.pcloud_vpnconnections_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: PCloudVPNConnectionsApi#pcloud_vpnconnections_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
87
+ end
88
+ return data, status_code, headers
89
+ end
90
+
91
+ # Get VPN Connection
92
+ # Get a VPN Connection
93
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
94
+ # @param vpn_connection_id [String] ID of a VPN connection
95
+ # @param [Hash] opts the optional parameters
96
+ # @return [VPNConnection]
97
+ def pcloud_vpnconnections_get(cloud_instance_id, vpn_connection_id, opts = {})
98
+ data, _status_code, _headers = pcloud_vpnconnections_get_with_http_info(cloud_instance_id, vpn_connection_id, opts)
99
+ data
100
+ end
101
+
102
+ # Get VPN Connection
103
+ # Get a VPN Connection
104
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
105
+ # @param vpn_connection_id [String] ID of a VPN connection
106
+ # @param [Hash] opts the optional parameters
107
+ # @return [Array<(VPNConnection, Integer, Hash)>] VPNConnection data, response status code and response headers
108
+ def pcloud_vpnconnections_get_with_http_info(cloud_instance_id, vpn_connection_id, opts = {})
109
+ if @api_client.config.debugging
110
+ @api_client.config.logger.debug 'Calling API: PCloudVPNConnectionsApi.pcloud_vpnconnections_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 PCloudVPNConnectionsApi.pcloud_vpnconnections_get"
115
+ end
116
+ # verify the required parameter 'vpn_connection_id' is set
117
+ if @api_client.config.client_side_validation && vpn_connection_id.nil?
118
+ fail ArgumentError, "Missing the required parameter 'vpn_connection_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_get"
119
+ end
120
+ # resource path
121
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'vpn_connection_id' + '}', CGI.escape(vpn_connection_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] || 'VPNConnection'
139
+
140
+ # auth_names
141
+ auth_names = opts[:debug_auth_names] || []
142
+
143
+ new_options = opts.merge(
144
+ :operation => :"PCloudVPNConnectionsApi.pcloud_vpnconnections_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: PCloudVPNConnectionsApi#pcloud_vpnconnections_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
156
+ end
157
+ return data, status_code, headers
158
+ end
159
+
160
+ # Get all VPN Connections
161
+ # Get all VPN Connections
162
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
163
+ # @param [Hash] opts the optional parameters
164
+ # @return [VPNConnections]
165
+ def pcloud_vpnconnections_getall(cloud_instance_id, opts = {})
166
+ data, _status_code, _headers = pcloud_vpnconnections_getall_with_http_info(cloud_instance_id, opts)
167
+ data
168
+ end
169
+
170
+ # Get all VPN Connections
171
+ # Get all VPN Connections
172
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
173
+ # @param [Hash] opts the optional parameters
174
+ # @return [Array<(VPNConnections, Integer, Hash)>] VPNConnections data, response status code and response headers
175
+ def pcloud_vpnconnections_getall_with_http_info(cloud_instance_id, opts = {})
176
+ if @api_client.config.debugging
177
+ @api_client.config.logger.debug 'Calling API: PCloudVPNConnectionsApi.pcloud_vpnconnections_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 PCloudVPNConnectionsApi.pcloud_vpnconnections_getall"
182
+ end
183
+ # resource path
184
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections'.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] || 'VPNConnections'
202
+
203
+ # auth_names
204
+ auth_names = opts[:debug_auth_names] || []
205
+
206
+ new_options = opts.merge(
207
+ :operation => :"PCloudVPNConnectionsApi.pcloud_vpnconnections_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: PCloudVPNConnectionsApi#pcloud_vpnconnections_getall\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
219
+ end
220
+ return data, status_code, headers
221
+ end
222
+
223
+ # Detach network
224
+ # Detach network from a specific VPN Connection
225
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
226
+ # @param vpn_connection_id [String] ID of a VPN connection
227
+ # @param body [NetworkID] network to detach
228
+ # @param [Hash] opts the optional parameters
229
+ # @return [JobReference]
230
+ def pcloud_vpnconnections_networks_delete(cloud_instance_id, vpn_connection_id, body, opts = {})
231
+ data, _status_code, _headers = pcloud_vpnconnections_networks_delete_with_http_info(cloud_instance_id, vpn_connection_id, body, opts)
232
+ data
233
+ end
234
+
235
+ # Detach network
236
+ # Detach network from a specific VPN Connection
237
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
238
+ # @param vpn_connection_id [String] ID of a VPN connection
239
+ # @param body [NetworkID] network to detach
240
+ # @param [Hash] opts the optional parameters
241
+ # @return [Array<(JobReference, Integer, Hash)>] JobReference data, response status code and response headers
242
+ def pcloud_vpnconnections_networks_delete_with_http_info(cloud_instance_id, vpn_connection_id, body, opts = {})
243
+ if @api_client.config.debugging
244
+ @api_client.config.logger.debug 'Calling API: PCloudVPNConnectionsApi.pcloud_vpnconnections_networks_delete ...'
245
+ end
246
+ # verify the required parameter 'cloud_instance_id' is set
247
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
248
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_networks_delete"
249
+ end
250
+ # verify the required parameter 'vpn_connection_id' is set
251
+ if @api_client.config.client_side_validation && vpn_connection_id.nil?
252
+ fail ArgumentError, "Missing the required parameter 'vpn_connection_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_networks_delete"
253
+ end
254
+ # verify the required parameter 'body' is set
255
+ if @api_client.config.client_side_validation && body.nil?
256
+ fail ArgumentError, "Missing the required parameter 'body' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_networks_delete"
257
+ end
258
+ # resource path
259
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}/networks'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'vpn_connection_id' + '}', CGI.escape(vpn_connection_id.to_s))
260
+
261
+ # query parameters
262
+ query_params = opts[:query_params] || {}
263
+
264
+ # header parameters
265
+ header_params = opts[:header_params] || {}
266
+ # HTTP header 'Accept' (if needed)
267
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
268
+ # HTTP header 'Content-Type'
269
+ content_type = @api_client.select_header_content_type(['application/json'])
270
+ if !content_type.nil?
271
+ header_params['Content-Type'] = content_type
272
+ end
273
+
274
+ # form parameters
275
+ form_params = opts[:form_params] || {}
276
+
277
+ # http body (model)
278
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
279
+
280
+ # return_type
281
+ return_type = opts[:debug_return_type] || 'JobReference'
282
+
283
+ # auth_names
284
+ auth_names = opts[:debug_auth_names] || []
285
+
286
+ new_options = opts.merge(
287
+ :operation => :"PCloudVPNConnectionsApi.pcloud_vpnconnections_networks_delete",
288
+ :header_params => header_params,
289
+ :query_params => query_params,
290
+ :form_params => form_params,
291
+ :body => post_body,
292
+ :auth_names => auth_names,
293
+ :return_type => return_type
294
+ )
295
+
296
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
297
+ if @api_client.config.debugging
298
+ @api_client.config.logger.debug "API called: PCloudVPNConnectionsApi#pcloud_vpnconnections_networks_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
299
+ end
300
+ return data, status_code, headers
301
+ end
302
+
303
+ # Get attached networks
304
+ # Get a list of network IDs attached to a VPN Connection
305
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
306
+ # @param vpn_connection_id [String] ID of a VPN connection
307
+ # @param [Hash] opts the optional parameters
308
+ # @return [NetworkIDs]
309
+ def pcloud_vpnconnections_networks_get(cloud_instance_id, vpn_connection_id, opts = {})
310
+ data, _status_code, _headers = pcloud_vpnconnections_networks_get_with_http_info(cloud_instance_id, vpn_connection_id, opts)
311
+ data
312
+ end
313
+
314
+ # Get attached networks
315
+ # Get a list of network IDs attached to a VPN Connection
316
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
317
+ # @param vpn_connection_id [String] ID of a VPN connection
318
+ # @param [Hash] opts the optional parameters
319
+ # @return [Array<(NetworkIDs, Integer, Hash)>] NetworkIDs data, response status code and response headers
320
+ def pcloud_vpnconnections_networks_get_with_http_info(cloud_instance_id, vpn_connection_id, opts = {})
321
+ if @api_client.config.debugging
322
+ @api_client.config.logger.debug 'Calling API: PCloudVPNConnectionsApi.pcloud_vpnconnections_networks_get ...'
323
+ end
324
+ # verify the required parameter 'cloud_instance_id' is set
325
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
326
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_networks_get"
327
+ end
328
+ # verify the required parameter 'vpn_connection_id' is set
329
+ if @api_client.config.client_side_validation && vpn_connection_id.nil?
330
+ fail ArgumentError, "Missing the required parameter 'vpn_connection_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_networks_get"
331
+ end
332
+ # resource path
333
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}/networks'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'vpn_connection_id' + '}', CGI.escape(vpn_connection_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
+
343
+ # form parameters
344
+ form_params = opts[:form_params] || {}
345
+
346
+ # http body (model)
347
+ post_body = opts[:debug_body]
348
+
349
+ # return_type
350
+ return_type = opts[:debug_return_type] || 'NetworkIDs'
351
+
352
+ # auth_names
353
+ auth_names = opts[:debug_auth_names] || []
354
+
355
+ new_options = opts.merge(
356
+ :operation => :"PCloudVPNConnectionsApi.pcloud_vpnconnections_networks_get",
357
+ :header_params => header_params,
358
+ :query_params => query_params,
359
+ :form_params => form_params,
360
+ :body => post_body,
361
+ :auth_names => auth_names,
362
+ :return_type => return_type
363
+ )
364
+
365
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
366
+ if @api_client.config.debugging
367
+ @api_client.config.logger.debug "API called: PCloudVPNConnectionsApi#pcloud_vpnconnections_networks_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
368
+ end
369
+ return data, status_code, headers
370
+ end
371
+
372
+ # Attach network
373
+ # Attach a network to a VPN Connection
374
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
375
+ # @param vpn_connection_id [String] ID of a VPN connection
376
+ # @param body [NetworkID] network to attach
377
+ # @param [Hash] opts the optional parameters
378
+ # @return [JobReference]
379
+ def pcloud_vpnconnections_networks_put(cloud_instance_id, vpn_connection_id, body, opts = {})
380
+ data, _status_code, _headers = pcloud_vpnconnections_networks_put_with_http_info(cloud_instance_id, vpn_connection_id, body, opts)
381
+ data
382
+ end
383
+
384
+ # Attach network
385
+ # Attach a network to a VPN Connection
386
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
387
+ # @param vpn_connection_id [String] ID of a VPN connection
388
+ # @param body [NetworkID] network to attach
389
+ # @param [Hash] opts the optional parameters
390
+ # @return [Array<(JobReference, Integer, Hash)>] JobReference data, response status code and response headers
391
+ def pcloud_vpnconnections_networks_put_with_http_info(cloud_instance_id, vpn_connection_id, body, opts = {})
392
+ if @api_client.config.debugging
393
+ @api_client.config.logger.debug 'Calling API: PCloudVPNConnectionsApi.pcloud_vpnconnections_networks_put ...'
394
+ end
395
+ # verify the required parameter 'cloud_instance_id' is set
396
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
397
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_networks_put"
398
+ end
399
+ # verify the required parameter 'vpn_connection_id' is set
400
+ if @api_client.config.client_side_validation && vpn_connection_id.nil?
401
+ fail ArgumentError, "Missing the required parameter 'vpn_connection_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_networks_put"
402
+ end
403
+ # verify the required parameter 'body' is set
404
+ if @api_client.config.client_side_validation && body.nil?
405
+ fail ArgumentError, "Missing the required parameter 'body' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_networks_put"
406
+ end
407
+ # resource path
408
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}/networks'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'vpn_connection_id' + '}', CGI.escape(vpn_connection_id.to_s))
409
+
410
+ # query parameters
411
+ query_params = opts[:query_params] || {}
412
+
413
+ # header parameters
414
+ header_params = opts[:header_params] || {}
415
+ # HTTP header 'Accept' (if needed)
416
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
417
+ # HTTP header 'Content-Type'
418
+ content_type = @api_client.select_header_content_type(['application/json'])
419
+ if !content_type.nil?
420
+ header_params['Content-Type'] = content_type
421
+ end
422
+
423
+ # form parameters
424
+ form_params = opts[:form_params] || {}
425
+
426
+ # http body (model)
427
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
428
+
429
+ # return_type
430
+ return_type = opts[:debug_return_type] || 'JobReference'
431
+
432
+ # auth_names
433
+ auth_names = opts[:debug_auth_names] || []
434
+
435
+ new_options = opts.merge(
436
+ :operation => :"PCloudVPNConnectionsApi.pcloud_vpnconnections_networks_put",
437
+ :header_params => header_params,
438
+ :query_params => query_params,
439
+ :form_params => form_params,
440
+ :body => post_body,
441
+ :auth_names => auth_names,
442
+ :return_type => return_type
443
+ )
444
+
445
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
446
+ if @api_client.config.debugging
447
+ @api_client.config.logger.debug "API called: PCloudVPNConnectionsApi#pcloud_vpnconnections_networks_put\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
448
+ end
449
+ return data, status_code, headers
450
+ end
451
+
452
+ # Get Options
453
+ # Get allowable and default values for attributes \"authentication\", \"dhgroup\", \"encryption\", \"keyLifetime\", and \"version\" when creating or updating an IKE Policy Get allowable and default values for attributes \"authentication\", \"dhgroup\", \"encryption\", and \"keyLifetime\" when creating or updating an IPSec Policy
454
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
455
+ # @param [Hash] opts the optional parameters
456
+ # @return [Options]
457
+ def pcloud_vpnconnections_options_get(cloud_instance_id, opts = {})
458
+ data, _status_code, _headers = pcloud_vpnconnections_options_get_with_http_info(cloud_instance_id, opts)
459
+ data
460
+ end
461
+
462
+ # Get Options
463
+ # Get allowable and default values for attributes \&quot;authentication\&quot;, \&quot;dhgroup\&quot;, \&quot;encryption\&quot;, \&quot;keyLifetime\&quot;, and \&quot;version\&quot; when creating or updating an IKE Policy Get allowable and default values for attributes \&quot;authentication\&quot;, \&quot;dhgroup\&quot;, \&quot;encryption\&quot;, and \&quot;keyLifetime\&quot; when creating or updating an IPSec Policy
464
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
465
+ # @param [Hash] opts the optional parameters
466
+ # @return [Array<(Options, Integer, Hash)>] Options data, response status code and response headers
467
+ def pcloud_vpnconnections_options_get_with_http_info(cloud_instance_id, opts = {})
468
+ if @api_client.config.debugging
469
+ @api_client.config.logger.debug 'Calling API: PCloudVPNConnectionsApi.pcloud_vpnconnections_options_get ...'
470
+ end
471
+ # verify the required parameter 'cloud_instance_id' is set
472
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
473
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_options_get"
474
+ end
475
+ # resource path
476
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn-connections/options'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_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] || 'Options'
494
+
495
+ # auth_names
496
+ auth_names = opts[:debug_auth_names] || []
497
+
498
+ new_options = opts.merge(
499
+ :operation => :"PCloudVPNConnectionsApi.pcloud_vpnconnections_options_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: PCloudVPNConnectionsApi#pcloud_vpnconnections_options_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
511
+ end
512
+ return data, status_code, headers
513
+ end
514
+
515
+ # Detach Peer Subnet
516
+ # Detach peer subnet from a VPN Connection
517
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
518
+ # @param vpn_connection_id [String] ID of a VPN connection
519
+ # @param body [PeerSubnetUpdate] Peer subnet to detach
520
+ # @param [Hash] opts the optional parameters
521
+ # @return [PeerSubnets]
522
+ def pcloud_vpnconnections_peersubnets_delete(cloud_instance_id, vpn_connection_id, body, opts = {})
523
+ data, _status_code, _headers = pcloud_vpnconnections_peersubnets_delete_with_http_info(cloud_instance_id, vpn_connection_id, body, opts)
524
+ data
525
+ end
526
+
527
+ # Detach Peer Subnet
528
+ # Detach peer subnet from a VPN Connection
529
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
530
+ # @param vpn_connection_id [String] ID of a VPN connection
531
+ # @param body [PeerSubnetUpdate] Peer subnet to detach
532
+ # @param [Hash] opts the optional parameters
533
+ # @return [Array<(PeerSubnets, Integer, Hash)>] PeerSubnets data, response status code and response headers
534
+ def pcloud_vpnconnections_peersubnets_delete_with_http_info(cloud_instance_id, vpn_connection_id, body, opts = {})
535
+ if @api_client.config.debugging
536
+ @api_client.config.logger.debug 'Calling API: PCloudVPNConnectionsApi.pcloud_vpnconnections_peersubnets_delete ...'
537
+ end
538
+ # verify the required parameter 'cloud_instance_id' is set
539
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
540
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_peersubnets_delete"
541
+ end
542
+ # verify the required parameter 'vpn_connection_id' is set
543
+ if @api_client.config.client_side_validation && vpn_connection_id.nil?
544
+ fail ArgumentError, "Missing the required parameter 'vpn_connection_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_peersubnets_delete"
545
+ end
546
+ # verify the required parameter 'body' is set
547
+ if @api_client.config.client_side_validation && body.nil?
548
+ fail ArgumentError, "Missing the required parameter 'body' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_peersubnets_delete"
549
+ end
550
+ # resource path
551
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}/peer-subnets'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'vpn_connection_id' + '}', CGI.escape(vpn_connection_id.to_s))
552
+
553
+ # query parameters
554
+ query_params = opts[:query_params] || {}
555
+
556
+ # header parameters
557
+ header_params = opts[:header_params] || {}
558
+ # HTTP header 'Accept' (if needed)
559
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
560
+ # HTTP header 'Content-Type'
561
+ content_type = @api_client.select_header_content_type(['application/json'])
562
+ if !content_type.nil?
563
+ header_params['Content-Type'] = content_type
564
+ end
565
+
566
+ # form parameters
567
+ form_params = opts[:form_params] || {}
568
+
569
+ # http body (model)
570
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
571
+
572
+ # return_type
573
+ return_type = opts[:debug_return_type] || 'PeerSubnets'
574
+
575
+ # auth_names
576
+ auth_names = opts[:debug_auth_names] || []
577
+
578
+ new_options = opts.merge(
579
+ :operation => :"PCloudVPNConnectionsApi.pcloud_vpnconnections_peersubnets_delete",
580
+ :header_params => header_params,
581
+ :query_params => query_params,
582
+ :form_params => form_params,
583
+ :body => post_body,
584
+ :auth_names => auth_names,
585
+ :return_type => return_type
586
+ )
587
+
588
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
589
+ if @api_client.config.debugging
590
+ @api_client.config.logger.debug "API called: PCloudVPNConnectionsApi#pcloud_vpnconnections_peersubnets_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
591
+ end
592
+ return data, status_code, headers
593
+ end
594
+
595
+ # Get Peer Subnets
596
+ # Get a list of peer subnets attached to a specific VPN Connection
597
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
598
+ # @param vpn_connection_id [String] ID of a VPN connection
599
+ # @param [Hash] opts the optional parameters
600
+ # @return [PeerSubnets]
601
+ def pcloud_vpnconnections_peersubnets_get(cloud_instance_id, vpn_connection_id, opts = {})
602
+ data, _status_code, _headers = pcloud_vpnconnections_peersubnets_get_with_http_info(cloud_instance_id, vpn_connection_id, opts)
603
+ data
604
+ end
605
+
606
+ # Get Peer Subnets
607
+ # Get a list of peer subnets attached to a specific VPN Connection
608
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
609
+ # @param vpn_connection_id [String] ID of a VPN connection
610
+ # @param [Hash] opts the optional parameters
611
+ # @return [Array<(PeerSubnets, Integer, Hash)>] PeerSubnets data, response status code and response headers
612
+ def pcloud_vpnconnections_peersubnets_get_with_http_info(cloud_instance_id, vpn_connection_id, opts = {})
613
+ if @api_client.config.debugging
614
+ @api_client.config.logger.debug 'Calling API: PCloudVPNConnectionsApi.pcloud_vpnconnections_peersubnets_get ...'
615
+ end
616
+ # verify the required parameter 'cloud_instance_id' is set
617
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
618
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_peersubnets_get"
619
+ end
620
+ # verify the required parameter 'vpn_connection_id' is set
621
+ if @api_client.config.client_side_validation && vpn_connection_id.nil?
622
+ fail ArgumentError, "Missing the required parameter 'vpn_connection_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_peersubnets_get"
623
+ end
624
+ # resource path
625
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}/peer-subnets'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'vpn_connection_id' + '}', CGI.escape(vpn_connection_id.to_s))
626
+
627
+ # query parameters
628
+ query_params = opts[:query_params] || {}
629
+
630
+ # header parameters
631
+ header_params = opts[:header_params] || {}
632
+ # HTTP header 'Accept' (if needed)
633
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
634
+
635
+ # form parameters
636
+ form_params = opts[:form_params] || {}
637
+
638
+ # http body (model)
639
+ post_body = opts[:debug_body]
640
+
641
+ # return_type
642
+ return_type = opts[:debug_return_type] || 'PeerSubnets'
643
+
644
+ # auth_names
645
+ auth_names = opts[:debug_auth_names] || []
646
+
647
+ new_options = opts.merge(
648
+ :operation => :"PCloudVPNConnectionsApi.pcloud_vpnconnections_peersubnets_get",
649
+ :header_params => header_params,
650
+ :query_params => query_params,
651
+ :form_params => form_params,
652
+ :body => post_body,
653
+ :auth_names => auth_names,
654
+ :return_type => return_type
655
+ )
656
+
657
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
658
+ if @api_client.config.debugging
659
+ @api_client.config.logger.debug "API called: PCloudVPNConnectionsApi#pcloud_vpnconnections_peersubnets_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
660
+ end
661
+ return data, status_code, headers
662
+ end
663
+
664
+ # Attach Peer Subnet
665
+ # Attach peer subnet to a VPN Connection
666
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
667
+ # @param vpn_connection_id [String] ID of a VPN connection
668
+ # @param body [PeerSubnetUpdate] peer subnet to attach
669
+ # @param [Hash] opts the optional parameters
670
+ # @return [PeerSubnets]
671
+ def pcloud_vpnconnections_peersubnets_put(cloud_instance_id, vpn_connection_id, body, opts = {})
672
+ data, _status_code, _headers = pcloud_vpnconnections_peersubnets_put_with_http_info(cloud_instance_id, vpn_connection_id, body, opts)
673
+ data
674
+ end
675
+
676
+ # Attach Peer Subnet
677
+ # Attach peer subnet to a VPN Connection
678
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
679
+ # @param vpn_connection_id [String] ID of a VPN connection
680
+ # @param body [PeerSubnetUpdate] peer subnet to attach
681
+ # @param [Hash] opts the optional parameters
682
+ # @return [Array<(PeerSubnets, Integer, Hash)>] PeerSubnets data, response status code and response headers
683
+ def pcloud_vpnconnections_peersubnets_put_with_http_info(cloud_instance_id, vpn_connection_id, body, opts = {})
684
+ if @api_client.config.debugging
685
+ @api_client.config.logger.debug 'Calling API: PCloudVPNConnectionsApi.pcloud_vpnconnections_peersubnets_put ...'
686
+ end
687
+ # verify the required parameter 'cloud_instance_id' is set
688
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
689
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_peersubnets_put"
690
+ end
691
+ # verify the required parameter 'vpn_connection_id' is set
692
+ if @api_client.config.client_side_validation && vpn_connection_id.nil?
693
+ fail ArgumentError, "Missing the required parameter 'vpn_connection_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_peersubnets_put"
694
+ end
695
+ # verify the required parameter 'body' is set
696
+ if @api_client.config.client_side_validation && body.nil?
697
+ fail ArgumentError, "Missing the required parameter 'body' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_peersubnets_put"
698
+ end
699
+ # resource path
700
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}/peer-subnets'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'vpn_connection_id' + '}', CGI.escape(vpn_connection_id.to_s))
701
+
702
+ # query parameters
703
+ query_params = opts[:query_params] || {}
704
+
705
+ # header parameters
706
+ header_params = opts[:header_params] || {}
707
+ # HTTP header 'Accept' (if needed)
708
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
709
+ # HTTP header 'Content-Type'
710
+ content_type = @api_client.select_header_content_type(['application/json'])
711
+ if !content_type.nil?
712
+ header_params['Content-Type'] = content_type
713
+ end
714
+
715
+ # form parameters
716
+ form_params = opts[:form_params] || {}
717
+
718
+ # http body (model)
719
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
720
+
721
+ # return_type
722
+ return_type = opts[:debug_return_type] || 'PeerSubnets'
723
+
724
+ # auth_names
725
+ auth_names = opts[:debug_auth_names] || []
726
+
727
+ new_options = opts.merge(
728
+ :operation => :"PCloudVPNConnectionsApi.pcloud_vpnconnections_peersubnets_put",
729
+ :header_params => header_params,
730
+ :query_params => query_params,
731
+ :form_params => form_params,
732
+ :body => post_body,
733
+ :auth_names => auth_names,
734
+ :return_type => return_type
735
+ )
736
+
737
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
738
+ if @api_client.config.debugging
739
+ @api_client.config.logger.debug "API called: PCloudVPNConnectionsApi#pcloud_vpnconnections_peersubnets_put\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
740
+ end
741
+ return data, status_code, headers
742
+ end
743
+
744
+ # Create VPN Connection
745
+ # Create a new VPN Connection
746
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
747
+ # @param body [VPNConnectionCreate] VPN Connection object used for creation
748
+ # @param [Hash] opts the optional parameters
749
+ # @return [VPNConnectionCreateResponse]
750
+ def pcloud_vpnconnections_post(cloud_instance_id, body, opts = {})
751
+ data, _status_code, _headers = pcloud_vpnconnections_post_with_http_info(cloud_instance_id, body, opts)
752
+ data
753
+ end
754
+
755
+ # Create VPN Connection
756
+ # Create a new VPN Connection
757
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
758
+ # @param body [VPNConnectionCreate] VPN Connection object used for creation
759
+ # @param [Hash] opts the optional parameters
760
+ # @return [Array<(VPNConnectionCreateResponse, Integer, Hash)>] VPNConnectionCreateResponse data, response status code and response headers
761
+ def pcloud_vpnconnections_post_with_http_info(cloud_instance_id, body, opts = {})
762
+ if @api_client.config.debugging
763
+ @api_client.config.logger.debug 'Calling API: PCloudVPNConnectionsApi.pcloud_vpnconnections_post ...'
764
+ end
765
+ # verify the required parameter 'cloud_instance_id' is set
766
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
767
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_post"
768
+ end
769
+ # verify the required parameter 'body' is set
770
+ if @api_client.config.client_side_validation && body.nil?
771
+ fail ArgumentError, "Missing the required parameter 'body' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_post"
772
+ end
773
+ # resource path
774
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s))
775
+
776
+ # query parameters
777
+ query_params = opts[:query_params] || {}
778
+
779
+ # header parameters
780
+ header_params = opts[:header_params] || {}
781
+ # HTTP header 'Accept' (if needed)
782
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
783
+ # HTTP header 'Content-Type'
784
+ content_type = @api_client.select_header_content_type(['application/json'])
785
+ if !content_type.nil?
786
+ header_params['Content-Type'] = content_type
787
+ end
788
+
789
+ # form parameters
790
+ form_params = opts[:form_params] || {}
791
+
792
+ # http body (model)
793
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
794
+
795
+ # return_type
796
+ return_type = opts[:debug_return_type] || 'VPNConnectionCreateResponse'
797
+
798
+ # auth_names
799
+ auth_names = opts[:debug_auth_names] || []
800
+
801
+ new_options = opts.merge(
802
+ :operation => :"PCloudVPNConnectionsApi.pcloud_vpnconnections_post",
803
+ :header_params => header_params,
804
+ :query_params => query_params,
805
+ :form_params => form_params,
806
+ :body => post_body,
807
+ :auth_names => auth_names,
808
+ :return_type => return_type
809
+ )
810
+
811
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
812
+ if @api_client.config.debugging
813
+ @api_client.config.logger.debug "API called: PCloudVPNConnectionsApi#pcloud_vpnconnections_post\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
814
+ end
815
+ return data, status_code, headers
816
+ end
817
+
818
+ # Update VPN Connection
819
+ # update a VPN Connection (by its identifier)
820
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
821
+ # @param vpn_connection_id [String] ID of a VPN connection
822
+ # @param body [VPNConnectionUpdate] VPN Connection object used for update
823
+ # @param [Hash] opts the optional parameters
824
+ # @return [VPNConnection]
825
+ def pcloud_vpnconnections_put(cloud_instance_id, vpn_connection_id, body, opts = {})
826
+ data, _status_code, _headers = pcloud_vpnconnections_put_with_http_info(cloud_instance_id, vpn_connection_id, body, opts)
827
+ data
828
+ end
829
+
830
+ # Update VPN Connection
831
+ # update a VPN Connection (by its identifier)
832
+ # @param cloud_instance_id [String] Cloud Instance ID of a PCloud Instance
833
+ # @param vpn_connection_id [String] ID of a VPN connection
834
+ # @param body [VPNConnectionUpdate] VPN Connection object used for update
835
+ # @param [Hash] opts the optional parameters
836
+ # @return [Array<(VPNConnection, Integer, Hash)>] VPNConnection data, response status code and response headers
837
+ def pcloud_vpnconnections_put_with_http_info(cloud_instance_id, vpn_connection_id, body, opts = {})
838
+ if @api_client.config.debugging
839
+ @api_client.config.logger.debug 'Calling API: PCloudVPNConnectionsApi.pcloud_vpnconnections_put ...'
840
+ end
841
+ # verify the required parameter 'cloud_instance_id' is set
842
+ if @api_client.config.client_side_validation && cloud_instance_id.nil?
843
+ fail ArgumentError, "Missing the required parameter 'cloud_instance_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_put"
844
+ end
845
+ # verify the required parameter 'vpn_connection_id' is set
846
+ if @api_client.config.client_side_validation && vpn_connection_id.nil?
847
+ fail ArgumentError, "Missing the required parameter 'vpn_connection_id' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_put"
848
+ end
849
+ # verify the required parameter 'body' is set
850
+ if @api_client.config.client_side_validation && body.nil?
851
+ fail ArgumentError, "Missing the required parameter 'body' when calling PCloudVPNConnectionsApi.pcloud_vpnconnections_put"
852
+ end
853
+ # resource path
854
+ local_var_path = '/pcloud/v1/cloud-instances/{cloud_instance_id}/vpn/vpn-connections/{vpn_connection_id}'.sub('{' + 'cloud_instance_id' + '}', CGI.escape(cloud_instance_id.to_s)).sub('{' + 'vpn_connection_id' + '}', CGI.escape(vpn_connection_id.to_s))
855
+
856
+ # query parameters
857
+ query_params = opts[:query_params] || {}
858
+
859
+ # header parameters
860
+ header_params = opts[:header_params] || {}
861
+ # HTTP header 'Accept' (if needed)
862
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
863
+ # HTTP header 'Content-Type'
864
+ content_type = @api_client.select_header_content_type(['application/json'])
865
+ if !content_type.nil?
866
+ header_params['Content-Type'] = content_type
867
+ end
868
+
869
+ # form parameters
870
+ form_params = opts[:form_params] || {}
871
+
872
+ # http body (model)
873
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
874
+
875
+ # return_type
876
+ return_type = opts[:debug_return_type] || 'VPNConnection'
877
+
878
+ # auth_names
879
+ auth_names = opts[:debug_auth_names] || []
880
+
881
+ new_options = opts.merge(
882
+ :operation => :"PCloudVPNConnectionsApi.pcloud_vpnconnections_put",
883
+ :header_params => header_params,
884
+ :query_params => query_params,
885
+ :form_params => form_params,
886
+ :body => post_body,
887
+ :auth_names => auth_names,
888
+ :return_type => return_type
889
+ )
890
+
891
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
892
+ if @api_client.config.debugging
893
+ @api_client.config.logger.debug "API called: PCloudVPNConnectionsApi#pcloud_vpnconnections_put\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
894
+ end
895
+ return data, status_code, headers
896
+ end
897
+ end
898
+ end