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.



106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 106

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

  @labs = Labs.new(self)
  @global_schedules = GlobalSchedules.new(self)
  @artifact_sources = ArtifactSources.new(self)
  @arm_templates = ArmTemplates.new(self)
  @artifacts = Artifacts.new(self)
  @costs = Costs.new(self)
  @custom_images = CustomImages.new(self)
  @formulas = Formulas.new(self)
  @gallery_images = GalleryImages.new(self)
  @notification_channels = NotificationChannels.new(self)
  @policy_sets = PolicySets.new(self)
  @policies = Policies.new(self)
  @schedules = Schedules.new(self)
  @service_runners = ServiceRunners.new(self)
  @users = Users.new(self)
  @disks = Disks.new(self)
  @environments = Environments.new(self)
  @secrets = Secrets.new(self)
  @virtual_machines = VirtualMachines.new(self)
  @virtual_machine_schedules = VirtualMachineSchedules.new(self)
  @virtual_networks = VirtualNetworks.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

#arm_templatesArmTemplates (readonly)

Returns arm_templates.

Returns:



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

def arm_templates
  @arm_templates
end

#artifact_sourcesArtifactSources (readonly)

Returns artifact_sources.

Returns:



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

def artifact_sources
  @artifact_sources
end

#artifactsArtifacts (readonly)

Returns artifacts.

Returns:



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

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

#costsCosts (readonly)

Returns costs.

Returns:



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

def costs
  @costs
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_imagesCustomImages (readonly)

Returns custom_images.

Returns:



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

def custom_images
  @custom_images
end

#disksDisks (readonly)

Returns disks.

Returns:



83
84
85
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 83

def disks
  @disks
end

#environmentsEnvironments (readonly)

Returns environments.

Returns:



86
87
88
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 86

def environments
  @environments
end

#formulasFormulas (readonly)

Returns formulas.

Returns:



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

def formulas
  @formulas
end

Returns gallery_images.

Returns:



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

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

#global_schedulesGlobalSchedules (readonly)

Returns global_schedules.

Returns:



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

def global_schedules
  @global_schedules
end

#labsLabs (readonly)

Returns labs.

Returns:



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

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

#notification_channelsNotificationChannels (readonly)

Returns notification_channels.

Returns:



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

def notification_channels
  @notification_channels
end

#policiesPolicies (readonly)

Returns policies.

Returns:



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

def policies
  @policies
end

#policy_setsPolicySets (readonly)

Returns policy_sets.

Returns:



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

def policy_sets
  @policy_sets
end

#schedulesSchedules (readonly)

Returns schedules.

Returns:



74
75
76
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 74

def schedules
  @schedules
end

#secretsSecrets (readonly)

Returns secrets.

Returns:



89
90
91
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 89

def secrets
  @secrets
end

#service_runnersServiceRunners (readonly)

Returns service_runners.

Returns:



77
78
79
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 77

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

#usersUsers (readonly)

Returns users.

Returns:



80
81
82
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 80

def users
  @users
end

#virtual_machine_schedulesVirtualMachineSchedules (readonly)

Returns virtual_machine_schedules.

Returns:



95
96
97
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 95

def virtual_machine_schedules
  @virtual_machine_schedules
end

#virtual_machinesVirtualMachines (readonly)

Returns virtual_machines.

Returns:



92
93
94
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 92

def virtual_machines
  @virtual_machines
end

#virtual_networksVirtualNetworks (readonly)

Returns virtual_networks.

Returns:



98
99
100
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 98

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



157
158
159
160
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 157

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.



182
183
184
185
186
187
188
189
190
191
192
193
194
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 182

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.



169
170
171
172
173
# File 'lib/generated/azure_mgmt_devtestlabs/dev_test_labs_client.rb', line 169

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