Class: Google::Cloud::Compute::V1::InterconnectLocations::Rest::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/google/cloud/compute/v1/interconnect_locations/rest/client.rb

Overview

REST client for the InterconnectLocations service.

The InterconnectLocations API.

Defined Under Namespace

Classes: Configuration

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize {|config| ... } ⇒ Client

Create a new InterconnectLocations REST client object.

Examples:


# Create a client using the default configuration
client = ::Google::Cloud::Compute::V1::InterconnectLocations::Rest::Client.new

# Create a client using a custom configuration
client = ::Google::Cloud::Compute::V1::InterconnectLocations::Rest::Client.new do |config|
  config.timeout = 10.0
end

Yields:

  • (config)

    Configure the InterconnectLocations client.

Yield Parameters:



119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
# File 'lib/google/cloud/compute/v1/interconnect_locations/rest/client.rb', line 119

def initialize
  # Create the configuration object
  @config = Configuration.new Client.configure

  # Yield the configuration if needed
  yield @config if block_given?

  # Create credentials
  credentials = @config.credentials
  credentials ||= Credentials.default scope: @config.scope
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
    credentials = Credentials.new credentials, scope: @config.scope
  end

  @interconnect_locations_stub = ::Google::Cloud::Compute::V1::InterconnectLocations::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
end

Class Method Details

.configure {|config| ... } ⇒ Client::Configuration

Configure the InterconnectLocations Client class.

See Configuration for a description of the configuration fields.

Examples:


# Modify the configuration for all InterconnectLocations clients
::Google::Cloud::Compute::V1::InterconnectLocations::Rest::Client.configure do |config|
  config.timeout = 10.0
end

Yields:

  • (config)

    Configure the Client client.

Yield Parameters:



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
# File 'lib/google/cloud/compute/v1/interconnect_locations/rest/client.rb', line 56

def self.configure
  @configure ||= begin
    namespace = ["Google", "Cloud", "Compute", "V1"]
    parent_config = while namespace.any?
                      parent_name = namespace.join "::"
                      parent_const = const_get parent_name
                      break parent_const.configure if parent_const.respond_to? :configure
                      namespace.pop
                    end
    default_config = Client::Configuration.new parent_config

    default_config.rpcs.get.timeout = 600.0
    default_config.rpcs.get.retry_policy = {
      initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
    }

    default_config.rpcs.list.timeout = 600.0
    default_config.rpcs.list.retry_policy = {
      initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
    }

    default_config
  end
  yield @configure if block_given?
  @configure
end

Instance Method Details

#configure {|config| ... } ⇒ Client::Configuration

Configure the InterconnectLocations Client instance.

The configuration is set to the derived mode, meaning that values can be changed, but structural changes (adding new fields, etc.) are not allowed. Structural changes should be made on configure.

See Configuration for a description of the configuration fields.

Yields:

  • (config)

    Configure the Client client.

Yield Parameters:



98
99
100
101
# File 'lib/google/cloud/compute/v1/interconnect_locations/rest/client.rb', line 98

def configure
  yield @config if block_given?
  @config
end

#get(request, options = nil) ⇒ ::Google::Cloud::Compute::V1::InterconnectLocation #get(interconnect_location: nil, project: nil) ⇒ ::Google::Cloud::Compute::V1::InterconnectLocation

Returns the details for the specified interconnect location. Gets a list of available interconnect locations by making a list() request.

Overloads:

Yields:

  • (result, response)

    Access the result along with the Faraday response object

Yield Parameters:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
# File 'lib/google/cloud/compute/v1/interconnect_locations/rest/client.rb', line 169

def get request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::GetInterconnectLocationRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.get..to_h

  # Set x-goog-api-client header
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Compute::V1::VERSION,
    transports_version_send: [:rest]

  options.apply_defaults timeout:      @config.rpcs.get.timeout,
                         metadata:     

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.

  @interconnect_locations_stub.get request, options do |result, response|
    yield result, response if block_given?
    return result
  end
rescue ::Faraday::Error => e
  gapic_error = ::Gapic::Rest::Error.wrap_faraday_error e
  raise ::Google::Cloud::Error.from_error(gapic_error)
end

#list(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::InterconnectLocation> #list(filter: nil, max_results: nil, order_by: nil, page_token: nil, project: nil, return_partial_success: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::InterconnectLocation>

Retrieves the list of interconnect locations available to the specified project.

Overloads:

Yields:

  • (result, response)

    Access the result along with the Faraday response object

Yield Parameters:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
# File 'lib/google/cloud/compute/v1/interconnect_locations/rest/client.rb', line 240

def list request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::ListInterconnectLocationsRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list..to_h

  # Set x-goog-api-client header
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Compute::V1::VERSION,
    transports_version_send: [:rest]

  options.apply_defaults timeout:      @config.rpcs.list.timeout,
                         metadata:     

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.

  @interconnect_locations_stub.list request, options do |result, response|
    result = ::Gapic::Rest::PagedEnumerable.new @interconnect_locations_stub, :list, "items", request, result, options
    yield result, response if block_given?
    return result
  end
rescue ::Faraday::Error => e
  gapic_error = ::Gapic::Rest::Error.wrap_faraday_error e
  raise ::Google::Cloud::Error.from_error(gapic_error)
end