Class: DatadogAPIClient::V2::ContainersAPI
- Inherits:
-
Object
- Object
- DatadogAPIClient::V2::ContainersAPI
- Defined in:
- lib/datadog_api_client/v2/api/containers_api.rb
Instance Attribute Summary collapse
-
#api_client ⇒ Object
Returns the value of attribute api_client.
Instance Method Summary collapse
-
#initialize(api_client = DatadogAPIClient::APIClient.default) ⇒ ContainersAPI
constructor
A new instance of ContainersAPI.
-
#list_containers(opts = {}) ⇒ Object
Get All Containers.
-
#list_containers_with_http_info(opts = {}) ⇒ Array<(ContainersResponse, Integer, Hash)>
Get All Containers.
-
#list_containers_with_pagination(opts = {}) {|ContainerItem| ... } ⇒ Object
Get All Containers.
Constructor Details
#initialize(api_client = DatadogAPIClient::APIClient.default) ⇒ ContainersAPI
Returns a new instance of ContainersAPI.
22 23 24 |
# File 'lib/datadog_api_client/v2/api/containers_api.rb', line 22 def initialize(api_client = DatadogAPIClient::APIClient.default) @api_client = api_client end |
Instance Attribute Details
#api_client ⇒ Object
Returns the value of attribute api_client.
20 21 22 |
# File 'lib/datadog_api_client/v2/api/containers_api.rb', line 20 def api_client @api_client end |
Instance Method Details
#list_containers(opts = {}) ⇒ Object
Get All Containers.
29 30 31 32 |
# File 'lib/datadog_api_client/v2/api/containers_api.rb', line 29 def list_containers(opts = {}) data, _status_code, _headers = list_containers_with_http_info(opts) data end |
#list_containers_with_http_info(opts = {}) ⇒ Array<(ContainersResponse, Integer, Hash)>
Get All Containers.
Get all containers for your organization.
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
# File 'lib/datadog_api_client/v2/api/containers_api.rb', line 45 def list_containers_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: ContainersAPI.list_containers ...' end if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000 fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling ContainersAPI.list_containers, must be smaller than or equal to 10000.' end if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] < 1 fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling ContainersAPI.list_containers, must be greater than or equal to 1.' end # resource path local_var_path = '/api/v2/containers' # query parameters query_params = opts[:query_params] || {} query_params[:'filter[tags]'] = opts[:'filter_tags'] if !opts[:'filter_tags'].nil? query_params[:'group_by'] = opts[:'group_by'] if !opts[:'group_by'].nil? query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil? query_params[:'page[size]'] = opts[:'page_size'] if !opts[:'page_size'].nil? query_params[:'page[cursor]'] = opts[:'page_cursor'] if !opts[:'page_cursor'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] || 'ContainersResponse' # auth_names auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ] = opts.merge( :operation => :list_containers, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type, :api_version => "V2" ) data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, ) if @api_client.config.debugging @api_client.config.logger.debug "API called: ContainersAPI#list_containers\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end |
#list_containers_with_pagination(opts = {}) {|ContainerItem| ... } ⇒ Object
Get All Containers.
Provide a paginated version of #list_containers, returning all items.
To use it you need to use a block: list_containers_with_pagination { |item| p item }
109 110 111 112 113 114 115 116 117 118 119 120 121 |
# File 'lib/datadog_api_client/v2/api/containers_api.rb', line 109 def list_containers_with_pagination(opts = {}) api_version = "V2" page_size = @api_client.get_attribute_from_path(opts, "page_size", 1000) @api_client.set_attribute_from_path(api_version, opts, "page_size", Integer, page_size) while true do response = list_containers(opts) @api_client.get_attribute_from_path(response, "data").each { |item| yield(item) } if @api_client.get_attribute_from_path(response, "data").length < page_size break end @api_client.set_attribute_from_path(api_version, opts, "page_cursor", String, @api_client.get_attribute_from_path(response, "meta.pagination.next_cursor")) end end |