ionoscloud 6.0.0 → 6.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +70 -0
- data/README.md +10 -1
- data/docs/CHANGELOG.md +22 -0
- data/docs/README.md +2 -2
- data/docs/api/ApplicationLoadBalancersApi.md +1586 -0
- data/docs/api/BackupUnitsApi.md +14 -14
- data/docs/api/ContractResourcesApi.md +2 -2
- data/docs/api/DataCentersApi.md +15 -15
- data/docs/api/DefaultApi.md +2 -2
- data/docs/api/FirewallRulesApi.md +14 -14
- data/docs/api/FlowLogsApi.md +2 -2
- data/docs/api/IPBlocksApi.md +14 -14
- data/docs/api/ImagesApi.md +10 -10
- data/docs/api/KubernetesApi.md +30 -30
- data/docs/api/LANsApi.md +22 -22
- data/docs/api/LabelsApi.md +54 -54
- data/docs/api/LoadBalancersApi.md +22 -22
- data/docs/api/LocationsApi.md +6 -6
- data/docs/api/NATGatewaysApi.md +26 -26
- data/docs/api/NetworkInterfacesApi.md +14 -14
- data/docs/api/NetworkLoadBalancersApi.md +38 -38
- data/docs/api/PrivateCrossConnectsApi.md +10 -10
- data/docs/api/RequestsApi.md +8 -8
- data/docs/api/ServersApi.md +62 -52
- data/docs/api/SnapshotsApi.md +10 -10
- data/docs/api/TargetGroupsApi.md +516 -0
- data/docs/api/UserManagementApi.md +50 -50
- data/docs/api/UserS3KeysApi.md +12 -12
- data/docs/api/VolumesApi.md +18 -18
- data/docs/models/ApplicationLoadBalancer.md +28 -0
- data/docs/models/ApplicationLoadBalancerEntities.md +18 -0
- data/docs/models/ApplicationLoadBalancerForwardingRule.md +26 -0
- data/docs/models/ApplicationLoadBalancerForwardingRuleProperties.md +30 -0
- data/docs/models/ApplicationLoadBalancerForwardingRulePut.md +24 -0
- data/docs/models/ApplicationLoadBalancerForwardingRules.md +30 -0
- data/docs/models/ApplicationLoadBalancerHttpRule.md +34 -0
- data/docs/models/ApplicationLoadBalancerHttpRuleCondition.md +26 -0
- data/docs/models/ApplicationLoadBalancerProperties.md +26 -0
- data/docs/models/ApplicationLoadBalancerPut.md +24 -0
- data/docs/models/ApplicationLoadBalancers.md +30 -0
- data/docs/models/AttachedVolumes.md +1 -1
- data/docs/models/BackupUnits.md +1 -1
- data/docs/models/BalancedNics.md +1 -1
- data/docs/models/Cdroms.md +1 -1
- data/docs/models/Contracts.md +1 -1
- data/docs/models/Datacenters.md +1 -1
- data/docs/models/ErrorMessage.md +1 -1
- data/docs/models/FirewallRules.md +1 -1
- data/docs/models/FirewallruleProperties.md +1 -1
- data/docs/models/FlowLogs.md +1 -1
- data/docs/models/GroupMembers.md +1 -1
- data/docs/models/GroupShares.md +1 -1
- data/docs/models/GroupUsers.md +1 -1
- data/docs/models/Groups.md +1 -1
- data/docs/models/Images.md +1 -1
- data/docs/models/IpBlocks.md +3 -3
- data/docs/models/KubernetesClusterProperties.md +1 -1
- data/docs/models/KubernetesClusterPropertiesForPost.md +1 -1
- data/docs/models/KubernetesClusterPropertiesForPut.md +1 -1
- data/docs/models/KubernetesClusters.md +1 -1
- data/docs/models/KubernetesNodePoolProperties.md +1 -1
- data/docs/models/KubernetesNodePoolPropertiesForPost.md +1 -1
- data/docs/models/KubernetesNodePoolPropertiesForPut.md +1 -1
- data/docs/models/KubernetesNodePools.md +1 -1
- data/docs/models/KubernetesNodes.md +1 -1
- data/docs/models/LabelResources.md +1 -1
- data/docs/models/Labels.md +1 -1
- data/docs/models/LanNics.md +1 -1
- data/docs/models/Lans.md +1 -1
- data/docs/models/Loadbalancers.md +1 -1
- data/docs/models/Locations.md +1 -1
- data/docs/models/NatGatewayProperties.md +1 -1
- data/docs/models/NatGatewayRules.md +1 -1
- data/docs/models/NatGateways.md +1 -1
- data/docs/models/NetworkLoadBalancerForwardingRuleHealthCheck.md +4 -4
- data/docs/models/NetworkLoadBalancerForwardingRuleProperties.md +5 -5
- data/docs/models/NetworkLoadBalancerForwardingRuleTarget.md +3 -3
- data/docs/models/NetworkLoadBalancerForwardingRuleTargetHealthCheck.md +3 -3
- data/docs/models/NetworkLoadBalancerForwardingRules.md +1 -1
- data/docs/models/NetworkLoadBalancerProperties.md +2 -2
- data/docs/models/NetworkLoadBalancers.md +1 -1
- data/docs/models/NicProperties.md +3 -3
- data/docs/models/Nics.md +1 -1
- data/docs/models/PrivateCrossConnects.md +1 -1
- data/docs/models/Requests.md +3 -3
- data/docs/models/ResourceGroups.md +1 -1
- data/docs/models/Resources.md +1 -1
- data/docs/models/ResourcesUsers.md +1 -1
- data/docs/models/S3Keys.md +1 -1
- data/docs/models/Servers.md +1 -1
- data/docs/models/Snapshots.md +1 -1
- data/docs/models/TargetGroup.md +26 -0
- data/docs/models/TargetGroupHealthCheck.md +22 -0
- data/docs/models/TargetGroupHttpHealthCheck.md +28 -0
- data/docs/models/TargetGroupProperties.md +28 -0
- data/docs/models/TargetGroupPut.md +24 -0
- data/docs/models/TargetGroupTarget.md +26 -0
- data/docs/models/TargetGroups.md +30 -0
- data/docs/models/Templates.md +1 -1
- data/docs/models/Users.md +1 -1
- data/docs/models/VolumeProperties.md +4 -2
- data/docs/models/Volumes.md +1 -1
- data/git_push.sh +0 -3
- data/lib/ionoscloud/api/_api.rb +2 -2
- data/lib/ionoscloud/api/application_load_balancers_api.rb +1690 -0
- data/lib/ionoscloud/api/backup_units_api.rb +14 -14
- data/lib/ionoscloud/api/contract_resources_api.rb +2 -2
- data/lib/ionoscloud/api/data_centers_api.rb +16 -16
- data/lib/ionoscloud/api/firewall_rules_api.rb +14 -14
- data/lib/ionoscloud/api/flow_logs_api.rb +2 -2
- data/lib/ionoscloud/api/images_api.rb +10 -10
- data/lib/ionoscloud/api/ip_blocks_api.rb +14 -14
- data/lib/ionoscloud/api/kubernetes_api.rb +30 -30
- data/lib/ionoscloud/api/labels_api.rb +54 -54
- data/lib/ionoscloud/api/lans_api.rb +22 -22
- data/lib/ionoscloud/api/load_balancers_api.rb +22 -22
- data/lib/ionoscloud/api/locations_api.rb +6 -6
- data/lib/ionoscloud/api/nat_gateways_api.rb +26 -26
- data/lib/ionoscloud/api/network_interfaces_api.rb +14 -14
- data/lib/ionoscloud/api/network_load_balancers_api.rb +38 -38
- data/lib/ionoscloud/api/private_cross_connects_api.rb +10 -10
- data/lib/ionoscloud/api/requests_api.rb +8 -8
- data/lib/ionoscloud/api/servers_api.rb +52 -52
- data/lib/ionoscloud/api/snapshots_api.rb +10 -10
- data/lib/ionoscloud/api/target_groups_api.rb +530 -0
- data/lib/ionoscloud/api/user_management_api.rb +50 -50
- data/lib/ionoscloud/api/user_s3_keys_api.rb +12 -12
- data/lib/ionoscloud/api/volumes_api.rb +19 -19
- data/lib/ionoscloud/api_client.rb +1 -1
- data/lib/ionoscloud/configuration.rb +11 -26
- data/lib/ionoscloud/models/application_load_balancer.rb +319 -0
- data/lib/ionoscloud/models/application_load_balancer_entities.rb +226 -0
- data/lib/ionoscloud/models/application_load_balancer_forwarding_rule.rb +302 -0
- data/lib/ionoscloud/models/application_load_balancer_forwarding_rule_properties.rb +389 -0
- data/lib/ionoscloud/models/application_load_balancer_forwarding_rule_put.rb +285 -0
- data/lib/ionoscloud/models/application_load_balancer_forwarding_rules.rb +334 -0
- data/lib/ionoscloud/models/application_load_balancer_http_rule.rb +427 -0
- data/lib/ionoscloud/models/application_load_balancer_http_rule_condition.rb +355 -0
- data/lib/ionoscloud/models/application_load_balancer_properties.rb +314 -0
- data/lib/ionoscloud/models/application_load_balancer_put.rb +285 -0
- data/lib/ionoscloud/models/application_load_balancers.rb +334 -0
- data/lib/ionoscloud/models/attached_volumes.rb +1 -1
- data/lib/ionoscloud/models/backup_units.rb +1 -1
- data/lib/ionoscloud/models/balanced_nics.rb +1 -1
- data/lib/ionoscloud/models/cdroms.rb +1 -1
- data/lib/ionoscloud/models/contracts.rb +1 -1
- data/lib/ionoscloud/models/datacenters.rb +1 -1
- data/lib/ionoscloud/models/error_message.rb +1 -1
- data/lib/ionoscloud/models/firewall_rules.rb +1 -1
- data/lib/ionoscloud/models/firewallrule_properties.rb +6 -1
- data/lib/ionoscloud/models/flow_logs.rb +1 -1
- data/lib/ionoscloud/models/group_members.rb +1 -1
- data/lib/ionoscloud/models/group_shares.rb +1 -1
- data/lib/ionoscloud/models/group_users.rb +1 -1
- data/lib/ionoscloud/models/groups.rb +1 -1
- data/lib/ionoscloud/models/image_properties.rb +2 -2
- data/lib/ionoscloud/models/images.rb +1 -1
- data/lib/ionoscloud/models/ip_blocks.rb +3 -3
- data/lib/ionoscloud/models/kubernetes_cluster_properties.rb +1 -1
- data/lib/ionoscloud/models/kubernetes_cluster_properties_for_post.rb +1 -1
- data/lib/ionoscloud/models/kubernetes_cluster_properties_for_put.rb +1 -1
- data/lib/ionoscloud/models/kubernetes_clusters.rb +1 -1
- data/lib/ionoscloud/models/kubernetes_node_pool_properties.rb +1 -1
- data/lib/ionoscloud/models/kubernetes_node_pool_properties_for_post.rb +1 -1
- data/lib/ionoscloud/models/kubernetes_node_pool_properties_for_put.rb +1 -1
- data/lib/ionoscloud/models/kubernetes_node_pools.rb +1 -1
- data/lib/ionoscloud/models/kubernetes_nodes.rb +1 -1
- data/lib/ionoscloud/models/label_resources.rb +1 -1
- data/lib/ionoscloud/models/labels.rb +1 -1
- data/lib/ionoscloud/models/lan_nics.rb +1 -1
- data/lib/ionoscloud/models/lans.rb +1 -1
- data/lib/ionoscloud/models/loadbalancer_properties.rb +1 -0
- data/lib/ionoscloud/models/loadbalancers.rb +1 -1
- data/lib/ionoscloud/models/locations.rb +1 -1
- data/lib/ionoscloud/models/nat_gateway_properties.rb +1 -1
- data/lib/ionoscloud/models/nat_gateway_rules.rb +1 -1
- data/lib/ionoscloud/models/nat_gateways.rb +1 -1
- data/lib/ionoscloud/models/network_load_balancer_forwarding_rule_health_check.rb +4 -4
- data/lib/ionoscloud/models/network_load_balancer_forwarding_rule_properties.rb +5 -5
- data/lib/ionoscloud/models/network_load_balancer_forwarding_rule_target.rb +3 -3
- data/lib/ionoscloud/models/network_load_balancer_forwarding_rule_target_health_check.rb +3 -3
- data/lib/ionoscloud/models/network_load_balancer_forwarding_rules.rb +1 -1
- data/lib/ionoscloud/models/network_load_balancer_properties.rb +2 -2
- data/lib/ionoscloud/models/network_load_balancers.rb +1 -1
- data/lib/ionoscloud/models/nic_properties.rb +4 -3
- data/lib/ionoscloud/models/nics.rb +1 -1
- data/lib/ionoscloud/models/private_cross_connects.rb +1 -1
- data/lib/ionoscloud/models/requests.rb +3 -3
- data/lib/ionoscloud/models/resource_groups.rb +1 -1
- data/lib/ionoscloud/models/resources.rb +1 -1
- data/lib/ionoscloud/models/resources_users.rb +1 -1
- data/lib/ionoscloud/models/s3_keys.rb +1 -1
- data/lib/ionoscloud/models/servers.rb +1 -1
- data/lib/ionoscloud/models/snapshot_properties.rb +2 -2
- data/lib/ionoscloud/models/snapshots.rb +1 -1
- data/lib/ionoscloud/models/target_group.rb +302 -0
- data/lib/ionoscloud/models/target_group_health_check.rb +263 -0
- data/lib/ionoscloud/models/target_group_http_health_check.rb +373 -0
- data/lib/ionoscloud/models/target_group_properties.rb +376 -0
- data/lib/ionoscloud/models/target_group_put.rb +285 -0
- data/lib/ionoscloud/models/target_group_target.rb +314 -0
- data/lib/ionoscloud/models/target_groups.rb +334 -0
- data/lib/ionoscloud/models/templates.rb +1 -1
- data/lib/ionoscloud/models/users.rb +1 -1
- data/lib/ionoscloud/models/volume_properties.rb +25 -7
- data/lib/ionoscloud/models/volumes.rb +1 -1
- data/lib/ionoscloud/version.rb +1 -1
- data/lib/ionoscloud.rb +20 -0
- metadata +46 -5
|
@@ -26,7 +26,7 @@ module Ionoscloud
|
|
|
26
26
|
# @param [Hash] opts the optional parameters
|
|
27
27
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true)
|
|
28
28
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on (default to 0)
|
|
29
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
29
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
30
30
|
# @option opts [String] :name Snapshot name
|
|
31
31
|
# @option opts [String] :description Snapshot description
|
|
32
32
|
# @option opts [Boolean] :sec_auth_protection Flag for enabling extra protection for this snapshot, such as two-step verification.
|
|
@@ -44,7 +44,7 @@ module Ionoscloud
|
|
|
44
44
|
# @param [Hash] opts the optional parameters
|
|
45
45
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines).
|
|
46
46
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on
|
|
47
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
47
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
48
48
|
# @option opts [String] :name Snapshot name
|
|
49
49
|
# @option opts [String] :description Snapshot description
|
|
50
50
|
# @option opts [Boolean] :sec_auth_protection Flag for enabling extra protection for this snapshot, such as two-step verification.
|
|
@@ -70,7 +70,7 @@ module Ionoscloud
|
|
|
70
70
|
fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling VolumesApi.datacenters_volumes_create_snapshot_post, must be greater than or equal to 0.'
|
|
71
71
|
end
|
|
72
72
|
|
|
73
|
-
allowable_values = ["UNKNOWN", "WINDOWS", "WINDOWS2016", "LINUX", "OTHER"]
|
|
73
|
+
allowable_values = ["UNKNOWN", "WINDOWS", "WINDOWS2016", "WINDOWS2022", "LINUX", "OTHER"]
|
|
74
74
|
if @api_client.config.client_side_validation && opts[:'licence_type'] && !allowable_values.include?(opts[:'licence_type'])
|
|
75
75
|
fail ArgumentError, "invalid value for \"licence_type\", must be one of #{allowable_values}"
|
|
76
76
|
end
|
|
@@ -130,7 +130,7 @@ module Ionoscloud
|
|
|
130
130
|
# @param [Hash] opts the optional parameters
|
|
131
131
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true)
|
|
132
132
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on (default to 0)
|
|
133
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
133
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
134
134
|
# @return [nil]
|
|
135
135
|
def datacenters_volumes_delete(datacenter_id, volume_id, opts = {})
|
|
136
136
|
datacenters_volumes_delete_with_http_info(datacenter_id, volume_id, opts)
|
|
@@ -144,7 +144,7 @@ module Ionoscloud
|
|
|
144
144
|
# @param [Hash] opts the optional parameters
|
|
145
145
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines).
|
|
146
146
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on
|
|
147
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
147
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
148
148
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
149
149
|
def datacenters_volumes_delete_with_http_info(datacenter_id, volume_id, opts = {})
|
|
150
150
|
if @api_client.config.debugging
|
|
@@ -216,7 +216,7 @@ module Ionoscloud
|
|
|
216
216
|
# @param [Hash] opts the optional parameters
|
|
217
217
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true)
|
|
218
218
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on (default to 0)
|
|
219
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
219
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
220
220
|
# @return [Volume]
|
|
221
221
|
def datacenters_volumes_find_by_id(datacenter_id, volume_id, opts = {})
|
|
222
222
|
data, _status_code, _headers = datacenters_volumes_find_by_id_with_http_info(datacenter_id, volume_id, opts)
|
|
@@ -230,7 +230,7 @@ module Ionoscloud
|
|
|
230
230
|
# @param [Hash] opts the optional parameters
|
|
231
231
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines).
|
|
232
232
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on
|
|
233
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
233
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
234
234
|
# @return [Array<(Volume, Integer, Hash)>] Volume data, response status code and response headers
|
|
235
235
|
def datacenters_volumes_find_by_id_with_http_info(datacenter_id, volume_id, opts = {})
|
|
236
236
|
if @api_client.config.debugging
|
|
@@ -301,8 +301,8 @@ module Ionoscloud
|
|
|
301
301
|
# @param [Hash] opts the optional parameters
|
|
302
302
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true)
|
|
303
303
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on (default to 0)
|
|
304
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
305
|
-
# @option opts [Integer] :offset The first element (from the complete list of the elements) to include in the response (
|
|
304
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
305
|
+
# @option opts [Integer] :offset The first element (from the complete list of the elements) to include in the response (used together with <b><i>limit</i></b> for pagination). (default to 0)
|
|
306
306
|
# @option opts [Integer] :limit The maximum number of elements to return (use together with offset for pagination). (default to 1000)
|
|
307
307
|
# @return [Volumes]
|
|
308
308
|
def datacenters_volumes_get(datacenter_id, opts = {})
|
|
@@ -316,8 +316,8 @@ module Ionoscloud
|
|
|
316
316
|
# @param [Hash] opts the optional parameters
|
|
317
317
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines).
|
|
318
318
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on
|
|
319
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
320
|
-
# @option opts [Integer] :offset The first element (from the complete list of the elements) to include in the response (
|
|
319
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
320
|
+
# @option opts [Integer] :offset The first element (from the complete list of the elements) to include in the response (used together with <b><i>limit</i></b> for pagination).
|
|
321
321
|
# @option opts [Integer] :limit The maximum number of elements to return (use together with offset for pagination).
|
|
322
322
|
# @return [Array<(Volumes, Integer, Hash)>] Volumes data, response status code and response headers
|
|
323
323
|
def datacenters_volumes_get_with_http_info(datacenter_id, opts = {})
|
|
@@ -401,7 +401,7 @@ module Ionoscloud
|
|
|
401
401
|
# @param [Hash] opts the optional parameters
|
|
402
402
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true)
|
|
403
403
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on (default to 0)
|
|
404
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
404
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
405
405
|
# @return [Volume]
|
|
406
406
|
def datacenters_volumes_patch(datacenter_id, volume_id, volume, opts = {})
|
|
407
407
|
data, _status_code, _headers = datacenters_volumes_patch_with_http_info(datacenter_id, volume_id, volume, opts)
|
|
@@ -416,7 +416,7 @@ module Ionoscloud
|
|
|
416
416
|
# @param [Hash] opts the optional parameters
|
|
417
417
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines).
|
|
418
418
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on
|
|
419
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
419
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
420
420
|
# @return [Array<(Volume, Integer, Hash)>] Volume data, response status code and response headers
|
|
421
421
|
def datacenters_volumes_patch_with_http_info(datacenter_id, volume_id, volume, opts = {})
|
|
422
422
|
if @api_client.config.debugging
|
|
@@ -494,7 +494,7 @@ module Ionoscloud
|
|
|
494
494
|
# @param [Hash] opts the optional parameters
|
|
495
495
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true)
|
|
496
496
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on (default to 0)
|
|
497
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
497
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
498
498
|
# @return [Volume]
|
|
499
499
|
def datacenters_volumes_post(datacenter_id, volume, opts = {})
|
|
500
500
|
data, _status_code, _headers = datacenters_volumes_post_with_http_info(datacenter_id, volume, opts)
|
|
@@ -508,7 +508,7 @@ module Ionoscloud
|
|
|
508
508
|
# @param [Hash] opts the optional parameters
|
|
509
509
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines).
|
|
510
510
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on
|
|
511
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
511
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
512
512
|
# @return [Array<(Volume, Integer, Hash)>] Volume data, response status code and response headers
|
|
513
513
|
def datacenters_volumes_post_with_http_info(datacenter_id, volume, opts = {})
|
|
514
514
|
if @api_client.config.debugging
|
|
@@ -583,7 +583,7 @@ module Ionoscloud
|
|
|
583
583
|
# @param [Hash] opts the optional parameters
|
|
584
584
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true)
|
|
585
585
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on (default to 0)
|
|
586
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
586
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
587
587
|
# @return [Volume]
|
|
588
588
|
def datacenters_volumes_put(datacenter_id, volume_id, volume, opts = {})
|
|
589
589
|
data, _status_code, _headers = datacenters_volumes_put_with_http_info(datacenter_id, volume_id, volume, opts)
|
|
@@ -598,7 +598,7 @@ module Ionoscloud
|
|
|
598
598
|
# @param [Hash] opts the optional parameters
|
|
599
599
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines).
|
|
600
600
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on
|
|
601
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
601
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
602
602
|
# @return [Array<(Volume, Integer, Hash)>] Volume data, response status code and response headers
|
|
603
603
|
def datacenters_volumes_put_with_http_info(datacenter_id, volume_id, volume, opts = {})
|
|
604
604
|
if @api_client.config.debugging
|
|
@@ -676,7 +676,7 @@ module Ionoscloud
|
|
|
676
676
|
# @param [Hash] opts the optional parameters
|
|
677
677
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true)
|
|
678
678
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on (default to 0)
|
|
679
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
679
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
680
680
|
# @option opts [String] :snapshot_id The unique ID of the snapshot.
|
|
681
681
|
# @return [nil]
|
|
682
682
|
def datacenters_volumes_restore_snapshot_post(datacenter_id, volume_id, opts = {})
|
|
@@ -691,7 +691,7 @@ module Ionoscloud
|
|
|
691
691
|
# @param [Hash] opts the optional parameters
|
|
692
692
|
# @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines).
|
|
693
693
|
# @option opts [Integer] :depth Controls the detail depth of the response objects. GET /datacenters/[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on
|
|
694
|
-
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number,
|
|
694
|
+
# @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
|
|
695
695
|
# @option opts [String] :snapshot_id The unique ID of the snapshot.
|
|
696
696
|
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
697
697
|
def datacenters_volumes_restore_snapshot_post_with_http_info(datacenter_id, volume_id, opts = {})
|
|
@@ -38,7 +38,7 @@ module Ionoscloud
|
|
|
38
38
|
# @option config [Configuration] Configuration for initializing the object, default to Configuration.default
|
|
39
39
|
def initialize(config = Configuration.default)
|
|
40
40
|
@config = config
|
|
41
|
-
@user_agent = "ionos-cloud-sdk-ruby/
|
|
41
|
+
@user_agent = "ionos-cloud-sdk-ruby/v6.1.0"
|
|
42
42
|
@default_headers = {
|
|
43
43
|
'Content-Type' => 'application/json',
|
|
44
44
|
'User-Agent' => @user_agent
|
|
@@ -33,21 +33,16 @@ module Ionoscloud
|
|
|
33
33
|
# Default server operation variables
|
|
34
34
|
attr_accessor :server_operation_variables
|
|
35
35
|
|
|
36
|
-
# Defines
|
|
36
|
+
# Defines Tokens used with Token authentications.
|
|
37
37
|
#
|
|
38
|
-
# @return [
|
|
39
|
-
|
|
40
|
-
# @example parameter name is "api_key", API key is "xxx" (e.g. "api_key=xxx" in query string)
|
|
41
|
-
# config.api_key['api_key'] = 'xxx'
|
|
42
|
-
attr_accessor :api_key
|
|
38
|
+
# @return [String]
|
|
39
|
+
attr_accessor :token
|
|
43
40
|
|
|
44
|
-
# Defines
|
|
41
|
+
# Defines Token prefixes used with Token authentications.
|
|
42
|
+
# Default to 'Bearer'.
|
|
45
43
|
#
|
|
46
|
-
# @return [
|
|
47
|
-
|
|
48
|
-
# @example parameter name is "Authorization", API key prefix is "Token" (e.g. "Authorization: Token xxx" in headers)
|
|
49
|
-
# config.api_key_prefix['api_key'] = 'Token'
|
|
50
|
-
attr_accessor :api_key_prefix
|
|
44
|
+
# @return [String]
|
|
45
|
+
attr_accessor :token_prefix
|
|
51
46
|
|
|
52
47
|
# Defines the username used with HTTP basic authentication.
|
|
53
48
|
#
|
|
@@ -151,8 +146,8 @@ module Ionoscloud
|
|
|
151
146
|
@server_operation_index = {}
|
|
152
147
|
@server_variables = {}
|
|
153
148
|
@server_operation_variables = {}
|
|
154
|
-
@
|
|
155
|
-
@
|
|
149
|
+
@token = nil
|
|
150
|
+
@token_prefix = 'Bearer'
|
|
156
151
|
@timeout = 0
|
|
157
152
|
@client_side_validation = true
|
|
158
153
|
@verify_ssl = true
|
|
@@ -204,16 +199,6 @@ module Ionoscloud
|
|
|
204
199
|
server_url(index, server_operation_variables.fetch(operation, server_variables), operation_server_settings[operation])
|
|
205
200
|
end
|
|
206
201
|
|
|
207
|
-
# Gets API key (with prefix if set).
|
|
208
|
-
# @param [String] param_name the parameter name of API key auth
|
|
209
|
-
def api_key_with_prefix(param_name)
|
|
210
|
-
if @api_key_prefix[param_name]
|
|
211
|
-
"#{@api_key_prefix[param_name]} #{@api_key[param_name]}"
|
|
212
|
-
else
|
|
213
|
-
@api_key[param_name]
|
|
214
|
-
end
|
|
215
|
-
end
|
|
216
|
-
|
|
217
202
|
# Gets Basic Auth token string
|
|
218
203
|
def basic_auth_token
|
|
219
204
|
'Basic ' + ["#{username}:#{password}"].pack('m').delete("\r\n")
|
|
@@ -231,10 +216,10 @@ module Ionoscloud
|
|
|
231
216
|
},
|
|
232
217
|
'Token Authentication' =>
|
|
233
218
|
{
|
|
234
|
-
type: '
|
|
219
|
+
type: 'token',
|
|
235
220
|
in: 'header',
|
|
236
221
|
key: 'Authorization',
|
|
237
|
-
value:
|
|
222
|
+
value: token.nil? ? nil : "#{token_prefix} #{token}"
|
|
238
223
|
},
|
|
239
224
|
}
|
|
240
225
|
end
|
|
@@ -0,0 +1,319 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#CLOUD API
|
|
3
|
+
|
|
4
|
+
#IONOS Enterprise-grade Infrastructure as a Service (IaaS) solutions can be managed through the Cloud API, in addition or as an alternative to the \"Data Center Designer\" (DCD) browser-based tool. Both methods employ consistent concepts and features, deliver similar power and flexibility, and can be used to perform a multitude of management tasks, including adding servers, volumes, configuring networks, and so on.
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 6.0
|
|
7
|
+
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
OpenAPI Generator version: 5.2.1-SNAPSHOT
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'date'
|
|
14
|
+
require 'time'
|
|
15
|
+
|
|
16
|
+
module Ionoscloud
|
|
17
|
+
class ApplicationLoadBalancer
|
|
18
|
+
|
|
19
|
+
# The resource's unique identifier.
|
|
20
|
+
attr_accessor :id
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
# The type of object that has been created.
|
|
24
|
+
attr_accessor :type
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
# URL to the object representation (absolute path).
|
|
28
|
+
attr_accessor :href
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
attr_accessor :metadata
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
attr_accessor :properties
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
attr_accessor :entities
|
|
38
|
+
|
|
39
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
40
|
+
def self.attribute_map
|
|
41
|
+
{
|
|
42
|
+
|
|
43
|
+
:'id' => :'id',
|
|
44
|
+
|
|
45
|
+
:'type' => :'type',
|
|
46
|
+
|
|
47
|
+
:'href' => :'href',
|
|
48
|
+
|
|
49
|
+
:'metadata' => :'metadata',
|
|
50
|
+
|
|
51
|
+
:'properties' => :'properties',
|
|
52
|
+
|
|
53
|
+
:'entities' => :'entities'
|
|
54
|
+
}
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
# Returns all the JSON keys this model knows about
|
|
58
|
+
def self.acceptable_attributes
|
|
59
|
+
attribute_map.values
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# Attribute type mapping.
|
|
63
|
+
def self.openapi_types
|
|
64
|
+
{
|
|
65
|
+
|
|
66
|
+
:'id' => :'String',
|
|
67
|
+
|
|
68
|
+
:'type' => :'Type',
|
|
69
|
+
|
|
70
|
+
:'href' => :'String',
|
|
71
|
+
|
|
72
|
+
:'metadata' => :'DatacenterElementMetadata',
|
|
73
|
+
|
|
74
|
+
:'properties' => :'ApplicationLoadBalancerProperties',
|
|
75
|
+
|
|
76
|
+
:'entities' => :'ApplicationLoadBalancerEntities'
|
|
77
|
+
}
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
# List of attributes with nullable: true
|
|
81
|
+
def self.openapi_nullable
|
|
82
|
+
Set.new([
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
])
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
# Initializes the object
|
|
93
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
94
|
+
def initialize(attributes = {})
|
|
95
|
+
if (!attributes.is_a?(Hash))
|
|
96
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `Ionoscloud::ApplicationLoadBalancer` initialize method"
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
|
100
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
|
101
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
|
102
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `Ionoscloud::ApplicationLoadBalancer`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
|
103
|
+
end
|
|
104
|
+
h[k.to_sym] = v
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
if attributes.key?(:'id')
|
|
109
|
+
self.id = attributes[:'id']
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
if attributes.key?(:'type')
|
|
114
|
+
self.type = attributes[:'type']
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
if attributes.key?(:'href')
|
|
119
|
+
self.href = attributes[:'href']
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
if attributes.key?(:'metadata')
|
|
124
|
+
self.metadata = attributes[:'metadata']
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
if attributes.key?(:'properties')
|
|
129
|
+
self.properties = attributes[:'properties']
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
if attributes.key?(:'entities')
|
|
134
|
+
self.entities = attributes[:'entities']
|
|
135
|
+
end
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
|
139
|
+
# @return Array for valid properties with the reasons
|
|
140
|
+
def list_invalid_properties
|
|
141
|
+
invalid_properties = Array.new
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
if @properties.nil?
|
|
148
|
+
invalid_properties.push('invalid value for "properties", properties cannot be nil.')
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
invalid_properties
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
# Check to see if the all the properties in the model are valid
|
|
156
|
+
# @return true if the model is valid
|
|
157
|
+
def valid?
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
return false if @properties.nil?
|
|
164
|
+
|
|
165
|
+
true
|
|
166
|
+
end
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
# Checks equality by comparing each attribute.
|
|
175
|
+
# @param [Object] Object to be compared
|
|
176
|
+
def ==(o)
|
|
177
|
+
return true if self.equal?(o)
|
|
178
|
+
self.class == o.class &&
|
|
179
|
+
id == o.id &&
|
|
180
|
+
type == o.type &&
|
|
181
|
+
href == o.href &&
|
|
182
|
+
metadata == o.metadata &&
|
|
183
|
+
properties == o.properties &&
|
|
184
|
+
entities == o.entities
|
|
185
|
+
end
|
|
186
|
+
|
|
187
|
+
# @see the `==` method
|
|
188
|
+
# @param [Object] Object to be compared
|
|
189
|
+
def eql?(o)
|
|
190
|
+
self == o
|
|
191
|
+
end
|
|
192
|
+
|
|
193
|
+
# Calculates hash code according to all attributes.
|
|
194
|
+
# @return [Integer] Hash code
|
|
195
|
+
def hash
|
|
196
|
+
[id, type, href, metadata, properties, entities].hash
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
# Builds the object from hash
|
|
200
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
201
|
+
# @return [Object] Returns the model itself
|
|
202
|
+
def self.build_from_hash(attributes)
|
|
203
|
+
new.build_from_hash(attributes)
|
|
204
|
+
end
|
|
205
|
+
|
|
206
|
+
# Builds the object from hash
|
|
207
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
208
|
+
# @return [Object] Returns the model itself
|
|
209
|
+
def build_from_hash(attributes)
|
|
210
|
+
return nil unless attributes.is_a?(Hash)
|
|
211
|
+
self.class.openapi_types.each_pair do |key, type|
|
|
212
|
+
if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
|
|
213
|
+
self.send("#{key}=", nil)
|
|
214
|
+
elsif type =~ /\AArray<(.*)>/i
|
|
215
|
+
# check to ensure the input is an array given that the attribute
|
|
216
|
+
# is documented as an array but the input is not
|
|
217
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
|
218
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
|
219
|
+
end
|
|
220
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
|
221
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
|
222
|
+
end
|
|
223
|
+
end
|
|
224
|
+
|
|
225
|
+
self
|
|
226
|
+
end
|
|
227
|
+
|
|
228
|
+
# Deserializes the data based on type
|
|
229
|
+
# @param string type Data type
|
|
230
|
+
# @param string value Value to be deserialized
|
|
231
|
+
# @return [Object] Deserialized data
|
|
232
|
+
def _deserialize(type, value)
|
|
233
|
+
case type.to_sym
|
|
234
|
+
when :Time
|
|
235
|
+
Time.parse(value)
|
|
236
|
+
when :Date
|
|
237
|
+
Date.parse(value)
|
|
238
|
+
when :String
|
|
239
|
+
value.to_s
|
|
240
|
+
when :Integer
|
|
241
|
+
value.to_i
|
|
242
|
+
when :Float
|
|
243
|
+
value.to_f
|
|
244
|
+
when :Boolean
|
|
245
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
|
246
|
+
true
|
|
247
|
+
else
|
|
248
|
+
false
|
|
249
|
+
end
|
|
250
|
+
when :Object
|
|
251
|
+
# generic object (usually a Hash), return directly
|
|
252
|
+
value
|
|
253
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
|
254
|
+
inner_type = Regexp.last_match[:inner_type]
|
|
255
|
+
value.map { |v| _deserialize(inner_type, v) }
|
|
256
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
|
257
|
+
k_type = Regexp.last_match[:k_type]
|
|
258
|
+
v_type = Regexp.last_match[:v_type]
|
|
259
|
+
{}.tap do |hash|
|
|
260
|
+
value.each do |k, v|
|
|
261
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
|
262
|
+
end
|
|
263
|
+
end
|
|
264
|
+
else # model
|
|
265
|
+
# models (e.g. Pet) or oneOf
|
|
266
|
+
klass = Ionoscloud.const_get(type)
|
|
267
|
+
klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
|
268
|
+
end
|
|
269
|
+
end
|
|
270
|
+
|
|
271
|
+
# Returns the string representation of the object
|
|
272
|
+
# @return [String] String presentation of the object
|
|
273
|
+
def to_s
|
|
274
|
+
to_hash.to_s
|
|
275
|
+
end
|
|
276
|
+
|
|
277
|
+
# to_body is an alias to to_hash (backward compatibility)
|
|
278
|
+
# @return [Hash] Returns the object in the form of hash
|
|
279
|
+
def to_body
|
|
280
|
+
to_hash
|
|
281
|
+
end
|
|
282
|
+
|
|
283
|
+
# Returns the object in the form of hash
|
|
284
|
+
# @return [Hash] Returns the object in the form of hash
|
|
285
|
+
def to_hash
|
|
286
|
+
hash = {}
|
|
287
|
+
self.class.attribute_map.each_pair do |attr, param|
|
|
288
|
+
value = self.send(attr)
|
|
289
|
+
if value.nil?
|
|
290
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
|
291
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
|
292
|
+
end
|
|
293
|
+
|
|
294
|
+
hash[param] = _to_hash(value)
|
|
295
|
+
end
|
|
296
|
+
hash
|
|
297
|
+
end
|
|
298
|
+
|
|
299
|
+
# Outputs non-array value in the form of hash
|
|
300
|
+
# For object, use to_hash. Otherwise, just return the value
|
|
301
|
+
# @param [Object] value Any valid value
|
|
302
|
+
# @return [Hash] Returns the value in the form of hash
|
|
303
|
+
def _to_hash(value)
|
|
304
|
+
if value.is_a?(Array)
|
|
305
|
+
value.compact.map { |v| _to_hash(v) }
|
|
306
|
+
elsif value.is_a?(Hash)
|
|
307
|
+
{}.tap do |hash|
|
|
308
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
309
|
+
end
|
|
310
|
+
elsif value.respond_to? :to_hash
|
|
311
|
+
value.to_hash
|
|
312
|
+
else
|
|
313
|
+
value
|
|
314
|
+
end
|
|
315
|
+
end
|
|
316
|
+
|
|
317
|
+
end
|
|
318
|
+
|
|
319
|
+
end
|