Class: Azure::ARM::Compute::ComputeManagementClient

Inherits:
MsRestAzure::AzureServiceClient
  • Object
show all
Includes:
MsRestAzure, MsRestAzure::Serialization
Defined in:
lib/generated/azure_mgmt_compute/compute_management_client.rb

Overview

A service client - single point of access to the REST API.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(credentials, base_url = nil, options = nil) ⇒ ComputeManagementClient

Creates initializes a new instance of the ComputeManagementClient class.

Parameters:

  • credentials (MsRest::ServiceClientCredentials)

    credentials to authorize HTTP requests made by the service client.

  • base_url (String) (defaults to: nil)

    the base URI of the service.

  • options (Array) (defaults to: nil)

    filters to be applied to the HTTP requests.



72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 72

def initialize(credentials, base_url = nil, options = nil)
  super(credentials, options)
  @base_url = base_url || 'https://management.azure.com'

  fail ArgumentError, 'credentials is nil' if credentials.nil?
  fail ArgumentError, 'invalid type of credentials input parameter' unless credentials.is_a?(MsRest::ServiceClientCredentials)
  @credentials = credentials

  @availability_sets = AvailabilitySets.new(self)
  @virtual_machine_extension_images = VirtualMachineExtensionImages.new(self)
  @virtual_machine_extensions = VirtualMachineExtensions.new(self)
  @virtual_machine_images = VirtualMachineImages.new(self)
  @usage_operations = UsageOperations.new(self)
  @virtual_machine_sizes = VirtualMachineSizes.new(self)
  @virtual_machines = VirtualMachines.new(self)
  @virtual_machine_scale_sets = VirtualMachineScaleSets.new(self)
  @virtual_machine_scale_set_vms = VirtualMachineScaleSetVMs.new(self)
  @container_services = ContainerServices.new(self)
  @accept_language = 'en-US'
  @long_running_operation_retry_timeout = 30
  @generate_client_request_id = true
  add_telemetry
end

Instance Attribute Details

#accept_languageString

Returns Gets or sets the preferred language for the response.

Returns:

  • (String)

    Gets or sets the preferred language for the response.



26
27
28
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 26

def accept_language
  @accept_language
end

#availability_setsAvailabilitySets (readonly)

Returns availability_sets.

Returns:



37
38
39
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 37

def availability_sets
  @availability_sets
end

#base_urlString

Returns the base URI of the service.

Returns:

  • (String)

    the base URI of the service.



15
16
17
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 15

def base_url
  @base_url
end

#container_servicesContainerServices (readonly)

Returns container_services.

Returns:



64
65
66
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 64

def container_services
  @container_services
end

#credentialsObject (readonly)

Returns Credentials needed for the client to connect to Azure.

Returns:

  • Credentials needed for the client to connect to Azure.



18
19
20
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 18

def credentials
  @credentials
end

#generate_client_request_idBoolean

is generated and included in each request. Default is true.

Returns:

  • (Boolean)

    When set to true a unique x-ms-client-request-id value



34
35
36
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 34

def generate_client_request_id
  @generate_client_request_id
end

#long_running_operation_retry_timeoutInteger

Running Operations. Default value is 30.

Returns:

  • (Integer)

    Gets or sets the retry timeout in seconds for Long



30
31
32
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 30

def long_running_operation_retry_timeout
  @long_running_operation_retry_timeout
end

#subscription_idString

Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.

Returns:

  • (String)

    Subscription credentials that uniquely identify the



23
24
25
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 23

def subscription_id
  @subscription_id
end

#usage_operationsUsageOperations (readonly)

Returns usage_operations.

Returns:



49
50
51
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 49

def usage_operations
  @usage_operations
end

#virtual_machine_extension_imagesVirtualMachineExtensionImages (readonly)

Returns virtual_machine_extension_images.

Returns:



40
41
42
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 40

def virtual_machine_extension_images
  @virtual_machine_extension_images
end

#virtual_machine_extensionsVirtualMachineExtensions (readonly)

Returns virtual_machine_extensions.

Returns:



43
44
45
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 43

def virtual_machine_extensions
  @virtual_machine_extensions
end

#virtual_machine_imagesVirtualMachineImages (readonly)

Returns virtual_machine_images.

Returns:



46
47
48
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 46

def virtual_machine_images
  @virtual_machine_images
end

#virtual_machine_scale_set_vmsVirtualMachineScaleSetVMs (readonly)

Returns virtual_machine_scale_set_vms.

Returns:



61
62
63
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 61

def virtual_machine_scale_set_vms
  @virtual_machine_scale_set_vms
end

#virtual_machine_scale_setsVirtualMachineScaleSets (readonly)

Returns virtual_machine_scale_sets.

Returns:



58
59
60
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 58

def virtual_machine_scale_sets
  @virtual_machine_scale_sets
end

#virtual_machine_sizesVirtualMachineSizes (readonly)

Returns virtual_machine_sizes.

Returns:



52
53
54
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 52

def virtual_machine_sizes
  @virtual_machine_sizes
end

#virtual_machinesVirtualMachines (readonly)

Returns virtual_machines.

Returns:



55
56
57
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 55

def virtual_machines
  @virtual_machines
end

Instance Method Details

#make_request(method, path, options = {}) ⇒ Hash{String=>String}

Makes a request and returns the body of the response. Example:

request_content = "{'location':'westus','tags':{'tag1':'val1','tag2':'val2'}}"
path = "/path"
options = {
  body: request_content,
  query_params: {'api-version' => '2016-02-01'}
}
result = @client.make_request(:put, path, options)

Parameters:

  • method (Symbol)

    with any of the following values :get, :put, :post, :patch, :delete.

  • path (String)

    the path, relative to #base_url.

  • options (Hash{String=>String}) (defaults to: {})

    specifying any request options like :body.

Returns:

  • (Hash{String=>String})

    containing the body of the response.



112
113
114
115
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 112

def make_request(method, path, options = {})
  result = make_request_with_http_info(method, path, options)
  result.body unless result.nil?
end

#make_request_async(method, path, options = {}) ⇒ Concurrent::Promise

Makes a request asynchronously.

Parameters:

  • method (Symbol)

    with any of the following values :get, :put, :post, :patch, :delete.

  • path (String)

    the path, relative to #base_url.

  • options (Hash{String=>String}) (defaults to: {})

    specifying any request options like :body.

Returns:

  • (Concurrent::Promise)

    Promise object which holds the HTTP response.



137
138
139
140
141
142
143
144
145
146
147
148
149
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 137

def make_request_async(method, path, options = {})
  fail ArgumentError, 'method is nil' if method.nil?
  fail ArgumentError, 'path is nil' if path.nil?

  request_url = options[:base_url] || @base_url

  request_headers = @request_headers
  request_headers.merge!({'accept-language' => @accept_language}) unless @accept_language.nil?
  options.merge!({headers: request_headers.merge(options[:headers] || {})})
  options.merge!({credentials: @credentials}) unless @credentials.nil?

  super(request_url, method, path, options)
end

#make_request_with_http_info(method, path, options = {}) ⇒ MsRestAzure::AzureOperationResponse

Makes a request and returns the operation response.

Parameters:

  • method (Symbol)

    with any of the following values :get, :put, :post, :patch, :delete.

  • path (String)

    the path, relative to #base_url.

  • options (Hash{String=>String}) (defaults to: {})

    specifying any request options like :body.

Returns:

  • (MsRestAzure::AzureOperationResponse)

    Operation response containing the request, response and status.



124
125
126
127
128
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 124

def make_request_with_http_info(method, path, options = {})
  result = make_request_async(method, path, options).value!
  result.body = result.response.body.to_s.empty? ? nil : JSON.load(result.response.body)
  result
end