Class: Azure::ARM::DevTestLabs::DevTestLabsClient

Inherits:
MsRestAzure::AzureServiceClient
  • Object
show all
Includes:
MsRestAzure, MsRestAzure::Serialization
Defined in:
lib/generated/azure_mgmt_devtestlabs/dev_test_labs_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) ⇒ DevTestLabsClient

Creates initializes a new instance of the DevTestLabsClient 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.



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

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

  @lab_operations = LabOperations.new(self)
  @artifact_source_operations = ArtifactSourceOperations.new(self)
  @artifact_operations = ArtifactOperations.new(self)
  @cost_operations = CostOperations.new(self)
  @custom_image_operations = CustomImageOperations.new(self)
  @formula_operations = FormulaOperations.new(self)
  @gallery_image_operations = GalleryImageOperations.new(self)
  @policy_set = PolicySet.new(self)
  @policy_operations = PolicyOperations.new(self)
  @schedule_operations = ScheduleOperations.new(self)
  @virtual_machine = VirtualMachine.new(self)
  @virtual_network_operations = VirtualNetworkOperations.new(self)
  @api_version = '2016-05-15'
  @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.



27
28
29
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 27

def accept_language
  @accept_language
end

#api_versionString (readonly)

Returns Client API version.

Returns:

  • (String)

    Client API version.



21
22
23
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 21

def api_version
  @api_version
end

#artifact_operationsArtifactOperations (readonly)

Returns artifact_operations.

Returns:



44
45
46
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 44

def artifact_operations
  @artifact_operations
end

#artifact_source_operationsArtifactSourceOperations (readonly)

Returns artifact_source_operations.

Returns:



41
42
43
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 41

def artifact_source_operations
  @artifact_source_operations
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_devtestlabs/dev_test_labs_client.rb', line 15

def base_url
  @base_url
end

#cost_operationsCostOperations (readonly)

Returns cost_operations.

Returns:



47
48
49
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 47

def cost_operations
  @cost_operations
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_devtestlabs/dev_test_labs_client.rb', line 18

def credentials
  @credentials
end

#custom_image_operationsCustomImageOperations (readonly)

Returns custom_image_operations.

Returns:



50
51
52
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 50

def custom_image_operations
  @custom_image_operations
end

#formula_operationsFormulaOperations (readonly)

Returns formula_operations.

Returns:



53
54
55
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 53

def formula_operations
  @formula_operations
end

Returns gallery_image_operations.

Returns:



56
57
58
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 56

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



35
36
37
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 35

def generate_client_request_id
  @generate_client_request_id
end

#lab_operationsLabOperations (readonly)

Returns lab_operations.

Returns:



38
39
40
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 38

def lab_operations
  @lab_operations
end

#long_running_operation_retry_timeoutInteger

Running Operations. Default value is 30.

Returns:

  • (Integer)

    Gets or sets the retry timeout in seconds for Long



31
32
33
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 31

def long_running_operation_retry_timeout
  @long_running_operation_retry_timeout
end

#policy_operationsPolicyOperations (readonly)

Returns policy_operations.

Returns:



62
63
64
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 62

def policy_operations
  @policy_operations
end

#policy_setPolicySet (readonly)

Returns policy_set.

Returns:



59
60
61
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 59

def policy_set
  @policy_set
end

#schedule_operationsScheduleOperations (readonly)

Returns schedule_operations.

Returns:



65
66
67
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 65

def schedule_operations
  @schedule_operations
end

#subscription_idString

Returns The subscription ID.

Returns:

  • (String)

    The subscription ID.



24
25
26
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 24

def subscription_id
  @subscription_id
end

#virtual_machineVirtualMachine (readonly)

Returns virtual_machine.

Returns:



68
69
70
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 68

def virtual_machine
  @virtual_machine
end

#virtual_network_operationsVirtualNetworkOperations (readonly)

Returns virtual_network_operations.

Returns:



71
72
73
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 71

def virtual_network_operations
  @virtual_network_operations
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.



121
122
123
124
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 121

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.



146
147
148
149
150
151
152
153
154
155
156
157
158
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 146

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.



133
134
135
136
137
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 133

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