Class: Azure::Cosmosdb::Mgmt::V2019_08_01::CosmosDBManagementClient

Inherits:
MsRestAzure::AzureServiceClient
  • Object
show all
Includes:
MsRestAzure, MsRestAzure::Serialization
Defined in:
lib/2019-08-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.



99
100
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
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 99

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)
  @api_version = '2019-08-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.



28
29
30
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 28

def accept_language
  @accept_language
end

#api_versionString (readonly)

The current version is 2019-08-01.

Returns:

  • (String)

    Version of the API to be used with the client request.



25
26
27
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 25

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/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 15

def base_url
  @base_url
end

#cassandra_resourcesCassandraResources (readonly)

Returns cassandra_resources.

Returns:



88
89
90
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 88

def cassandra_resources
  @cassandra_resources
end

#collectionCollection (readonly)

Returns collection.

Returns:



49
50
51
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 49

def collection
  @collection
end

#collection_partitionCollectionPartition (readonly)

Returns collection_partition.

Returns:



70
71
72
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 70

def collection_partition
  @collection_partition
end

#collection_partition_regionCollectionPartitionRegion (readonly)

Returns collection_partition_region.

Returns:



67
68
69
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 67

def collection_partition_region
  @collection_partition_region
end

#collection_regionCollectionRegion (readonly)

Returns collection_region.

Returns:



52
53
54
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 52

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/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 18

def credentials
  @credentials
end

#databaseDatabase (readonly)

Returns database.

Returns:



46
47
48
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 46

def database
  @database
end

#database_account_regionDatabaseAccountRegion (readonly)

Returns database_account_region.

Returns:



55
56
57
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 55

def 
  @database_account_region
end

#database_accountsDatabaseAccounts (readonly)

Returns database_accounts.

Returns:



40
41
42
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 40

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



37
38
39
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 37

def generate_client_request_id
  @generate_client_request_id
end

#gremlin_resourcesGremlinResources (readonly)

Returns gremlin_resources.

Returns:



91
92
93
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 91

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



32
33
34
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 32

def long_running_operation_retry_timeout
  @long_running_operation_retry_timeout
end

#mongo_dbresourcesMongoDBResources (readonly)

Returns mongo_dbresources.

Returns:



82
83
84
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 82

def mongo_dbresources
  @mongo_dbresources
end

#operationsOperations (readonly)

Returns operations.

Returns:



43
44
45
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 43

def operations
  @operations
end

#partition_key_range_idPartitionKeyRangeId (readonly)

Returns partition_key_range_id.

Returns:



73
74
75
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 73

def partition_key_range_id
  @partition_key_range_id
end

#partition_key_range_id_regionPartitionKeyRangeIdRegion (readonly)

Returns partition_key_range_id_region.

Returns:



76
77
78
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 76

def partition_key_range_id_region
  @partition_key_range_id_region
end

#percentilePercentile (readonly)

Returns percentile.

Returns:



64
65
66
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 64

def percentile
  @percentile
end

#percentile_source_targetPercentileSourceTarget (readonly)

Returns percentile_source_target.

Returns:



58
59
60
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 58

def percentile_source_target
  @percentile_source_target
end

#percentile_targetPercentileTarget (readonly)

Returns percentile_target.

Returns:



61
62
63
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 61

def percentile_target
  @percentile_target
end

#sql_resourcesSqlResources (readonly)

Returns sql_resources.

Returns:



79
80
81
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 79

def sql_resources
  @sql_resources
end

#subscription_idString

Returns Azure subscription ID.

Returns:

  • (String)

    Azure subscription ID.



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

def subscription_id
  @subscription_id
end

#table_resourcesTableResources (readonly)

Returns table_resources.

Returns:



85
86
87
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 85

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.



147
148
149
150
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 147

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.



172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 172

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.



159
160
161
162
163
# File 'lib/2019-08-01/generated/azure_mgmt_cosmosdb/cosmos_dbmanagement_client.rb', line 159

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