Class: Azure::Cosmosdb::Mgmt::V2020_04_01::CosmosDBManagementClient

Inherits:
MsRestAzure::AzureServiceClient
  • Object
show all
Includes:
MsRestAzure, MsRestAzure::Serialization
Defined in:
lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_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) ⇒ CosmosDBManagementClient

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



101
102
103
104
105
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
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 101

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

  @database_accounts = DatabaseAccounts.new(self)
  @operations = Operations.new(self)
  @database = Database.new(self)
  @collection = Collection.new(self)
  @collection_region = CollectionRegion.new(self)
  @database_account_region = DatabaseAccountRegion.new(self)
  @percentile_source_target = PercentileSourceTarget.new(self)
  @percentile_target = PercentileTarget.new(self)
  @percentile = Percentile.new(self)
  @collection_partition_region = CollectionPartitionRegion.new(self)
  @collection_partition = CollectionPartition.new(self)
  @partition_key_range_id = PartitionKeyRangeId.new(self)
  @partition_key_range_id_region = PartitionKeyRangeIdRegion.new(self)
  @sql_resources = SqlResources.new(self)
  @mongo_dbresources = MongoDBResources.new(self)
  @table_resources = TableResources.new(self)
  @cassandra_resources = CassandraResources.new(self)
  @gremlin_resources = GremlinResources.new(self)
  @notebook_workspaces = NotebookWorkspaces.new(self)
  @api_version = '2020-04-01'
  @accept_language = 'en-US'
  @long_running_operation_retry_timeout = 30
  @generate_client_request_id = true
  add_telemetry
end

Instance Attribute Details

#accept_languageString

Returns The preferred language for the response.

Returns:

  • (String)

    The preferred language for the response.



27
28
29
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 27

def accept_language
  @accept_language
end

#api_versionString (readonly)

Returns The API version to use for this operation.

Returns:

  • (String)

    The API version to use for this operation.



21
22
23
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 21

def api_version
  @api_version
end

#base_urlString

Returns the base URI of the service.

Returns:

  • (String)

    the base URI of the service.



15
16
17
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 15

def base_url
  @base_url
end

#cassandra_resourcesCassandraResources (readonly)

Returns cassandra_resources.

Returns:



87
88
89
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 87

def cassandra_resources
  @cassandra_resources
end

#collectionCollection (readonly)

Returns collection.

Returns:



48
49
50
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 48

def collection
  @collection
end

#collection_partitionCollectionPartition (readonly)

Returns collection_partition.

Returns:



69
70
71
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 69

def collection_partition
  @collection_partition
end

#collection_partition_regionCollectionPartitionRegion (readonly)

Returns collection_partition_region.

Returns:



66
67
68
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 66

def collection_partition_region
  @collection_partition_region
end

#collection_regionCollectionRegion (readonly)

Returns collection_region.

Returns:



51
52
53
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 51

def collection_region
  @collection_region
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/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 18

def credentials
  @credentials
end

#databaseDatabase (readonly)

Returns database.

Returns:



45
46
47
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 45

def database
  @database
end

#database_account_regionDatabaseAccountRegion (readonly)

Returns database_account_region.

Returns:



54
55
56
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 54

def 
  @database_account_region
end

#database_accountsDatabaseAccounts (readonly)

Returns database_accounts.

Returns:



39
40
41
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 39

def database_accounts
  @database_accounts
end

#generate_client_request_idBoolean

generated. When set to true a unique x-ms-client-request-id value is generated and included in each request. Default is true.

Returns:

  • (Boolean)

    Whether a unique x-ms-client-request-id should be



36
37
38
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 36

def generate_client_request_id
  @generate_client_request_id
end

#gremlin_resourcesGremlinResources (readonly)

Returns gremlin_resources.

Returns:



90
91
92
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 90

def gremlin_resources
  @gremlin_resources
end

#long_running_operation_retry_timeoutInteger

Operations. Default value is 30.

Returns:

  • (Integer)

    The retry timeout in seconds for Long Running



31
32
33
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 31

def long_running_operation_retry_timeout
  @long_running_operation_retry_timeout
end

#mongo_dbresourcesMongoDBResources (readonly)

Returns mongo_dbresources.

Returns:



81
82
83
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 81

def mongo_dbresources
  @mongo_dbresources
end

#notebook_workspacesNotebookWorkspaces (readonly)

Returns notebook_workspaces.

Returns:



93
94
95
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 93

def notebook_workspaces
  @notebook_workspaces
end

#operationsOperations (readonly)

Returns operations.

Returns:



42
43
44
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 42

def operations
  @operations
end

#partition_key_range_idPartitionKeyRangeId (readonly)

Returns partition_key_range_id.

Returns:



72
73
74
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 72

def partition_key_range_id
  @partition_key_range_id
end

#partition_key_range_id_regionPartitionKeyRangeIdRegion (readonly)

Returns partition_key_range_id_region.

Returns:



75
76
77
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 75

def partition_key_range_id_region
  @partition_key_range_id_region
end

#percentilePercentile (readonly)

Returns percentile.

Returns:



63
64
65
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 63

def percentile
  @percentile
end

#percentile_source_targetPercentileSourceTarget (readonly)

Returns percentile_source_target.

Returns:



57
58
59
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 57

def percentile_source_target
  @percentile_source_target
end

#percentile_targetPercentileTarget (readonly)

Returns percentile_target.

Returns:



60
61
62
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 60

def percentile_target
  @percentile_target
end

#sql_resourcesSqlResources (readonly)

Returns sql_resources.

Returns:



78
79
80
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 78

def sql_resources
  @sql_resources
end

#subscription_idString

Returns The ID of the target subscription.

Returns:

  • (String)

    The ID of the target subscription.



24
25
26
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 24

def subscription_id
  @subscription_id
end

#table_resourcesTableResources (readonly)

Returns table_resources.

Returns:



84
85
86
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 84

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



150
151
152
153
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 150

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.



175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 175

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
  if(!options[:headers].nil? && !options[:headers]['Content-Type'].nil?)
    @request_headers['Content-Type'] = options[:headers]['Content-Type']
  end

  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.



162
163
164
165
166
# File 'lib/2020-04-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 162

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