=begin #CLOUD API #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. The version of the OpenAPI document: 6.0 Generated by: https://openapi-generator.tech OpenAPI Generator version: 5.2.1-SNAPSHOT =end require 'cgi' module Ionoscloud class NetworkLoadBalancersApi attr_accessor :api_client def initialize(api_client = ApiClient.default) @api_client = api_client end # Delete Network Load Balancers # Remove the specified Network Load Balancer from the data center. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [nil] def datacenters_networkloadbalancers_delete(datacenter_id, network_load_balancer_id, opts = {}) datacenters_networkloadbalancers_delete_with_http_info(datacenter_id, network_load_balancer_id, opts) nil end # Delete Network Load Balancers # Remove the specified Network Load Balancer from the data center. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers def datacenters_networkloadbalancers_delete_with_http_info(datacenter_id, network_load_balancer_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_delete ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_delete" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_delete" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_delete, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_delete, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_delete", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Retrieve Network Load Balancers # Retrieve the properties of the specified Network Load Balancer within the data center. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [NetworkLoadBalancer] def datacenters_networkloadbalancers_find_by_network_load_balancer_id(datacenter_id, network_load_balancer_id, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_find_by_network_load_balancer_id_with_http_info(datacenter_id, network_load_balancer_id, opts) data end # Retrieve Network Load Balancers # Retrieve the properties of the specified Network Load Balancer within the data center. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(NetworkLoadBalancer, Integer, Hash)>] NetworkLoadBalancer data, response status code and response headers def datacenters_networkloadbalancers_find_by_network_load_balancer_id_with_http_info(datacenter_id, network_load_balancer_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_find_by_network_load_balancer_id ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_find_by_network_load_balancer_id" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_find_by_network_load_balancer_id" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_find_by_network_load_balancer_id, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_find_by_network_load_balancer_id, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] || 'NetworkLoadBalancer' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_find_by_network_load_balancer_id", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_find_by_network_load_balancer_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Delete NLB Flow Logs # Delete the specified Network Load Balancer Flow Log. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param flow_log_id [String] The unique ID of the Flow Log. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [nil] def datacenters_networkloadbalancers_flowlogs_delete(datacenter_id, network_load_balancer_id, flow_log_id, opts = {}) datacenters_networkloadbalancers_flowlogs_delete_with_http_info(datacenter_id, network_load_balancer_id, flow_log_id, opts) nil end # Delete NLB Flow Logs # Delete the specified Network Load Balancer Flow Log. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param flow_log_id [String] The unique ID of the Flow Log. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers def datacenters_networkloadbalancers_flowlogs_delete_with_http_info(datacenter_id, network_load_balancer_id, flow_log_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_delete ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_delete" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_delete" end # verify the required parameter 'flow_log_id' is set if @api_client.config.client_side_validation && flow_log_id.nil? fail ArgumentError, "Missing the required parameter 'flow_log_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_delete" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_delete, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_delete, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}/flowlogs/{flowLogId}'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)).sub('{' + 'flowLogId' + '}', CGI.escape(flow_log_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_delete", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_flowlogs_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Retrieve NLB Flow Logs # Retrieve the specified Network Load Balancer Flow Log. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param flow_log_id [String] The unique ID of the Flow Log. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [FlowLog] def datacenters_networkloadbalancers_flowlogs_find_by_flow_log_id(datacenter_id, network_load_balancer_id, flow_log_id, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_flowlogs_find_by_flow_log_id_with_http_info(datacenter_id, network_load_balancer_id, flow_log_id, opts) data end # Retrieve NLB Flow Logs # Retrieve the specified Network Load Balancer Flow Log. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param flow_log_id [String] The unique ID of the Flow Log. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(FlowLog, Integer, Hash)>] FlowLog data, response status code and response headers def datacenters_networkloadbalancers_flowlogs_find_by_flow_log_id_with_http_info(datacenter_id, network_load_balancer_id, flow_log_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_find_by_flow_log_id ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_find_by_flow_log_id" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_find_by_flow_log_id" end # verify the required parameter 'flow_log_id' is set if @api_client.config.client_side_validation && flow_log_id.nil? fail ArgumentError, "Missing the required parameter 'flow_log_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_find_by_flow_log_id" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_find_by_flow_log_id, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_find_by_flow_log_id, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}/flowlogs/{flowLogId}'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)).sub('{' + 'flowLogId' + '}', CGI.escape(flow_log_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] || 'FlowLog' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_find_by_flow_log_id", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_flowlogs_find_by_flow_log_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # List NLB Flow Logs # List all the Flow Logs for the specified Network Load Balancer. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [FlowLogs] def datacenters_networkloadbalancers_flowlogs_get(datacenter_id, network_load_balancer_id, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_flowlogs_get_with_http_info(datacenter_id, network_load_balancer_id, opts) data end # List NLB Flow Logs # List all the Flow Logs for the specified Network Load Balancer. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(FlowLogs, Integer, Hash)>] FlowLogs data, response status code and response headers def datacenters_networkloadbalancers_flowlogs_get_with_http_info(datacenter_id, network_load_balancer_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_get ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_get" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_get" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_get, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_get, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}/flowlogs'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] || 'FlowLogs' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_get", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_flowlogs_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Partially modify NLB Flow Logs # Update the properties of the specified Network Load Balancer Flow Log. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param flow_log_id [String] The unique ID of the Flow Log. # @param network_load_balancer_flow_log_properties [FlowLogProperties] The properties of the Flow Log to be updated. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [FlowLog] def datacenters_networkloadbalancers_flowlogs_patch(datacenter_id, network_load_balancer_id, flow_log_id, network_load_balancer_flow_log_properties, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_flowlogs_patch_with_http_info(datacenter_id, network_load_balancer_id, flow_log_id, network_load_balancer_flow_log_properties, opts) data end # Partially modify NLB Flow Logs # Update the properties of the specified Network Load Balancer Flow Log. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param flow_log_id [String] The unique ID of the Flow Log. # @param network_load_balancer_flow_log_properties [FlowLogProperties] The properties of the Flow Log to be updated. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(FlowLog, Integer, Hash)>] FlowLog data, response status code and response headers def datacenters_networkloadbalancers_flowlogs_patch_with_http_info(datacenter_id, network_load_balancer_id, flow_log_id, network_load_balancer_flow_log_properties, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_patch ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_patch" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_patch" end # verify the required parameter 'flow_log_id' is set if @api_client.config.client_side_validation && flow_log_id.nil? fail ArgumentError, "Missing the required parameter 'flow_log_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_patch" end # verify the required parameter 'network_load_balancer_flow_log_properties' is set if @api_client.config.client_side_validation && network_load_balancer_flow_log_properties.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_flow_log_properties' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_patch" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_patch, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_patch, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}/flowlogs/{flowLogId}'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)).sub('{' + 'flowLogId' + '}', CGI.escape(flow_log_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(network_load_balancer_flow_log_properties) # return_type return_type = opts[:debug_return_type] || 'FlowLog' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_patch", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_flowlogs_patch\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Create NLB Flow Logs # Add a new Flow Log for the Network Load Balancer. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param network_load_balancer_flow_log [FlowLog] The Flow Log to create. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [FlowLog] def datacenters_networkloadbalancers_flowlogs_post(datacenter_id, network_load_balancer_id, network_load_balancer_flow_log, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_flowlogs_post_with_http_info(datacenter_id, network_load_balancer_id, network_load_balancer_flow_log, opts) data end # Create NLB Flow Logs # Add a new Flow Log for the Network Load Balancer. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param network_load_balancer_flow_log [FlowLog] The Flow Log to create. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(FlowLog, Integer, Hash)>] FlowLog data, response status code and response headers def datacenters_networkloadbalancers_flowlogs_post_with_http_info(datacenter_id, network_load_balancer_id, network_load_balancer_flow_log, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_post ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_post" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_post" end # verify the required parameter 'network_load_balancer_flow_log' is set if @api_client.config.client_side_validation && network_load_balancer_flow_log.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_flow_log' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_post" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_post, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_post, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}/flowlogs'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(network_load_balancer_flow_log) # return_type return_type = opts[:debug_return_type] || 'FlowLog' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_post", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_flowlogs_post\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Modify NLB Flow Logs # Modify the specified Network Load Balancer Flow Log. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param flow_log_id [String] The unique ID of the Flow Log. # @param network_load_balancer_flow_log [FlowLogPut] The modified NLB Flow Log. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [FlowLog] def datacenters_networkloadbalancers_flowlogs_put(datacenter_id, network_load_balancer_id, flow_log_id, network_load_balancer_flow_log, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_flowlogs_put_with_http_info(datacenter_id, network_load_balancer_id, flow_log_id, network_load_balancer_flow_log, opts) data end # Modify NLB Flow Logs # Modify the specified Network Load Balancer Flow Log. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param flow_log_id [String] The unique ID of the Flow Log. # @param network_load_balancer_flow_log [FlowLogPut] The modified NLB Flow Log. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(FlowLog, Integer, Hash)>] FlowLog data, response status code and response headers def datacenters_networkloadbalancers_flowlogs_put_with_http_info(datacenter_id, network_load_balancer_id, flow_log_id, network_load_balancer_flow_log, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_put ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_put" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_put" end # verify the required parameter 'flow_log_id' is set if @api_client.config.client_side_validation && flow_log_id.nil? fail ArgumentError, "Missing the required parameter 'flow_log_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_put" end # verify the required parameter 'network_load_balancer_flow_log' is set if @api_client.config.client_side_validation && network_load_balancer_flow_log.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_flow_log' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_put" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_put, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_put, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}/flowlogs/{flowLogId}'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)).sub('{' + 'flowLogId' + '}', CGI.escape(flow_log_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(network_load_balancer_flow_log) # return_type return_type = opts[:debug_return_type] || 'FlowLog' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_flowlogs_put", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_flowlogs_put\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Delete NLB forwarding rules # Delete the specified Network Load Balancer forwarding rule. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param forwarding_rule_id [String] The unique ID of the forwarding rule. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [nil] def datacenters_networkloadbalancers_forwardingrules_delete(datacenter_id, network_load_balancer_id, forwarding_rule_id, opts = {}) datacenters_networkloadbalancers_forwardingrules_delete_with_http_info(datacenter_id, network_load_balancer_id, forwarding_rule_id, opts) nil end # Delete NLB forwarding rules # Delete the specified Network Load Balancer forwarding rule. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param forwarding_rule_id [String] The unique ID of the forwarding rule. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers def datacenters_networkloadbalancers_forwardingrules_delete_with_http_info(datacenter_id, network_load_balancer_id, forwarding_rule_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_delete ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_delete" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_delete" end # verify the required parameter 'forwarding_rule_id' is set if @api_client.config.client_side_validation && forwarding_rule_id.nil? fail ArgumentError, "Missing the required parameter 'forwarding_rule_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_delete" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_delete, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_delete, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}/forwardingrules/{forwardingRuleId}'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)).sub('{' + 'forwardingRuleId' + '}', CGI.escape(forwarding_rule_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_delete", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_forwardingrules_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Retrieve NLB forwarding rules # Retrieve the specified Network Load Balance forwarding rule. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param forwarding_rule_id [String] The unique ID of the forwarding rule. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [NetworkLoadBalancerForwardingRule] def datacenters_networkloadbalancers_forwardingrules_find_by_forwarding_rule_id(datacenter_id, network_load_balancer_id, forwarding_rule_id, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_forwardingrules_find_by_forwarding_rule_id_with_http_info(datacenter_id, network_load_balancer_id, forwarding_rule_id, opts) data end # Retrieve NLB forwarding rules # Retrieve the specified Network Load Balance forwarding rule. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param forwarding_rule_id [String] The unique ID of the forwarding rule. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(NetworkLoadBalancerForwardingRule, Integer, Hash)>] NetworkLoadBalancerForwardingRule data, response status code and response headers def datacenters_networkloadbalancers_forwardingrules_find_by_forwarding_rule_id_with_http_info(datacenter_id, network_load_balancer_id, forwarding_rule_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_find_by_forwarding_rule_id ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_find_by_forwarding_rule_id" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_find_by_forwarding_rule_id" end # verify the required parameter 'forwarding_rule_id' is set if @api_client.config.client_side_validation && forwarding_rule_id.nil? fail ArgumentError, "Missing the required parameter 'forwarding_rule_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_find_by_forwarding_rule_id" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_find_by_forwarding_rule_id, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_find_by_forwarding_rule_id, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}/forwardingrules/{forwardingRuleId}'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)).sub('{' + 'forwardingRuleId' + '}', CGI.escape(forwarding_rule_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] || 'NetworkLoadBalancerForwardingRule' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_find_by_forwarding_rule_id", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_forwardingrules_find_by_forwarding_rule_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # List NLB forwarding rules # List the forwarding rules for the specified Network Load Balancer. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [NetworkLoadBalancerForwardingRules] def datacenters_networkloadbalancers_forwardingrules_get(datacenter_id, network_load_balancer_id, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_forwardingrules_get_with_http_info(datacenter_id, network_load_balancer_id, opts) data end # List NLB forwarding rules # List the forwarding rules for the specified Network Load Balancer. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(NetworkLoadBalancerForwardingRules, Integer, Hash)>] NetworkLoadBalancerForwardingRules data, response status code and response headers def datacenters_networkloadbalancers_forwardingrules_get_with_http_info(datacenter_id, network_load_balancer_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_get ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_get" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_get" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_get, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_get, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}/forwardingrules'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] || 'NetworkLoadBalancerForwardingRules' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_get", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_forwardingrules_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Partially modify NLB forwarding rules # Update the properties of the specified Network Load Balancer forwarding rule. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param forwarding_rule_id [String] The unique ID of the forwarding rule. # @param network_load_balancer_forwarding_rule_properties [NetworkLoadBalancerForwardingRuleProperties] The properties of the forwarding rule to be updated. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [NetworkLoadBalancerForwardingRule] def datacenters_networkloadbalancers_forwardingrules_patch(datacenter_id, network_load_balancer_id, forwarding_rule_id, network_load_balancer_forwarding_rule_properties, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_forwardingrules_patch_with_http_info(datacenter_id, network_load_balancer_id, forwarding_rule_id, network_load_balancer_forwarding_rule_properties, opts) data end # Partially modify NLB forwarding rules # Update the properties of the specified Network Load Balancer forwarding rule. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param forwarding_rule_id [String] The unique ID of the forwarding rule. # @param network_load_balancer_forwarding_rule_properties [NetworkLoadBalancerForwardingRuleProperties] The properties of the forwarding rule to be updated. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(NetworkLoadBalancerForwardingRule, Integer, Hash)>] NetworkLoadBalancerForwardingRule data, response status code and response headers def datacenters_networkloadbalancers_forwardingrules_patch_with_http_info(datacenter_id, network_load_balancer_id, forwarding_rule_id, network_load_balancer_forwarding_rule_properties, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_patch ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_patch" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_patch" end # verify the required parameter 'forwarding_rule_id' is set if @api_client.config.client_side_validation && forwarding_rule_id.nil? fail ArgumentError, "Missing the required parameter 'forwarding_rule_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_patch" end # verify the required parameter 'network_load_balancer_forwarding_rule_properties' is set if @api_client.config.client_side_validation && network_load_balancer_forwarding_rule_properties.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_forwarding_rule_properties' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_patch" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_patch, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_patch, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}/forwardingrules/{forwardingRuleId}'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)).sub('{' + 'forwardingRuleId' + '}', CGI.escape(forwarding_rule_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(network_load_balancer_forwarding_rule_properties) # return_type return_type = opts[:debug_return_type] || 'NetworkLoadBalancerForwardingRule' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_patch", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_forwardingrules_patch\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Create NLB forwarding rules # Create a forwarding rule for the specified Network Load Balancer. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param network_load_balancer_forwarding_rule [NetworkLoadBalancerForwardingRule] The forwarding rule to create. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [NetworkLoadBalancerForwardingRule] def datacenters_networkloadbalancers_forwardingrules_post(datacenter_id, network_load_balancer_id, network_load_balancer_forwarding_rule, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_forwardingrules_post_with_http_info(datacenter_id, network_load_balancer_id, network_load_balancer_forwarding_rule, opts) data end # Create NLB forwarding rules # Create a forwarding rule for the specified Network Load Balancer. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param network_load_balancer_forwarding_rule [NetworkLoadBalancerForwardingRule] The forwarding rule to create. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(NetworkLoadBalancerForwardingRule, Integer, Hash)>] NetworkLoadBalancerForwardingRule data, response status code and response headers def datacenters_networkloadbalancers_forwardingrules_post_with_http_info(datacenter_id, network_load_balancer_id, network_load_balancer_forwarding_rule, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_post ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_post" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_post" end # verify the required parameter 'network_load_balancer_forwarding_rule' is set if @api_client.config.client_side_validation && network_load_balancer_forwarding_rule.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_forwarding_rule' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_post" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_post, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_post, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}/forwardingrules'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(network_load_balancer_forwarding_rule) # return_type return_type = opts[:debug_return_type] || 'NetworkLoadBalancerForwardingRule' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_post", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_forwardingrules_post\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Modify NLB forwarding rules # Modify the specified Network Load Balancer forwarding rule. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param forwarding_rule_id [String] The unique ID of the forwarding rule. # @param network_load_balancer_forwarding_rule [NetworkLoadBalancerForwardingRulePut] The modified NLB forwarding rule. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [NetworkLoadBalancerForwardingRule] def datacenters_networkloadbalancers_forwardingrules_put(datacenter_id, network_load_balancer_id, forwarding_rule_id, network_load_balancer_forwarding_rule, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_forwardingrules_put_with_http_info(datacenter_id, network_load_balancer_id, forwarding_rule_id, network_load_balancer_forwarding_rule, opts) data end # Modify NLB forwarding rules # Modify the specified Network Load Balancer forwarding rule. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param forwarding_rule_id [String] The unique ID of the forwarding rule. # @param network_load_balancer_forwarding_rule [NetworkLoadBalancerForwardingRulePut] The modified NLB forwarding rule. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(NetworkLoadBalancerForwardingRule, Integer, Hash)>] NetworkLoadBalancerForwardingRule data, response status code and response headers def datacenters_networkloadbalancers_forwardingrules_put_with_http_info(datacenter_id, network_load_balancer_id, forwarding_rule_id, network_load_balancer_forwarding_rule, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_put ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_put" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_put" end # verify the required parameter 'forwarding_rule_id' is set if @api_client.config.client_side_validation && forwarding_rule_id.nil? fail ArgumentError, "Missing the required parameter 'forwarding_rule_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_put" end # verify the required parameter 'network_load_balancer_forwarding_rule' is set if @api_client.config.client_side_validation && network_load_balancer_forwarding_rule.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_forwarding_rule' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_put" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_put, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_put, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}/forwardingrules/{forwardingRuleId}'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)).sub('{' + 'forwardingRuleId' + '}', CGI.escape(forwarding_rule_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(network_load_balancer_forwarding_rule) # return_type return_type = opts[:debug_return_type] || 'NetworkLoadBalancerForwardingRule' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_forwardingrules_put", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_forwardingrules_put\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # List Network Load Balancers # List all the Network Load Balancers within the data center. # @param datacenter_id [String] The unique ID of the data center. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @option opts [Integer] :offset The first element (from the complete list of the elements) to include in the response (use together with limit for pagination). (default to 0) # @option opts [Integer] :limit The maximum number of elements to return (use together with offset for pagination). (default to 1000) # @return [NetworkLoadBalancers] def datacenters_networkloadbalancers_get(datacenter_id, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_get_with_http_info(datacenter_id, opts) data end # List Network Load Balancers # List all the Network Load Balancers within the data center. # @param datacenter_id [String] The unique ID of the data center. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @option opts [Integer] :offset The first element (from the complete list of the elements) to include in the response (use together with limit for pagination). # @option opts [Integer] :limit The maximum number of elements to return (use together with offset for pagination). # @return [Array<(NetworkLoadBalancers, Integer, Hash)>] NetworkLoadBalancers data, response status code and response headers def datacenters_networkloadbalancers_get_with_http_info(datacenter_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_get ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_get" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_get, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_get, must be greater than or equal to 0.' end if @api_client.config.client_side_validation && !opts[:'offset'].nil? && opts[:'offset'] < 0 fail ArgumentError, 'invalid value for "opts[:"offset"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_get, must be greater than or equal to 0.' end if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 10000 fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_get, must be smaller than or equal to 10000.' end if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1 fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_get, must be greater than or equal to 1.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil? query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] || 'NetworkLoadBalancers' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_get", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Partially modify Network Load Balancers # Update the properties of the specified Network Load Balancer within the data center. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param network_load_balancer_properties [NetworkLoadBalancerProperties] The properties of the Network Load Balancer to be updated. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [NetworkLoadBalancer] def datacenters_networkloadbalancers_patch(datacenter_id, network_load_balancer_id, network_load_balancer_properties, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_patch_with_http_info(datacenter_id, network_load_balancer_id, network_load_balancer_properties, opts) data end # Partially modify Network Load Balancers # Update the properties of the specified Network Load Balancer within the data center. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param network_load_balancer_properties [NetworkLoadBalancerProperties] The properties of the Network Load Balancer to be updated. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(NetworkLoadBalancer, Integer, Hash)>] NetworkLoadBalancer data, response status code and response headers def datacenters_networkloadbalancers_patch_with_http_info(datacenter_id, network_load_balancer_id, network_load_balancer_properties, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_patch ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_patch" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_patch" end # verify the required parameter 'network_load_balancer_properties' is set if @api_client.config.client_side_validation && network_load_balancer_properties.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_properties' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_patch" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_patch, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_patch, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(network_load_balancer_properties) # return_type return_type = opts[:debug_return_type] || 'NetworkLoadBalancer' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_patch", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_patch\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Create Network Load Balancers # Create a Network Load Balancer within the data center. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer [NetworkLoadBalancer] The Network Load Balancer to create. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [NetworkLoadBalancer] def datacenters_networkloadbalancers_post(datacenter_id, network_load_balancer, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_post_with_http_info(datacenter_id, network_load_balancer, opts) data end # Create Network Load Balancers # Create a Network Load Balancer within the data center. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer [NetworkLoadBalancer] The Network Load Balancer to create. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(NetworkLoadBalancer, Integer, Hash)>] NetworkLoadBalancer data, response status code and response headers def datacenters_networkloadbalancers_post_with_http_info(datacenter_id, network_load_balancer, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_post ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_post" end # verify the required parameter 'network_load_balancer' is set if @api_client.config.client_side_validation && network_load_balancer.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_post" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_post, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_post, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(network_load_balancer) # return_type return_type = opts[:debug_return_type] || 'NetworkLoadBalancer' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_post", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_post\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Modify Network Load Balancers # Modify the properties of the specified Network Load Balancer within the data center. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param network_load_balancer [NetworkLoadBalancerPut] The modified Network Load Balancer. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). (default to true) # @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) # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [NetworkLoadBalancer] def datacenters_networkloadbalancers_put(datacenter_id, network_load_balancer_id, network_load_balancer, opts = {}) data, _status_code, _headers = datacenters_networkloadbalancers_put_with_http_info(datacenter_id, network_load_balancer_id, network_load_balancer, opts) data end # Modify Network Load Balancers # Modify the properties of the specified Network Load Balancer within the data center. # @param datacenter_id [String] The unique ID of the data center. # @param network_load_balancer_id [String] The unique ID of the Network Load Balancer. # @param network_load_balancer [NetworkLoadBalancerPut] The modified Network Load Balancer. # @param [Hash] opts the optional parameters # @option opts [Boolean] :pretty Controls whether the response is pretty-printed (with indentations and new lines). # @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 # @option opts [Integer] :x_contract_number Users with multiple contracts must provide the contract number, against which all API requests are to be executed. # @return [Array<(NetworkLoadBalancer, Integer, Hash)>] NetworkLoadBalancer data, response status code and response headers def datacenters_networkloadbalancers_put_with_http_info(datacenter_id, network_load_balancer_id, network_load_balancer, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: NetworkLoadBalancersApi.datacenters_networkloadbalancers_put ...' end # verify the required parameter 'datacenter_id' is set if @api_client.config.client_side_validation && datacenter_id.nil? fail ArgumentError, "Missing the required parameter 'datacenter_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_put" end # verify the required parameter 'network_load_balancer_id' is set if @api_client.config.client_side_validation && network_load_balancer_id.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer_id' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_put" end # verify the required parameter 'network_load_balancer' is set if @api_client.config.client_side_validation && network_load_balancer.nil? fail ArgumentError, "Missing the required parameter 'network_load_balancer' when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_put" end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] > 10 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_put, must be smaller than or equal to 10.' end if @api_client.config.client_side_validation && !opts[:'depth'].nil? && opts[:'depth'] < 0 fail ArgumentError, 'invalid value for "opts[:"depth"]" when calling NetworkLoadBalancersApi.datacenters_networkloadbalancers_put, must be greater than or equal to 0.' end # resource path local_var_path = '/datacenters/{datacenterId}/networkloadbalancers/{networkLoadBalancerId}'.sub('{' + 'datacenterId' + '}', CGI.escape(datacenter_id.to_s)).sub('{' + 'networkLoadBalancerId' + '}', CGI.escape(network_load_balancer_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'pretty'] = opts[:'pretty'] if !opts[:'pretty'].nil? query_params[:'depth'] = opts[:'depth'] if !opts[:'depth'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) header_params[:'X-Contract-Number'] = opts[:'x_contract_number'] if !opts[:'x_contract_number'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(network_load_balancer) # return_type return_type = opts[:debug_return_type] || 'NetworkLoadBalancer' # auth_names auth_names = opts[:debug_auth_names] || ['Basic Authentication', 'Token Authentication'] new_options = opts.merge( :operation => :"NetworkLoadBalancersApi.datacenters_networkloadbalancers_put", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: NetworkLoadBalancersApi#datacenters_networkloadbalancers_put\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end end end