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 = nil, base_url = nil, options = nil) ⇒ ComputeManagementClient

Creates initializes a new instance of the ComputeManagementClient class.

Parameters:

  • credentials (MsRest::ServiceClientCredentials) (defaults to: nil)

    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.



81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 81

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

  fail ArgumentError, 'invalid type of credentials input parameter' unless credentials.is_a?(MsRest::ServiceClientCredentials) unless credentials.nil?
  @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)
  @images = Images.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)
  @disks = Disks.new(self)
  @snapshots = Snapshots.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:



67
68
69
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 67

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

#disksDisks (readonly)

Returns disks.

Returns:



70
71
72
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 70

def disks
  @disks
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

#imagesImages (readonly)

Returns images.

Returns:



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

def images
  @images
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

#snapshotsSnapshots (readonly)

Returns snapshots.

Returns:



73
74
75
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 73

def snapshots
  @snapshots
end

#subscription_idString

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

Returns:

  • (String)

    Subscription credentials which uniquely identify



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:



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

def virtual_machine_scale_set_vms
  @virtual_machine_scale_set_vms
end

#virtual_machine_scale_setsVirtualMachineScaleSets (readonly)

Returns virtual_machine_scale_sets.

Returns:



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

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:



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

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.



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

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.



148
149
150
151
152
153
154
155
156
157
158
159
160
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 148

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.



135
136
137
138
139
# File 'lib/generated/azure_mgmt_compute/compute_management_client.rb', line 135

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