1package documentdb 2 3// Copyright (c) Microsoft and contributors. All rights reserved. 4// 5// Licensed under the Apache License, Version 2.0 (the "License"); 6// you may not use this file except in compliance with the License. 7// You may obtain a copy of the License at 8// http://www.apache.org/licenses/LICENSE-2.0 9// 10// Unless required by applicable law or agreed to in writing, software 11// distributed under the License is distributed on an "AS IS" BASIS, 12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13// 14// See the License for the specific language governing permissions and 15// limitations under the License. 16// 17// Code generated by Microsoft (R) AutoRest Code Generator. 18// Changes may cause incorrect behavior and will be lost if the code is regenerated. 19 20import ( 21 "context" 22 "github.com/Azure/go-autorest/autorest" 23 "github.com/Azure/go-autorest/autorest/azure" 24 "github.com/Azure/go-autorest/autorest/validation" 25 "github.com/Azure/go-autorest/tracing" 26 "net/http" 27) 28 29// SQLResourcesClient is the azure Cosmos DB Database Service Resource Provider REST API 30type SQLResourcesClient struct { 31 BaseClient 32} 33 34// NewSQLResourcesClient creates an instance of the SQLResourcesClient client. 35func NewSQLResourcesClient(subscriptionID string, subscriptionID1 string) SQLResourcesClient { 36 return NewSQLResourcesClientWithBaseURI(DefaultBaseURI, subscriptionID, subscriptionID1) 37} 38 39// NewSQLResourcesClientWithBaseURI creates an instance of the SQLResourcesClient client using a custom endpoint. Use 40// this when interacting with an Azure cloud that uses a non-standard base URI (sovereign clouds, Azure stack). 41func NewSQLResourcesClientWithBaseURI(baseURI string, subscriptionID string, subscriptionID1 string) SQLResourcesClient { 42 return SQLResourcesClient{NewWithBaseURI(baseURI, subscriptionID, subscriptionID1)} 43} 44 45// CreateUpdateSQLContainer create or update an Azure Cosmos DB SQL container 46// Parameters: 47// resourceGroupName - name of an Azure resource group. 48// accountName - cosmos DB database account name. 49// databaseName - cosmos DB database name. 50// containerName - cosmos DB container name. 51// createUpdateSQLContainerParameters - the parameters to provide for the current SQL container. 52func (client SQLResourcesClient) CreateUpdateSQLContainer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, createUpdateSQLContainerParameters SQLContainerCreateUpdateParameters) (result SQLResourcesCreateUpdateSQLContainerFuture, err error) { 53 if tracing.IsEnabled() { 54 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.CreateUpdateSQLContainer") 55 defer func() { 56 sc := -1 57 if result.FutureAPI != nil && result.FutureAPI.Response() != nil { 58 sc = result.FutureAPI.Response().StatusCode 59 } 60 tracing.EndSpan(ctx, sc, err) 61 }() 62 } 63 if err := validation.Validate([]validation.Validation{ 64 {TargetValue: resourceGroupName, 65 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 66 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 67 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 68 {TargetValue: accountName, 69 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 70 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 71 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}, 72 {TargetValue: createUpdateSQLContainerParameters, 73 Constraints: []validation.Constraint{{Target: "createUpdateSQLContainerParameters.SQLContainerCreateUpdateProperties", Name: validation.Null, Rule: true, 74 Chain: []validation.Constraint{{Target: "createUpdateSQLContainerParameters.SQLContainerCreateUpdateProperties.Resource", Name: validation.Null, Rule: true, 75 Chain: []validation.Constraint{{Target: "createUpdateSQLContainerParameters.SQLContainerCreateUpdateProperties.Resource.ID", Name: validation.Null, Rule: true, Chain: nil}, 76 {Target: "createUpdateSQLContainerParameters.SQLContainerCreateUpdateProperties.Resource.PartitionKey", Name: validation.Null, Rule: false, 77 Chain: []validation.Constraint{{Target: "createUpdateSQLContainerParameters.SQLContainerCreateUpdateProperties.Resource.PartitionKey.Version", Name: validation.Null, Rule: false, 78 Chain: []validation.Constraint{{Target: "createUpdateSQLContainerParameters.SQLContainerCreateUpdateProperties.Resource.PartitionKey.Version", Name: validation.InclusiveMaximum, Rule: int64(2), Chain: nil}, 79 {Target: "createUpdateSQLContainerParameters.SQLContainerCreateUpdateProperties.Resource.PartitionKey.Version", Name: validation.InclusiveMinimum, Rule: int64(1), Chain: nil}, 80 }}, 81 }}, 82 }}, 83 {Target: "createUpdateSQLContainerParameters.SQLContainerCreateUpdateProperties.Options", Name: validation.Null, Rule: true, Chain: nil}, 84 }}}}}); err != nil { 85 return result, validation.NewError("documentdb.SQLResourcesClient", "CreateUpdateSQLContainer", err.Error()) 86 } 87 88 req, err := client.CreateUpdateSQLContainerPreparer(ctx, resourceGroupName, accountName, databaseName, containerName, createUpdateSQLContainerParameters) 89 if err != nil { 90 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "CreateUpdateSQLContainer", nil, "Failure preparing request") 91 return 92 } 93 94 result, err = client.CreateUpdateSQLContainerSender(req) 95 if err != nil { 96 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "CreateUpdateSQLContainer", nil, "Failure sending request") 97 return 98 } 99 100 return 101} 102 103// CreateUpdateSQLContainerPreparer prepares the CreateUpdateSQLContainer request. 104func (client SQLResourcesClient) CreateUpdateSQLContainerPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, createUpdateSQLContainerParameters SQLContainerCreateUpdateParameters) (*http.Request, error) { 105 pathParameters := map[string]interface{}{ 106 "accountName": autorest.Encode("path", accountName), 107 "containerName": autorest.Encode("path", containerName), 108 "databaseName": autorest.Encode("path", databaseName), 109 "resourceGroupName": autorest.Encode("path", resourceGroupName), 110 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 111 } 112 113 const APIVersion = "2019-12-12" 114 queryParameters := map[string]interface{}{ 115 "api-version": APIVersion, 116 } 117 118 preparer := autorest.CreatePreparer( 119 autorest.AsContentType("application/json; charset=utf-8"), 120 autorest.AsPut(), 121 autorest.WithBaseURL(client.BaseURI), 122 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}", pathParameters), 123 autorest.WithJSON(createUpdateSQLContainerParameters), 124 autorest.WithQueryParameters(queryParameters)) 125 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 126} 127 128// CreateUpdateSQLContainerSender sends the CreateUpdateSQLContainer request. The method will close the 129// http.Response Body if it receives an error. 130func (client SQLResourcesClient) CreateUpdateSQLContainerSender(req *http.Request) (future SQLResourcesCreateUpdateSQLContainerFuture, err error) { 131 var resp *http.Response 132 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 133 if err != nil { 134 return 135 } 136 var azf azure.Future 137 azf, err = azure.NewFutureFromResponse(resp) 138 future.FutureAPI = &azf 139 future.Result = func(client SQLResourcesClient) (scgr SQLContainerGetResults, err error) { 140 var done bool 141 done, err = future.DoneWithContext(context.Background(), client) 142 if err != nil { 143 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLContainerFuture", "Result", future.Response(), "Polling failure") 144 return 145 } 146 if !done { 147 err = azure.NewAsyncOpIncompleteError("documentdb.SQLResourcesCreateUpdateSQLContainerFuture") 148 return 149 } 150 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 151 scgr.Response.Response, err = future.GetResult(sender) 152 if scgr.Response.Response == nil && err == nil { 153 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLContainerFuture", "Result", nil, "received nil response and error") 154 } 155 if err == nil && scgr.Response.Response.StatusCode != http.StatusNoContent { 156 scgr, err = client.CreateUpdateSQLContainerResponder(scgr.Response.Response) 157 if err != nil { 158 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLContainerFuture", "Result", scgr.Response.Response, "Failure responding to request") 159 } 160 } 161 return 162 } 163 return 164} 165 166// CreateUpdateSQLContainerResponder handles the response to the CreateUpdateSQLContainer request. The method always 167// closes the http.Response Body. 168func (client SQLResourcesClient) CreateUpdateSQLContainerResponder(resp *http.Response) (result SQLContainerGetResults, err error) { 169 err = autorest.Respond( 170 resp, 171 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted), 172 autorest.ByUnmarshallingJSON(&result), 173 autorest.ByClosing()) 174 result.Response = autorest.Response{Response: resp} 175 return 176} 177 178// CreateUpdateSQLDatabase create or update an Azure Cosmos DB SQL database 179// Parameters: 180// resourceGroupName - name of an Azure resource group. 181// accountName - cosmos DB database account name. 182// databaseName - cosmos DB database name. 183// createUpdateSQLDatabaseParameters - the parameters to provide for the current SQL database. 184func (client SQLResourcesClient) CreateUpdateSQLDatabase(ctx context.Context, resourceGroupName string, accountName string, databaseName string, createUpdateSQLDatabaseParameters SQLDatabaseCreateUpdateParameters) (result SQLResourcesCreateUpdateSQLDatabaseFuture, err error) { 185 if tracing.IsEnabled() { 186 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.CreateUpdateSQLDatabase") 187 defer func() { 188 sc := -1 189 if result.FutureAPI != nil && result.FutureAPI.Response() != nil { 190 sc = result.FutureAPI.Response().StatusCode 191 } 192 tracing.EndSpan(ctx, sc, err) 193 }() 194 } 195 if err := validation.Validate([]validation.Validation{ 196 {TargetValue: resourceGroupName, 197 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 198 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 199 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 200 {TargetValue: accountName, 201 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 202 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 203 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}, 204 {TargetValue: createUpdateSQLDatabaseParameters, 205 Constraints: []validation.Constraint{{Target: "createUpdateSQLDatabaseParameters.SQLDatabaseCreateUpdateProperties", Name: validation.Null, Rule: true, 206 Chain: []validation.Constraint{{Target: "createUpdateSQLDatabaseParameters.SQLDatabaseCreateUpdateProperties.Resource", Name: validation.Null, Rule: true, 207 Chain: []validation.Constraint{{Target: "createUpdateSQLDatabaseParameters.SQLDatabaseCreateUpdateProperties.Resource.ID", Name: validation.Null, Rule: true, Chain: nil}}}, 208 {Target: "createUpdateSQLDatabaseParameters.SQLDatabaseCreateUpdateProperties.Options", Name: validation.Null, Rule: true, Chain: nil}, 209 }}}}}); err != nil { 210 return result, validation.NewError("documentdb.SQLResourcesClient", "CreateUpdateSQLDatabase", err.Error()) 211 } 212 213 req, err := client.CreateUpdateSQLDatabasePreparer(ctx, resourceGroupName, accountName, databaseName, createUpdateSQLDatabaseParameters) 214 if err != nil { 215 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "CreateUpdateSQLDatabase", nil, "Failure preparing request") 216 return 217 } 218 219 result, err = client.CreateUpdateSQLDatabaseSender(req) 220 if err != nil { 221 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "CreateUpdateSQLDatabase", nil, "Failure sending request") 222 return 223 } 224 225 return 226} 227 228// CreateUpdateSQLDatabasePreparer prepares the CreateUpdateSQLDatabase request. 229func (client SQLResourcesClient) CreateUpdateSQLDatabasePreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, createUpdateSQLDatabaseParameters SQLDatabaseCreateUpdateParameters) (*http.Request, error) { 230 pathParameters := map[string]interface{}{ 231 "accountName": autorest.Encode("path", accountName), 232 "databaseName": autorest.Encode("path", databaseName), 233 "resourceGroupName": autorest.Encode("path", resourceGroupName), 234 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 235 } 236 237 const APIVersion = "2019-12-12" 238 queryParameters := map[string]interface{}{ 239 "api-version": APIVersion, 240 } 241 242 preparer := autorest.CreatePreparer( 243 autorest.AsContentType("application/json; charset=utf-8"), 244 autorest.AsPut(), 245 autorest.WithBaseURL(client.BaseURI), 246 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}", pathParameters), 247 autorest.WithJSON(createUpdateSQLDatabaseParameters), 248 autorest.WithQueryParameters(queryParameters)) 249 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 250} 251 252// CreateUpdateSQLDatabaseSender sends the CreateUpdateSQLDatabase request. The method will close the 253// http.Response Body if it receives an error. 254func (client SQLResourcesClient) CreateUpdateSQLDatabaseSender(req *http.Request) (future SQLResourcesCreateUpdateSQLDatabaseFuture, err error) { 255 var resp *http.Response 256 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 257 if err != nil { 258 return 259 } 260 var azf azure.Future 261 azf, err = azure.NewFutureFromResponse(resp) 262 future.FutureAPI = &azf 263 future.Result = func(client SQLResourcesClient) (sdgr SQLDatabaseGetResults, err error) { 264 var done bool 265 done, err = future.DoneWithContext(context.Background(), client) 266 if err != nil { 267 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLDatabaseFuture", "Result", future.Response(), "Polling failure") 268 return 269 } 270 if !done { 271 err = azure.NewAsyncOpIncompleteError("documentdb.SQLResourcesCreateUpdateSQLDatabaseFuture") 272 return 273 } 274 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 275 sdgr.Response.Response, err = future.GetResult(sender) 276 if sdgr.Response.Response == nil && err == nil { 277 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLDatabaseFuture", "Result", nil, "received nil response and error") 278 } 279 if err == nil && sdgr.Response.Response.StatusCode != http.StatusNoContent { 280 sdgr, err = client.CreateUpdateSQLDatabaseResponder(sdgr.Response.Response) 281 if err != nil { 282 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLDatabaseFuture", "Result", sdgr.Response.Response, "Failure responding to request") 283 } 284 } 285 return 286 } 287 return 288} 289 290// CreateUpdateSQLDatabaseResponder handles the response to the CreateUpdateSQLDatabase request. The method always 291// closes the http.Response Body. 292func (client SQLResourcesClient) CreateUpdateSQLDatabaseResponder(resp *http.Response) (result SQLDatabaseGetResults, err error) { 293 err = autorest.Respond( 294 resp, 295 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted), 296 autorest.ByUnmarshallingJSON(&result), 297 autorest.ByClosing()) 298 result.Response = autorest.Response{Response: resp} 299 return 300} 301 302// CreateUpdateSQLStoredProcedure create or update an Azure Cosmos DB SQL storedProcedure 303// Parameters: 304// resourceGroupName - name of an Azure resource group. 305// accountName - cosmos DB database account name. 306// databaseName - cosmos DB database name. 307// containerName - cosmos DB container name. 308// storedProcedureName - cosmos DB storedProcedure name. 309// createUpdateSQLStoredProcedureParameters - the parameters to provide for the current SQL storedProcedure. 310func (client SQLResourcesClient) CreateUpdateSQLStoredProcedure(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, storedProcedureName string, createUpdateSQLStoredProcedureParameters SQLStoredProcedureCreateUpdateParameters) (result SQLResourcesCreateUpdateSQLStoredProcedureFuture, err error) { 311 if tracing.IsEnabled() { 312 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.CreateUpdateSQLStoredProcedure") 313 defer func() { 314 sc := -1 315 if result.FutureAPI != nil && result.FutureAPI.Response() != nil { 316 sc = result.FutureAPI.Response().StatusCode 317 } 318 tracing.EndSpan(ctx, sc, err) 319 }() 320 } 321 if err := validation.Validate([]validation.Validation{ 322 {TargetValue: resourceGroupName, 323 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 324 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 325 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 326 {TargetValue: accountName, 327 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 328 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 329 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}, 330 {TargetValue: createUpdateSQLStoredProcedureParameters, 331 Constraints: []validation.Constraint{{Target: "createUpdateSQLStoredProcedureParameters.SQLStoredProcedureCreateUpdateProperties", Name: validation.Null, Rule: true, 332 Chain: []validation.Constraint{{Target: "createUpdateSQLStoredProcedureParameters.SQLStoredProcedureCreateUpdateProperties.Resource", Name: validation.Null, Rule: true, 333 Chain: []validation.Constraint{{Target: "createUpdateSQLStoredProcedureParameters.SQLStoredProcedureCreateUpdateProperties.Resource.ID", Name: validation.Null, Rule: true, Chain: nil}}}, 334 {Target: "createUpdateSQLStoredProcedureParameters.SQLStoredProcedureCreateUpdateProperties.Options", Name: validation.Null, Rule: true, Chain: nil}, 335 }}}}}); err != nil { 336 return result, validation.NewError("documentdb.SQLResourcesClient", "CreateUpdateSQLStoredProcedure", err.Error()) 337 } 338 339 req, err := client.CreateUpdateSQLStoredProcedurePreparer(ctx, resourceGroupName, accountName, databaseName, containerName, storedProcedureName, createUpdateSQLStoredProcedureParameters) 340 if err != nil { 341 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "CreateUpdateSQLStoredProcedure", nil, "Failure preparing request") 342 return 343 } 344 345 result, err = client.CreateUpdateSQLStoredProcedureSender(req) 346 if err != nil { 347 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "CreateUpdateSQLStoredProcedure", nil, "Failure sending request") 348 return 349 } 350 351 return 352} 353 354// CreateUpdateSQLStoredProcedurePreparer prepares the CreateUpdateSQLStoredProcedure request. 355func (client SQLResourcesClient) CreateUpdateSQLStoredProcedurePreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, storedProcedureName string, createUpdateSQLStoredProcedureParameters SQLStoredProcedureCreateUpdateParameters) (*http.Request, error) { 356 pathParameters := map[string]interface{}{ 357 "accountName": autorest.Encode("path", accountName), 358 "containerName": autorest.Encode("path", containerName), 359 "databaseName": autorest.Encode("path", databaseName), 360 "resourceGroupName": autorest.Encode("path", resourceGroupName), 361 "storedProcedureName": autorest.Encode("path", storedProcedureName), 362 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 363 } 364 365 const APIVersion = "2019-12-12" 366 queryParameters := map[string]interface{}{ 367 "api-version": APIVersion, 368 } 369 370 preparer := autorest.CreatePreparer( 371 autorest.AsContentType("application/json; charset=utf-8"), 372 autorest.AsPut(), 373 autorest.WithBaseURL(client.BaseURI), 374 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures/{storedProcedureName}", pathParameters), 375 autorest.WithJSON(createUpdateSQLStoredProcedureParameters), 376 autorest.WithQueryParameters(queryParameters)) 377 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 378} 379 380// CreateUpdateSQLStoredProcedureSender sends the CreateUpdateSQLStoredProcedure request. The method will close the 381// http.Response Body if it receives an error. 382func (client SQLResourcesClient) CreateUpdateSQLStoredProcedureSender(req *http.Request) (future SQLResourcesCreateUpdateSQLStoredProcedureFuture, err error) { 383 var resp *http.Response 384 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 385 if err != nil { 386 return 387 } 388 var azf azure.Future 389 azf, err = azure.NewFutureFromResponse(resp) 390 future.FutureAPI = &azf 391 future.Result = func(client SQLResourcesClient) (sspgr SQLStoredProcedureGetResults, err error) { 392 var done bool 393 done, err = future.DoneWithContext(context.Background(), client) 394 if err != nil { 395 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLStoredProcedureFuture", "Result", future.Response(), "Polling failure") 396 return 397 } 398 if !done { 399 err = azure.NewAsyncOpIncompleteError("documentdb.SQLResourcesCreateUpdateSQLStoredProcedureFuture") 400 return 401 } 402 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 403 sspgr.Response.Response, err = future.GetResult(sender) 404 if sspgr.Response.Response == nil && err == nil { 405 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLStoredProcedureFuture", "Result", nil, "received nil response and error") 406 } 407 if err == nil && sspgr.Response.Response.StatusCode != http.StatusNoContent { 408 sspgr, err = client.CreateUpdateSQLStoredProcedureResponder(sspgr.Response.Response) 409 if err != nil { 410 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLStoredProcedureFuture", "Result", sspgr.Response.Response, "Failure responding to request") 411 } 412 } 413 return 414 } 415 return 416} 417 418// CreateUpdateSQLStoredProcedureResponder handles the response to the CreateUpdateSQLStoredProcedure request. The method always 419// closes the http.Response Body. 420func (client SQLResourcesClient) CreateUpdateSQLStoredProcedureResponder(resp *http.Response) (result SQLStoredProcedureGetResults, err error) { 421 err = autorest.Respond( 422 resp, 423 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted), 424 autorest.ByUnmarshallingJSON(&result), 425 autorest.ByClosing()) 426 result.Response = autorest.Response{Response: resp} 427 return 428} 429 430// CreateUpdateSQLTrigger create or update an Azure Cosmos DB SQL trigger 431// Parameters: 432// resourceGroupName - name of an Azure resource group. 433// accountName - cosmos DB database account name. 434// databaseName - cosmos DB database name. 435// containerName - cosmos DB container name. 436// triggerName - cosmos DB trigger name. 437// createUpdateSQLTriggerParameters - the parameters to provide for the current SQL trigger. 438func (client SQLResourcesClient) CreateUpdateSQLTrigger(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, triggerName string, createUpdateSQLTriggerParameters SQLTriggerCreateUpdateParameters) (result SQLResourcesCreateUpdateSQLTriggerFuture, err error) { 439 if tracing.IsEnabled() { 440 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.CreateUpdateSQLTrigger") 441 defer func() { 442 sc := -1 443 if result.FutureAPI != nil && result.FutureAPI.Response() != nil { 444 sc = result.FutureAPI.Response().StatusCode 445 } 446 tracing.EndSpan(ctx, sc, err) 447 }() 448 } 449 if err := validation.Validate([]validation.Validation{ 450 {TargetValue: resourceGroupName, 451 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 452 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 453 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 454 {TargetValue: accountName, 455 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 456 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 457 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}, 458 {TargetValue: createUpdateSQLTriggerParameters, 459 Constraints: []validation.Constraint{{Target: "createUpdateSQLTriggerParameters.SQLTriggerCreateUpdateProperties", Name: validation.Null, Rule: true, 460 Chain: []validation.Constraint{{Target: "createUpdateSQLTriggerParameters.SQLTriggerCreateUpdateProperties.Resource", Name: validation.Null, Rule: true, 461 Chain: []validation.Constraint{{Target: "createUpdateSQLTriggerParameters.SQLTriggerCreateUpdateProperties.Resource.ID", Name: validation.Null, Rule: true, Chain: nil}}}, 462 {Target: "createUpdateSQLTriggerParameters.SQLTriggerCreateUpdateProperties.Options", Name: validation.Null, Rule: true, Chain: nil}, 463 }}}}}); err != nil { 464 return result, validation.NewError("documentdb.SQLResourcesClient", "CreateUpdateSQLTrigger", err.Error()) 465 } 466 467 req, err := client.CreateUpdateSQLTriggerPreparer(ctx, resourceGroupName, accountName, databaseName, containerName, triggerName, createUpdateSQLTriggerParameters) 468 if err != nil { 469 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "CreateUpdateSQLTrigger", nil, "Failure preparing request") 470 return 471 } 472 473 result, err = client.CreateUpdateSQLTriggerSender(req) 474 if err != nil { 475 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "CreateUpdateSQLTrigger", nil, "Failure sending request") 476 return 477 } 478 479 return 480} 481 482// CreateUpdateSQLTriggerPreparer prepares the CreateUpdateSQLTrigger request. 483func (client SQLResourcesClient) CreateUpdateSQLTriggerPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, triggerName string, createUpdateSQLTriggerParameters SQLTriggerCreateUpdateParameters) (*http.Request, error) { 484 pathParameters := map[string]interface{}{ 485 "accountName": autorest.Encode("path", accountName), 486 "containerName": autorest.Encode("path", containerName), 487 "databaseName": autorest.Encode("path", databaseName), 488 "resourceGroupName": autorest.Encode("path", resourceGroupName), 489 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 490 "triggerName": autorest.Encode("path", triggerName), 491 } 492 493 const APIVersion = "2019-12-12" 494 queryParameters := map[string]interface{}{ 495 "api-version": APIVersion, 496 } 497 498 preparer := autorest.CreatePreparer( 499 autorest.AsContentType("application/json; charset=utf-8"), 500 autorest.AsPut(), 501 autorest.WithBaseURL(client.BaseURI), 502 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/triggers/{triggerName}", pathParameters), 503 autorest.WithJSON(createUpdateSQLTriggerParameters), 504 autorest.WithQueryParameters(queryParameters)) 505 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 506} 507 508// CreateUpdateSQLTriggerSender sends the CreateUpdateSQLTrigger request. The method will close the 509// http.Response Body if it receives an error. 510func (client SQLResourcesClient) CreateUpdateSQLTriggerSender(req *http.Request) (future SQLResourcesCreateUpdateSQLTriggerFuture, err error) { 511 var resp *http.Response 512 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 513 if err != nil { 514 return 515 } 516 var azf azure.Future 517 azf, err = azure.NewFutureFromResponse(resp) 518 future.FutureAPI = &azf 519 future.Result = func(client SQLResourcesClient) (stgr SQLTriggerGetResults, err error) { 520 var done bool 521 done, err = future.DoneWithContext(context.Background(), client) 522 if err != nil { 523 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLTriggerFuture", "Result", future.Response(), "Polling failure") 524 return 525 } 526 if !done { 527 err = azure.NewAsyncOpIncompleteError("documentdb.SQLResourcesCreateUpdateSQLTriggerFuture") 528 return 529 } 530 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 531 stgr.Response.Response, err = future.GetResult(sender) 532 if stgr.Response.Response == nil && err == nil { 533 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLTriggerFuture", "Result", nil, "received nil response and error") 534 } 535 if err == nil && stgr.Response.Response.StatusCode != http.StatusNoContent { 536 stgr, err = client.CreateUpdateSQLTriggerResponder(stgr.Response.Response) 537 if err != nil { 538 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLTriggerFuture", "Result", stgr.Response.Response, "Failure responding to request") 539 } 540 } 541 return 542 } 543 return 544} 545 546// CreateUpdateSQLTriggerResponder handles the response to the CreateUpdateSQLTrigger request. The method always 547// closes the http.Response Body. 548func (client SQLResourcesClient) CreateUpdateSQLTriggerResponder(resp *http.Response) (result SQLTriggerGetResults, err error) { 549 err = autorest.Respond( 550 resp, 551 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted), 552 autorest.ByUnmarshallingJSON(&result), 553 autorest.ByClosing()) 554 result.Response = autorest.Response{Response: resp} 555 return 556} 557 558// CreateUpdateSQLUserDefinedFunction create or update an Azure Cosmos DB SQL userDefinedFunction 559// Parameters: 560// resourceGroupName - name of an Azure resource group. 561// accountName - cosmos DB database account name. 562// databaseName - cosmos DB database name. 563// containerName - cosmos DB container name. 564// userDefinedFunctionName - cosmos DB userDefinedFunction name. 565// createUpdateSQLUserDefinedFunctionParameters - the parameters to provide for the current SQL 566// userDefinedFunction. 567func (client SQLResourcesClient) CreateUpdateSQLUserDefinedFunction(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, userDefinedFunctionName string, createUpdateSQLUserDefinedFunctionParameters SQLUserDefinedFunctionCreateUpdateParameters) (result SQLResourcesCreateUpdateSQLUserDefinedFunctionFuture, err error) { 568 if tracing.IsEnabled() { 569 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.CreateUpdateSQLUserDefinedFunction") 570 defer func() { 571 sc := -1 572 if result.FutureAPI != nil && result.FutureAPI.Response() != nil { 573 sc = result.FutureAPI.Response().StatusCode 574 } 575 tracing.EndSpan(ctx, sc, err) 576 }() 577 } 578 if err := validation.Validate([]validation.Validation{ 579 {TargetValue: resourceGroupName, 580 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 581 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 582 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 583 {TargetValue: accountName, 584 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 585 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 586 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}, 587 {TargetValue: createUpdateSQLUserDefinedFunctionParameters, 588 Constraints: []validation.Constraint{{Target: "createUpdateSQLUserDefinedFunctionParameters.SQLUserDefinedFunctionCreateUpdateProperties", Name: validation.Null, Rule: true, 589 Chain: []validation.Constraint{{Target: "createUpdateSQLUserDefinedFunctionParameters.SQLUserDefinedFunctionCreateUpdateProperties.Resource", Name: validation.Null, Rule: true, 590 Chain: []validation.Constraint{{Target: "createUpdateSQLUserDefinedFunctionParameters.SQLUserDefinedFunctionCreateUpdateProperties.Resource.ID", Name: validation.Null, Rule: true, Chain: nil}}}, 591 {Target: "createUpdateSQLUserDefinedFunctionParameters.SQLUserDefinedFunctionCreateUpdateProperties.Options", Name: validation.Null, Rule: true, Chain: nil}, 592 }}}}}); err != nil { 593 return result, validation.NewError("documentdb.SQLResourcesClient", "CreateUpdateSQLUserDefinedFunction", err.Error()) 594 } 595 596 req, err := client.CreateUpdateSQLUserDefinedFunctionPreparer(ctx, resourceGroupName, accountName, databaseName, containerName, userDefinedFunctionName, createUpdateSQLUserDefinedFunctionParameters) 597 if err != nil { 598 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "CreateUpdateSQLUserDefinedFunction", nil, "Failure preparing request") 599 return 600 } 601 602 result, err = client.CreateUpdateSQLUserDefinedFunctionSender(req) 603 if err != nil { 604 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "CreateUpdateSQLUserDefinedFunction", nil, "Failure sending request") 605 return 606 } 607 608 return 609} 610 611// CreateUpdateSQLUserDefinedFunctionPreparer prepares the CreateUpdateSQLUserDefinedFunction request. 612func (client SQLResourcesClient) CreateUpdateSQLUserDefinedFunctionPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, userDefinedFunctionName string, createUpdateSQLUserDefinedFunctionParameters SQLUserDefinedFunctionCreateUpdateParameters) (*http.Request, error) { 613 pathParameters := map[string]interface{}{ 614 "accountName": autorest.Encode("path", accountName), 615 "containerName": autorest.Encode("path", containerName), 616 "databaseName": autorest.Encode("path", databaseName), 617 "resourceGroupName": autorest.Encode("path", resourceGroupName), 618 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 619 "userDefinedFunctionName": autorest.Encode("path", userDefinedFunctionName), 620 } 621 622 const APIVersion = "2019-12-12" 623 queryParameters := map[string]interface{}{ 624 "api-version": APIVersion, 625 } 626 627 preparer := autorest.CreatePreparer( 628 autorest.AsContentType("application/json; charset=utf-8"), 629 autorest.AsPut(), 630 autorest.WithBaseURL(client.BaseURI), 631 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/userDefinedFunctions/{userDefinedFunctionName}", pathParameters), 632 autorest.WithJSON(createUpdateSQLUserDefinedFunctionParameters), 633 autorest.WithQueryParameters(queryParameters)) 634 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 635} 636 637// CreateUpdateSQLUserDefinedFunctionSender sends the CreateUpdateSQLUserDefinedFunction request. The method will close the 638// http.Response Body if it receives an error. 639func (client SQLResourcesClient) CreateUpdateSQLUserDefinedFunctionSender(req *http.Request) (future SQLResourcesCreateUpdateSQLUserDefinedFunctionFuture, err error) { 640 var resp *http.Response 641 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 642 if err != nil { 643 return 644 } 645 var azf azure.Future 646 azf, err = azure.NewFutureFromResponse(resp) 647 future.FutureAPI = &azf 648 future.Result = func(client SQLResourcesClient) (sudfgr SQLUserDefinedFunctionGetResults, err error) { 649 var done bool 650 done, err = future.DoneWithContext(context.Background(), client) 651 if err != nil { 652 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLUserDefinedFunctionFuture", "Result", future.Response(), "Polling failure") 653 return 654 } 655 if !done { 656 err = azure.NewAsyncOpIncompleteError("documentdb.SQLResourcesCreateUpdateSQLUserDefinedFunctionFuture") 657 return 658 } 659 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 660 sudfgr.Response.Response, err = future.GetResult(sender) 661 if sudfgr.Response.Response == nil && err == nil { 662 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLUserDefinedFunctionFuture", "Result", nil, "received nil response and error") 663 } 664 if err == nil && sudfgr.Response.Response.StatusCode != http.StatusNoContent { 665 sudfgr, err = client.CreateUpdateSQLUserDefinedFunctionResponder(sudfgr.Response.Response) 666 if err != nil { 667 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesCreateUpdateSQLUserDefinedFunctionFuture", "Result", sudfgr.Response.Response, "Failure responding to request") 668 } 669 } 670 return 671 } 672 return 673} 674 675// CreateUpdateSQLUserDefinedFunctionResponder handles the response to the CreateUpdateSQLUserDefinedFunction request. The method always 676// closes the http.Response Body. 677func (client SQLResourcesClient) CreateUpdateSQLUserDefinedFunctionResponder(resp *http.Response) (result SQLUserDefinedFunctionGetResults, err error) { 678 err = autorest.Respond( 679 resp, 680 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted), 681 autorest.ByUnmarshallingJSON(&result), 682 autorest.ByClosing()) 683 result.Response = autorest.Response{Response: resp} 684 return 685} 686 687// DeleteSQLContainer deletes an existing Azure Cosmos DB SQL container. 688// Parameters: 689// resourceGroupName - name of an Azure resource group. 690// accountName - cosmos DB database account name. 691// databaseName - cosmos DB database name. 692// containerName - cosmos DB container name. 693func (client SQLResourcesClient) DeleteSQLContainer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string) (result SQLResourcesDeleteSQLContainerFuture, err error) { 694 if tracing.IsEnabled() { 695 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.DeleteSQLContainer") 696 defer func() { 697 sc := -1 698 if result.FutureAPI != nil && result.FutureAPI.Response() != nil { 699 sc = result.FutureAPI.Response().StatusCode 700 } 701 tracing.EndSpan(ctx, sc, err) 702 }() 703 } 704 if err := validation.Validate([]validation.Validation{ 705 {TargetValue: resourceGroupName, 706 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 707 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 708 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 709 {TargetValue: accountName, 710 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 711 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 712 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 713 return result, validation.NewError("documentdb.SQLResourcesClient", "DeleteSQLContainer", err.Error()) 714 } 715 716 req, err := client.DeleteSQLContainerPreparer(ctx, resourceGroupName, accountName, databaseName, containerName) 717 if err != nil { 718 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "DeleteSQLContainer", nil, "Failure preparing request") 719 return 720 } 721 722 result, err = client.DeleteSQLContainerSender(req) 723 if err != nil { 724 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "DeleteSQLContainer", nil, "Failure sending request") 725 return 726 } 727 728 return 729} 730 731// DeleteSQLContainerPreparer prepares the DeleteSQLContainer request. 732func (client SQLResourcesClient) DeleteSQLContainerPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string) (*http.Request, error) { 733 pathParameters := map[string]interface{}{ 734 "accountName": autorest.Encode("path", accountName), 735 "containerName": autorest.Encode("path", containerName), 736 "databaseName": autorest.Encode("path", databaseName), 737 "resourceGroupName": autorest.Encode("path", resourceGroupName), 738 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 739 } 740 741 const APIVersion = "2019-12-12" 742 queryParameters := map[string]interface{}{ 743 "api-version": APIVersion, 744 } 745 746 preparer := autorest.CreatePreparer( 747 autorest.AsDelete(), 748 autorest.WithBaseURL(client.BaseURI), 749 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}", pathParameters), 750 autorest.WithQueryParameters(queryParameters)) 751 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 752} 753 754// DeleteSQLContainerSender sends the DeleteSQLContainer request. The method will close the 755// http.Response Body if it receives an error. 756func (client SQLResourcesClient) DeleteSQLContainerSender(req *http.Request) (future SQLResourcesDeleteSQLContainerFuture, err error) { 757 var resp *http.Response 758 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 759 if err != nil { 760 return 761 } 762 var azf azure.Future 763 azf, err = azure.NewFutureFromResponse(resp) 764 future.FutureAPI = &azf 765 future.Result = func(client SQLResourcesClient) (ar autorest.Response, err error) { 766 var done bool 767 done, err = future.DoneWithContext(context.Background(), client) 768 if err != nil { 769 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesDeleteSQLContainerFuture", "Result", future.Response(), "Polling failure") 770 return 771 } 772 if !done { 773 err = azure.NewAsyncOpIncompleteError("documentdb.SQLResourcesDeleteSQLContainerFuture") 774 return 775 } 776 ar.Response = future.Response() 777 return 778 } 779 return 780} 781 782// DeleteSQLContainerResponder handles the response to the DeleteSQLContainer request. The method always 783// closes the http.Response Body. 784func (client SQLResourcesClient) DeleteSQLContainerResponder(resp *http.Response) (result autorest.Response, err error) { 785 err = autorest.Respond( 786 resp, 787 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent), 788 autorest.ByClosing()) 789 result.Response = resp 790 return 791} 792 793// DeleteSQLDatabase deletes an existing Azure Cosmos DB SQL database. 794// Parameters: 795// resourceGroupName - name of an Azure resource group. 796// accountName - cosmos DB database account name. 797// databaseName - cosmos DB database name. 798func (client SQLResourcesClient) DeleteSQLDatabase(ctx context.Context, resourceGroupName string, accountName string, databaseName string) (result SQLResourcesDeleteSQLDatabaseFuture, err error) { 799 if tracing.IsEnabled() { 800 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.DeleteSQLDatabase") 801 defer func() { 802 sc := -1 803 if result.FutureAPI != nil && result.FutureAPI.Response() != nil { 804 sc = result.FutureAPI.Response().StatusCode 805 } 806 tracing.EndSpan(ctx, sc, err) 807 }() 808 } 809 if err := validation.Validate([]validation.Validation{ 810 {TargetValue: resourceGroupName, 811 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 812 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 813 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 814 {TargetValue: accountName, 815 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 816 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 817 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 818 return result, validation.NewError("documentdb.SQLResourcesClient", "DeleteSQLDatabase", err.Error()) 819 } 820 821 req, err := client.DeleteSQLDatabasePreparer(ctx, resourceGroupName, accountName, databaseName) 822 if err != nil { 823 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "DeleteSQLDatabase", nil, "Failure preparing request") 824 return 825 } 826 827 result, err = client.DeleteSQLDatabaseSender(req) 828 if err != nil { 829 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "DeleteSQLDatabase", nil, "Failure sending request") 830 return 831 } 832 833 return 834} 835 836// DeleteSQLDatabasePreparer prepares the DeleteSQLDatabase request. 837func (client SQLResourcesClient) DeleteSQLDatabasePreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string) (*http.Request, error) { 838 pathParameters := map[string]interface{}{ 839 "accountName": autorest.Encode("path", accountName), 840 "databaseName": autorest.Encode("path", databaseName), 841 "resourceGroupName": autorest.Encode("path", resourceGroupName), 842 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 843 } 844 845 const APIVersion = "2019-12-12" 846 queryParameters := map[string]interface{}{ 847 "api-version": APIVersion, 848 } 849 850 preparer := autorest.CreatePreparer( 851 autorest.AsDelete(), 852 autorest.WithBaseURL(client.BaseURI), 853 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}", pathParameters), 854 autorest.WithQueryParameters(queryParameters)) 855 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 856} 857 858// DeleteSQLDatabaseSender sends the DeleteSQLDatabase request. The method will close the 859// http.Response Body if it receives an error. 860func (client SQLResourcesClient) DeleteSQLDatabaseSender(req *http.Request) (future SQLResourcesDeleteSQLDatabaseFuture, err error) { 861 var resp *http.Response 862 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 863 if err != nil { 864 return 865 } 866 var azf azure.Future 867 azf, err = azure.NewFutureFromResponse(resp) 868 future.FutureAPI = &azf 869 future.Result = func(client SQLResourcesClient) (ar autorest.Response, err error) { 870 var done bool 871 done, err = future.DoneWithContext(context.Background(), client) 872 if err != nil { 873 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesDeleteSQLDatabaseFuture", "Result", future.Response(), "Polling failure") 874 return 875 } 876 if !done { 877 err = azure.NewAsyncOpIncompleteError("documentdb.SQLResourcesDeleteSQLDatabaseFuture") 878 return 879 } 880 ar.Response = future.Response() 881 return 882 } 883 return 884} 885 886// DeleteSQLDatabaseResponder handles the response to the DeleteSQLDatabase request. The method always 887// closes the http.Response Body. 888func (client SQLResourcesClient) DeleteSQLDatabaseResponder(resp *http.Response) (result autorest.Response, err error) { 889 err = autorest.Respond( 890 resp, 891 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent), 892 autorest.ByClosing()) 893 result.Response = resp 894 return 895} 896 897// DeleteSQLStoredProcedure deletes an existing Azure Cosmos DB SQL storedProcedure. 898// Parameters: 899// resourceGroupName - name of an Azure resource group. 900// accountName - cosmos DB database account name. 901// databaseName - cosmos DB database name. 902// containerName - cosmos DB container name. 903// storedProcedureName - cosmos DB storedProcedure name. 904func (client SQLResourcesClient) DeleteSQLStoredProcedure(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, storedProcedureName string) (result SQLResourcesDeleteSQLStoredProcedureFuture, err error) { 905 if tracing.IsEnabled() { 906 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.DeleteSQLStoredProcedure") 907 defer func() { 908 sc := -1 909 if result.FutureAPI != nil && result.FutureAPI.Response() != nil { 910 sc = result.FutureAPI.Response().StatusCode 911 } 912 tracing.EndSpan(ctx, sc, err) 913 }() 914 } 915 if err := validation.Validate([]validation.Validation{ 916 {TargetValue: resourceGroupName, 917 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 918 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 919 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 920 {TargetValue: accountName, 921 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 922 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 923 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 924 return result, validation.NewError("documentdb.SQLResourcesClient", "DeleteSQLStoredProcedure", err.Error()) 925 } 926 927 req, err := client.DeleteSQLStoredProcedurePreparer(ctx, resourceGroupName, accountName, databaseName, containerName, storedProcedureName) 928 if err != nil { 929 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "DeleteSQLStoredProcedure", nil, "Failure preparing request") 930 return 931 } 932 933 result, err = client.DeleteSQLStoredProcedureSender(req) 934 if err != nil { 935 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "DeleteSQLStoredProcedure", nil, "Failure sending request") 936 return 937 } 938 939 return 940} 941 942// DeleteSQLStoredProcedurePreparer prepares the DeleteSQLStoredProcedure request. 943func (client SQLResourcesClient) DeleteSQLStoredProcedurePreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, storedProcedureName string) (*http.Request, error) { 944 pathParameters := map[string]interface{}{ 945 "accountName": autorest.Encode("path", accountName), 946 "containerName": autorest.Encode("path", containerName), 947 "databaseName": autorest.Encode("path", databaseName), 948 "resourceGroupName": autorest.Encode("path", resourceGroupName), 949 "storedProcedureName": autorest.Encode("path", storedProcedureName), 950 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 951 } 952 953 const APIVersion = "2019-12-12" 954 queryParameters := map[string]interface{}{ 955 "api-version": APIVersion, 956 } 957 958 preparer := autorest.CreatePreparer( 959 autorest.AsDelete(), 960 autorest.WithBaseURL(client.BaseURI), 961 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures/{storedProcedureName}", pathParameters), 962 autorest.WithQueryParameters(queryParameters)) 963 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 964} 965 966// DeleteSQLStoredProcedureSender sends the DeleteSQLStoredProcedure request. The method will close the 967// http.Response Body if it receives an error. 968func (client SQLResourcesClient) DeleteSQLStoredProcedureSender(req *http.Request) (future SQLResourcesDeleteSQLStoredProcedureFuture, err error) { 969 var resp *http.Response 970 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 971 if err != nil { 972 return 973 } 974 var azf azure.Future 975 azf, err = azure.NewFutureFromResponse(resp) 976 future.FutureAPI = &azf 977 future.Result = func(client SQLResourcesClient) (ar autorest.Response, err error) { 978 var done bool 979 done, err = future.DoneWithContext(context.Background(), client) 980 if err != nil { 981 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesDeleteSQLStoredProcedureFuture", "Result", future.Response(), "Polling failure") 982 return 983 } 984 if !done { 985 err = azure.NewAsyncOpIncompleteError("documentdb.SQLResourcesDeleteSQLStoredProcedureFuture") 986 return 987 } 988 ar.Response = future.Response() 989 return 990 } 991 return 992} 993 994// DeleteSQLStoredProcedureResponder handles the response to the DeleteSQLStoredProcedure request. The method always 995// closes the http.Response Body. 996func (client SQLResourcesClient) DeleteSQLStoredProcedureResponder(resp *http.Response) (result autorest.Response, err error) { 997 err = autorest.Respond( 998 resp, 999 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent), 1000 autorest.ByClosing()) 1001 result.Response = resp 1002 return 1003} 1004 1005// DeleteSQLTrigger deletes an existing Azure Cosmos DB SQL trigger. 1006// Parameters: 1007// resourceGroupName - name of an Azure resource group. 1008// accountName - cosmos DB database account name. 1009// databaseName - cosmos DB database name. 1010// containerName - cosmos DB container name. 1011// triggerName - cosmos DB trigger name. 1012func (client SQLResourcesClient) DeleteSQLTrigger(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, triggerName string) (result SQLResourcesDeleteSQLTriggerFuture, err error) { 1013 if tracing.IsEnabled() { 1014 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.DeleteSQLTrigger") 1015 defer func() { 1016 sc := -1 1017 if result.FutureAPI != nil && result.FutureAPI.Response() != nil { 1018 sc = result.FutureAPI.Response().StatusCode 1019 } 1020 tracing.EndSpan(ctx, sc, err) 1021 }() 1022 } 1023 if err := validation.Validate([]validation.Validation{ 1024 {TargetValue: resourceGroupName, 1025 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1026 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1027 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 1028 {TargetValue: accountName, 1029 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 1030 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 1031 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 1032 return result, validation.NewError("documentdb.SQLResourcesClient", "DeleteSQLTrigger", err.Error()) 1033 } 1034 1035 req, err := client.DeleteSQLTriggerPreparer(ctx, resourceGroupName, accountName, databaseName, containerName, triggerName) 1036 if err != nil { 1037 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "DeleteSQLTrigger", nil, "Failure preparing request") 1038 return 1039 } 1040 1041 result, err = client.DeleteSQLTriggerSender(req) 1042 if err != nil { 1043 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "DeleteSQLTrigger", nil, "Failure sending request") 1044 return 1045 } 1046 1047 return 1048} 1049 1050// DeleteSQLTriggerPreparer prepares the DeleteSQLTrigger request. 1051func (client SQLResourcesClient) DeleteSQLTriggerPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, triggerName string) (*http.Request, error) { 1052 pathParameters := map[string]interface{}{ 1053 "accountName": autorest.Encode("path", accountName), 1054 "containerName": autorest.Encode("path", containerName), 1055 "databaseName": autorest.Encode("path", databaseName), 1056 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1057 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1058 "triggerName": autorest.Encode("path", triggerName), 1059 } 1060 1061 const APIVersion = "2019-12-12" 1062 queryParameters := map[string]interface{}{ 1063 "api-version": APIVersion, 1064 } 1065 1066 preparer := autorest.CreatePreparer( 1067 autorest.AsDelete(), 1068 autorest.WithBaseURL(client.BaseURI), 1069 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/triggers/{triggerName}", pathParameters), 1070 autorest.WithQueryParameters(queryParameters)) 1071 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1072} 1073 1074// DeleteSQLTriggerSender sends the DeleteSQLTrigger request. The method will close the 1075// http.Response Body if it receives an error. 1076func (client SQLResourcesClient) DeleteSQLTriggerSender(req *http.Request) (future SQLResourcesDeleteSQLTriggerFuture, err error) { 1077 var resp *http.Response 1078 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1079 if err != nil { 1080 return 1081 } 1082 var azf azure.Future 1083 azf, err = azure.NewFutureFromResponse(resp) 1084 future.FutureAPI = &azf 1085 future.Result = func(client SQLResourcesClient) (ar autorest.Response, err error) { 1086 var done bool 1087 done, err = future.DoneWithContext(context.Background(), client) 1088 if err != nil { 1089 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesDeleteSQLTriggerFuture", "Result", future.Response(), "Polling failure") 1090 return 1091 } 1092 if !done { 1093 err = azure.NewAsyncOpIncompleteError("documentdb.SQLResourcesDeleteSQLTriggerFuture") 1094 return 1095 } 1096 ar.Response = future.Response() 1097 return 1098 } 1099 return 1100} 1101 1102// DeleteSQLTriggerResponder handles the response to the DeleteSQLTrigger request. The method always 1103// closes the http.Response Body. 1104func (client SQLResourcesClient) DeleteSQLTriggerResponder(resp *http.Response) (result autorest.Response, err error) { 1105 err = autorest.Respond( 1106 resp, 1107 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent), 1108 autorest.ByClosing()) 1109 result.Response = resp 1110 return 1111} 1112 1113// DeleteSQLUserDefinedFunction deletes an existing Azure Cosmos DB SQL userDefinedFunction. 1114// Parameters: 1115// resourceGroupName - name of an Azure resource group. 1116// accountName - cosmos DB database account name. 1117// databaseName - cosmos DB database name. 1118// containerName - cosmos DB container name. 1119// userDefinedFunctionName - cosmos DB userDefinedFunction name. 1120func (client SQLResourcesClient) DeleteSQLUserDefinedFunction(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, userDefinedFunctionName string) (result SQLResourcesDeleteSQLUserDefinedFunctionFuture, err error) { 1121 if tracing.IsEnabled() { 1122 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.DeleteSQLUserDefinedFunction") 1123 defer func() { 1124 sc := -1 1125 if result.FutureAPI != nil && result.FutureAPI.Response() != nil { 1126 sc = result.FutureAPI.Response().StatusCode 1127 } 1128 tracing.EndSpan(ctx, sc, err) 1129 }() 1130 } 1131 if err := validation.Validate([]validation.Validation{ 1132 {TargetValue: resourceGroupName, 1133 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1134 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1135 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 1136 {TargetValue: accountName, 1137 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 1138 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 1139 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 1140 return result, validation.NewError("documentdb.SQLResourcesClient", "DeleteSQLUserDefinedFunction", err.Error()) 1141 } 1142 1143 req, err := client.DeleteSQLUserDefinedFunctionPreparer(ctx, resourceGroupName, accountName, databaseName, containerName, userDefinedFunctionName) 1144 if err != nil { 1145 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "DeleteSQLUserDefinedFunction", nil, "Failure preparing request") 1146 return 1147 } 1148 1149 result, err = client.DeleteSQLUserDefinedFunctionSender(req) 1150 if err != nil { 1151 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "DeleteSQLUserDefinedFunction", nil, "Failure sending request") 1152 return 1153 } 1154 1155 return 1156} 1157 1158// DeleteSQLUserDefinedFunctionPreparer prepares the DeleteSQLUserDefinedFunction request. 1159func (client SQLResourcesClient) DeleteSQLUserDefinedFunctionPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, userDefinedFunctionName string) (*http.Request, error) { 1160 pathParameters := map[string]interface{}{ 1161 "accountName": autorest.Encode("path", accountName), 1162 "containerName": autorest.Encode("path", containerName), 1163 "databaseName": autorest.Encode("path", databaseName), 1164 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1165 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1166 "userDefinedFunctionName": autorest.Encode("path", userDefinedFunctionName), 1167 } 1168 1169 const APIVersion = "2019-12-12" 1170 queryParameters := map[string]interface{}{ 1171 "api-version": APIVersion, 1172 } 1173 1174 preparer := autorest.CreatePreparer( 1175 autorest.AsDelete(), 1176 autorest.WithBaseURL(client.BaseURI), 1177 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/userDefinedFunctions/{userDefinedFunctionName}", pathParameters), 1178 autorest.WithQueryParameters(queryParameters)) 1179 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1180} 1181 1182// DeleteSQLUserDefinedFunctionSender sends the DeleteSQLUserDefinedFunction request. The method will close the 1183// http.Response Body if it receives an error. 1184func (client SQLResourcesClient) DeleteSQLUserDefinedFunctionSender(req *http.Request) (future SQLResourcesDeleteSQLUserDefinedFunctionFuture, err error) { 1185 var resp *http.Response 1186 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1187 if err != nil { 1188 return 1189 } 1190 var azf azure.Future 1191 azf, err = azure.NewFutureFromResponse(resp) 1192 future.FutureAPI = &azf 1193 future.Result = func(client SQLResourcesClient) (ar autorest.Response, err error) { 1194 var done bool 1195 done, err = future.DoneWithContext(context.Background(), client) 1196 if err != nil { 1197 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesDeleteSQLUserDefinedFunctionFuture", "Result", future.Response(), "Polling failure") 1198 return 1199 } 1200 if !done { 1201 err = azure.NewAsyncOpIncompleteError("documentdb.SQLResourcesDeleteSQLUserDefinedFunctionFuture") 1202 return 1203 } 1204 ar.Response = future.Response() 1205 return 1206 } 1207 return 1208} 1209 1210// DeleteSQLUserDefinedFunctionResponder handles the response to the DeleteSQLUserDefinedFunction request. The method always 1211// closes the http.Response Body. 1212func (client SQLResourcesClient) DeleteSQLUserDefinedFunctionResponder(resp *http.Response) (result autorest.Response, err error) { 1213 err = autorest.Respond( 1214 resp, 1215 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent), 1216 autorest.ByClosing()) 1217 result.Response = resp 1218 return 1219} 1220 1221// GetSQLContainer gets the SQL container under an existing Azure Cosmos DB database account. 1222// Parameters: 1223// resourceGroupName - name of an Azure resource group. 1224// accountName - cosmos DB database account name. 1225// databaseName - cosmos DB database name. 1226// containerName - cosmos DB container name. 1227func (client SQLResourcesClient) GetSQLContainer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string) (result SQLContainerGetResults, err error) { 1228 if tracing.IsEnabled() { 1229 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.GetSQLContainer") 1230 defer func() { 1231 sc := -1 1232 if result.Response.Response != nil { 1233 sc = result.Response.Response.StatusCode 1234 } 1235 tracing.EndSpan(ctx, sc, err) 1236 }() 1237 } 1238 if err := validation.Validate([]validation.Validation{ 1239 {TargetValue: resourceGroupName, 1240 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1241 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1242 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 1243 {TargetValue: accountName, 1244 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 1245 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 1246 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 1247 return result, validation.NewError("documentdb.SQLResourcesClient", "GetSQLContainer", err.Error()) 1248 } 1249 1250 req, err := client.GetSQLContainerPreparer(ctx, resourceGroupName, accountName, databaseName, containerName) 1251 if err != nil { 1252 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLContainer", nil, "Failure preparing request") 1253 return 1254 } 1255 1256 resp, err := client.GetSQLContainerSender(req) 1257 if err != nil { 1258 result.Response = autorest.Response{Response: resp} 1259 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLContainer", resp, "Failure sending request") 1260 return 1261 } 1262 1263 result, err = client.GetSQLContainerResponder(resp) 1264 if err != nil { 1265 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLContainer", resp, "Failure responding to request") 1266 return 1267 } 1268 1269 return 1270} 1271 1272// GetSQLContainerPreparer prepares the GetSQLContainer request. 1273func (client SQLResourcesClient) GetSQLContainerPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string) (*http.Request, error) { 1274 pathParameters := map[string]interface{}{ 1275 "accountName": autorest.Encode("path", accountName), 1276 "containerName": autorest.Encode("path", containerName), 1277 "databaseName": autorest.Encode("path", databaseName), 1278 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1279 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1280 } 1281 1282 const APIVersion = "2019-12-12" 1283 queryParameters := map[string]interface{}{ 1284 "api-version": APIVersion, 1285 } 1286 1287 preparer := autorest.CreatePreparer( 1288 autorest.AsGet(), 1289 autorest.WithBaseURL(client.BaseURI), 1290 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}", pathParameters), 1291 autorest.WithQueryParameters(queryParameters)) 1292 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1293} 1294 1295// GetSQLContainerSender sends the GetSQLContainer request. The method will close the 1296// http.Response Body if it receives an error. 1297func (client SQLResourcesClient) GetSQLContainerSender(req *http.Request) (*http.Response, error) { 1298 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1299} 1300 1301// GetSQLContainerResponder handles the response to the GetSQLContainer request. The method always 1302// closes the http.Response Body. 1303func (client SQLResourcesClient) GetSQLContainerResponder(resp *http.Response) (result SQLContainerGetResults, err error) { 1304 err = autorest.Respond( 1305 resp, 1306 azure.WithErrorUnlessStatusCode(http.StatusOK), 1307 autorest.ByUnmarshallingJSON(&result), 1308 autorest.ByClosing()) 1309 result.Response = autorest.Response{Response: resp} 1310 return 1311} 1312 1313// GetSQLContainerThroughput gets the RUs per second of the SQL container under an existing Azure Cosmos DB database 1314// account. 1315// Parameters: 1316// resourceGroupName - name of an Azure resource group. 1317// accountName - cosmos DB database account name. 1318// databaseName - cosmos DB database name. 1319// containerName - cosmos DB container name. 1320func (client SQLResourcesClient) GetSQLContainerThroughput(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string) (result ThroughputSettingsGetResults, err error) { 1321 if tracing.IsEnabled() { 1322 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.GetSQLContainerThroughput") 1323 defer func() { 1324 sc := -1 1325 if result.Response.Response != nil { 1326 sc = result.Response.Response.StatusCode 1327 } 1328 tracing.EndSpan(ctx, sc, err) 1329 }() 1330 } 1331 if err := validation.Validate([]validation.Validation{ 1332 {TargetValue: resourceGroupName, 1333 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1334 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1335 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 1336 {TargetValue: accountName, 1337 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 1338 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 1339 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 1340 return result, validation.NewError("documentdb.SQLResourcesClient", "GetSQLContainerThroughput", err.Error()) 1341 } 1342 1343 req, err := client.GetSQLContainerThroughputPreparer(ctx, resourceGroupName, accountName, databaseName, containerName) 1344 if err != nil { 1345 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLContainerThroughput", nil, "Failure preparing request") 1346 return 1347 } 1348 1349 resp, err := client.GetSQLContainerThroughputSender(req) 1350 if err != nil { 1351 result.Response = autorest.Response{Response: resp} 1352 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLContainerThroughput", resp, "Failure sending request") 1353 return 1354 } 1355 1356 result, err = client.GetSQLContainerThroughputResponder(resp) 1357 if err != nil { 1358 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLContainerThroughput", resp, "Failure responding to request") 1359 return 1360 } 1361 1362 return 1363} 1364 1365// GetSQLContainerThroughputPreparer prepares the GetSQLContainerThroughput request. 1366func (client SQLResourcesClient) GetSQLContainerThroughputPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string) (*http.Request, error) { 1367 pathParameters := map[string]interface{}{ 1368 "accountName": autorest.Encode("path", accountName), 1369 "containerName": autorest.Encode("path", containerName), 1370 "databaseName": autorest.Encode("path", databaseName), 1371 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1372 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1373 } 1374 1375 const APIVersion = "2019-12-12" 1376 queryParameters := map[string]interface{}{ 1377 "api-version": APIVersion, 1378 } 1379 1380 preparer := autorest.CreatePreparer( 1381 autorest.AsGet(), 1382 autorest.WithBaseURL(client.BaseURI), 1383 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default", pathParameters), 1384 autorest.WithQueryParameters(queryParameters)) 1385 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1386} 1387 1388// GetSQLContainerThroughputSender sends the GetSQLContainerThroughput request. The method will close the 1389// http.Response Body if it receives an error. 1390func (client SQLResourcesClient) GetSQLContainerThroughputSender(req *http.Request) (*http.Response, error) { 1391 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1392} 1393 1394// GetSQLContainerThroughputResponder handles the response to the GetSQLContainerThroughput request. The method always 1395// closes the http.Response Body. 1396func (client SQLResourcesClient) GetSQLContainerThroughputResponder(resp *http.Response) (result ThroughputSettingsGetResults, err error) { 1397 err = autorest.Respond( 1398 resp, 1399 azure.WithErrorUnlessStatusCode(http.StatusOK), 1400 autorest.ByUnmarshallingJSON(&result), 1401 autorest.ByClosing()) 1402 result.Response = autorest.Response{Response: resp} 1403 return 1404} 1405 1406// GetSQLDatabase gets the SQL database under an existing Azure Cosmos DB database account with the provided name. 1407// Parameters: 1408// resourceGroupName - name of an Azure resource group. 1409// accountName - cosmos DB database account name. 1410// databaseName - cosmos DB database name. 1411func (client SQLResourcesClient) GetSQLDatabase(ctx context.Context, resourceGroupName string, accountName string, databaseName string) (result SQLDatabaseGetResults, err error) { 1412 if tracing.IsEnabled() { 1413 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.GetSQLDatabase") 1414 defer func() { 1415 sc := -1 1416 if result.Response.Response != nil { 1417 sc = result.Response.Response.StatusCode 1418 } 1419 tracing.EndSpan(ctx, sc, err) 1420 }() 1421 } 1422 if err := validation.Validate([]validation.Validation{ 1423 {TargetValue: resourceGroupName, 1424 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1425 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1426 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 1427 {TargetValue: accountName, 1428 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 1429 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 1430 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 1431 return result, validation.NewError("documentdb.SQLResourcesClient", "GetSQLDatabase", err.Error()) 1432 } 1433 1434 req, err := client.GetSQLDatabasePreparer(ctx, resourceGroupName, accountName, databaseName) 1435 if err != nil { 1436 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLDatabase", nil, "Failure preparing request") 1437 return 1438 } 1439 1440 resp, err := client.GetSQLDatabaseSender(req) 1441 if err != nil { 1442 result.Response = autorest.Response{Response: resp} 1443 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLDatabase", resp, "Failure sending request") 1444 return 1445 } 1446 1447 result, err = client.GetSQLDatabaseResponder(resp) 1448 if err != nil { 1449 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLDatabase", resp, "Failure responding to request") 1450 return 1451 } 1452 1453 return 1454} 1455 1456// GetSQLDatabasePreparer prepares the GetSQLDatabase request. 1457func (client SQLResourcesClient) GetSQLDatabasePreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string) (*http.Request, error) { 1458 pathParameters := map[string]interface{}{ 1459 "accountName": autorest.Encode("path", accountName), 1460 "databaseName": autorest.Encode("path", databaseName), 1461 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1462 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1463 } 1464 1465 const APIVersion = "2019-12-12" 1466 queryParameters := map[string]interface{}{ 1467 "api-version": APIVersion, 1468 } 1469 1470 preparer := autorest.CreatePreparer( 1471 autorest.AsGet(), 1472 autorest.WithBaseURL(client.BaseURI), 1473 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}", pathParameters), 1474 autorest.WithQueryParameters(queryParameters)) 1475 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1476} 1477 1478// GetSQLDatabaseSender sends the GetSQLDatabase request. The method will close the 1479// http.Response Body if it receives an error. 1480func (client SQLResourcesClient) GetSQLDatabaseSender(req *http.Request) (*http.Response, error) { 1481 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1482} 1483 1484// GetSQLDatabaseResponder handles the response to the GetSQLDatabase request. The method always 1485// closes the http.Response Body. 1486func (client SQLResourcesClient) GetSQLDatabaseResponder(resp *http.Response) (result SQLDatabaseGetResults, err error) { 1487 err = autorest.Respond( 1488 resp, 1489 azure.WithErrorUnlessStatusCode(http.StatusOK), 1490 autorest.ByUnmarshallingJSON(&result), 1491 autorest.ByClosing()) 1492 result.Response = autorest.Response{Response: resp} 1493 return 1494} 1495 1496// GetSQLDatabaseThroughput gets the RUs per second of the SQL database under an existing Azure Cosmos DB database 1497// account with the provided name. 1498// Parameters: 1499// resourceGroupName - name of an Azure resource group. 1500// accountName - cosmos DB database account name. 1501// databaseName - cosmos DB database name. 1502func (client SQLResourcesClient) GetSQLDatabaseThroughput(ctx context.Context, resourceGroupName string, accountName string, databaseName string) (result ThroughputSettingsGetResults, err error) { 1503 if tracing.IsEnabled() { 1504 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.GetSQLDatabaseThroughput") 1505 defer func() { 1506 sc := -1 1507 if result.Response.Response != nil { 1508 sc = result.Response.Response.StatusCode 1509 } 1510 tracing.EndSpan(ctx, sc, err) 1511 }() 1512 } 1513 if err := validation.Validate([]validation.Validation{ 1514 {TargetValue: resourceGroupName, 1515 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1516 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1517 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 1518 {TargetValue: accountName, 1519 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 1520 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 1521 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 1522 return result, validation.NewError("documentdb.SQLResourcesClient", "GetSQLDatabaseThroughput", err.Error()) 1523 } 1524 1525 req, err := client.GetSQLDatabaseThroughputPreparer(ctx, resourceGroupName, accountName, databaseName) 1526 if err != nil { 1527 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLDatabaseThroughput", nil, "Failure preparing request") 1528 return 1529 } 1530 1531 resp, err := client.GetSQLDatabaseThroughputSender(req) 1532 if err != nil { 1533 result.Response = autorest.Response{Response: resp} 1534 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLDatabaseThroughput", resp, "Failure sending request") 1535 return 1536 } 1537 1538 result, err = client.GetSQLDatabaseThroughputResponder(resp) 1539 if err != nil { 1540 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLDatabaseThroughput", resp, "Failure responding to request") 1541 return 1542 } 1543 1544 return 1545} 1546 1547// GetSQLDatabaseThroughputPreparer prepares the GetSQLDatabaseThroughput request. 1548func (client SQLResourcesClient) GetSQLDatabaseThroughputPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string) (*http.Request, error) { 1549 pathParameters := map[string]interface{}{ 1550 "accountName": autorest.Encode("path", accountName), 1551 "databaseName": autorest.Encode("path", databaseName), 1552 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1553 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1554 } 1555 1556 const APIVersion = "2019-12-12" 1557 queryParameters := map[string]interface{}{ 1558 "api-version": APIVersion, 1559 } 1560 1561 preparer := autorest.CreatePreparer( 1562 autorest.AsGet(), 1563 autorest.WithBaseURL(client.BaseURI), 1564 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default", pathParameters), 1565 autorest.WithQueryParameters(queryParameters)) 1566 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1567} 1568 1569// GetSQLDatabaseThroughputSender sends the GetSQLDatabaseThroughput request. The method will close the 1570// http.Response Body if it receives an error. 1571func (client SQLResourcesClient) GetSQLDatabaseThroughputSender(req *http.Request) (*http.Response, error) { 1572 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1573} 1574 1575// GetSQLDatabaseThroughputResponder handles the response to the GetSQLDatabaseThroughput request. The method always 1576// closes the http.Response Body. 1577func (client SQLResourcesClient) GetSQLDatabaseThroughputResponder(resp *http.Response) (result ThroughputSettingsGetResults, err error) { 1578 err = autorest.Respond( 1579 resp, 1580 azure.WithErrorUnlessStatusCode(http.StatusOK), 1581 autorest.ByUnmarshallingJSON(&result), 1582 autorest.ByClosing()) 1583 result.Response = autorest.Response{Response: resp} 1584 return 1585} 1586 1587// GetSQLStoredProcedure gets the SQL storedProcedure under an existing Azure Cosmos DB database account. 1588// Parameters: 1589// resourceGroupName - name of an Azure resource group. 1590// accountName - cosmos DB database account name. 1591// databaseName - cosmos DB database name. 1592// containerName - cosmos DB container name. 1593// storedProcedureName - cosmos DB storedProcedure name. 1594func (client SQLResourcesClient) GetSQLStoredProcedure(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, storedProcedureName string) (result SQLStoredProcedureGetResults, err error) { 1595 if tracing.IsEnabled() { 1596 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.GetSQLStoredProcedure") 1597 defer func() { 1598 sc := -1 1599 if result.Response.Response != nil { 1600 sc = result.Response.Response.StatusCode 1601 } 1602 tracing.EndSpan(ctx, sc, err) 1603 }() 1604 } 1605 if err := validation.Validate([]validation.Validation{ 1606 {TargetValue: resourceGroupName, 1607 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1608 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1609 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 1610 {TargetValue: accountName, 1611 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 1612 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 1613 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 1614 return result, validation.NewError("documentdb.SQLResourcesClient", "GetSQLStoredProcedure", err.Error()) 1615 } 1616 1617 req, err := client.GetSQLStoredProcedurePreparer(ctx, resourceGroupName, accountName, databaseName, containerName, storedProcedureName) 1618 if err != nil { 1619 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLStoredProcedure", nil, "Failure preparing request") 1620 return 1621 } 1622 1623 resp, err := client.GetSQLStoredProcedureSender(req) 1624 if err != nil { 1625 result.Response = autorest.Response{Response: resp} 1626 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLStoredProcedure", resp, "Failure sending request") 1627 return 1628 } 1629 1630 result, err = client.GetSQLStoredProcedureResponder(resp) 1631 if err != nil { 1632 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLStoredProcedure", resp, "Failure responding to request") 1633 return 1634 } 1635 1636 return 1637} 1638 1639// GetSQLStoredProcedurePreparer prepares the GetSQLStoredProcedure request. 1640func (client SQLResourcesClient) GetSQLStoredProcedurePreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, storedProcedureName string) (*http.Request, error) { 1641 pathParameters := map[string]interface{}{ 1642 "accountName": autorest.Encode("path", accountName), 1643 "containerName": autorest.Encode("path", containerName), 1644 "databaseName": autorest.Encode("path", databaseName), 1645 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1646 "storedProcedureName": autorest.Encode("path", storedProcedureName), 1647 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1648 } 1649 1650 const APIVersion = "2019-12-12" 1651 queryParameters := map[string]interface{}{ 1652 "api-version": APIVersion, 1653 } 1654 1655 preparer := autorest.CreatePreparer( 1656 autorest.AsGet(), 1657 autorest.WithBaseURL(client.BaseURI), 1658 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures/{storedProcedureName}", pathParameters), 1659 autorest.WithQueryParameters(queryParameters)) 1660 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1661} 1662 1663// GetSQLStoredProcedureSender sends the GetSQLStoredProcedure request. The method will close the 1664// http.Response Body if it receives an error. 1665func (client SQLResourcesClient) GetSQLStoredProcedureSender(req *http.Request) (*http.Response, error) { 1666 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1667} 1668 1669// GetSQLStoredProcedureResponder handles the response to the GetSQLStoredProcedure request. The method always 1670// closes the http.Response Body. 1671func (client SQLResourcesClient) GetSQLStoredProcedureResponder(resp *http.Response) (result SQLStoredProcedureGetResults, err error) { 1672 err = autorest.Respond( 1673 resp, 1674 azure.WithErrorUnlessStatusCode(http.StatusOK), 1675 autorest.ByUnmarshallingJSON(&result), 1676 autorest.ByClosing()) 1677 result.Response = autorest.Response{Response: resp} 1678 return 1679} 1680 1681// GetSQLTrigger gets the SQL trigger under an existing Azure Cosmos DB database account. 1682// Parameters: 1683// resourceGroupName - name of an Azure resource group. 1684// accountName - cosmos DB database account name. 1685// databaseName - cosmos DB database name. 1686// containerName - cosmos DB container name. 1687// triggerName - cosmos DB trigger name. 1688func (client SQLResourcesClient) GetSQLTrigger(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, triggerName string) (result SQLTriggerGetResults, err error) { 1689 if tracing.IsEnabled() { 1690 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.GetSQLTrigger") 1691 defer func() { 1692 sc := -1 1693 if result.Response.Response != nil { 1694 sc = result.Response.Response.StatusCode 1695 } 1696 tracing.EndSpan(ctx, sc, err) 1697 }() 1698 } 1699 if err := validation.Validate([]validation.Validation{ 1700 {TargetValue: resourceGroupName, 1701 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1702 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1703 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 1704 {TargetValue: accountName, 1705 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 1706 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 1707 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 1708 return result, validation.NewError("documentdb.SQLResourcesClient", "GetSQLTrigger", err.Error()) 1709 } 1710 1711 req, err := client.GetSQLTriggerPreparer(ctx, resourceGroupName, accountName, databaseName, containerName, triggerName) 1712 if err != nil { 1713 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLTrigger", nil, "Failure preparing request") 1714 return 1715 } 1716 1717 resp, err := client.GetSQLTriggerSender(req) 1718 if err != nil { 1719 result.Response = autorest.Response{Response: resp} 1720 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLTrigger", resp, "Failure sending request") 1721 return 1722 } 1723 1724 result, err = client.GetSQLTriggerResponder(resp) 1725 if err != nil { 1726 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLTrigger", resp, "Failure responding to request") 1727 return 1728 } 1729 1730 return 1731} 1732 1733// GetSQLTriggerPreparer prepares the GetSQLTrigger request. 1734func (client SQLResourcesClient) GetSQLTriggerPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, triggerName string) (*http.Request, error) { 1735 pathParameters := map[string]interface{}{ 1736 "accountName": autorest.Encode("path", accountName), 1737 "containerName": autorest.Encode("path", containerName), 1738 "databaseName": autorest.Encode("path", databaseName), 1739 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1740 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1741 "triggerName": autorest.Encode("path", triggerName), 1742 } 1743 1744 const APIVersion = "2019-12-12" 1745 queryParameters := map[string]interface{}{ 1746 "api-version": APIVersion, 1747 } 1748 1749 preparer := autorest.CreatePreparer( 1750 autorest.AsGet(), 1751 autorest.WithBaseURL(client.BaseURI), 1752 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/triggers/{triggerName}", pathParameters), 1753 autorest.WithQueryParameters(queryParameters)) 1754 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1755} 1756 1757// GetSQLTriggerSender sends the GetSQLTrigger request. The method will close the 1758// http.Response Body if it receives an error. 1759func (client SQLResourcesClient) GetSQLTriggerSender(req *http.Request) (*http.Response, error) { 1760 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1761} 1762 1763// GetSQLTriggerResponder handles the response to the GetSQLTrigger request. The method always 1764// closes the http.Response Body. 1765func (client SQLResourcesClient) GetSQLTriggerResponder(resp *http.Response) (result SQLTriggerGetResults, err error) { 1766 err = autorest.Respond( 1767 resp, 1768 azure.WithErrorUnlessStatusCode(http.StatusOK), 1769 autorest.ByUnmarshallingJSON(&result), 1770 autorest.ByClosing()) 1771 result.Response = autorest.Response{Response: resp} 1772 return 1773} 1774 1775// GetSQLUserDefinedFunction gets the SQL userDefinedFunction under an existing Azure Cosmos DB database account. 1776// Parameters: 1777// resourceGroupName - name of an Azure resource group. 1778// accountName - cosmos DB database account name. 1779// databaseName - cosmos DB database name. 1780// containerName - cosmos DB container name. 1781// userDefinedFunctionName - cosmos DB userDefinedFunction name. 1782func (client SQLResourcesClient) GetSQLUserDefinedFunction(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, userDefinedFunctionName string) (result SQLUserDefinedFunctionGetResults, err error) { 1783 if tracing.IsEnabled() { 1784 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.GetSQLUserDefinedFunction") 1785 defer func() { 1786 sc := -1 1787 if result.Response.Response != nil { 1788 sc = result.Response.Response.StatusCode 1789 } 1790 tracing.EndSpan(ctx, sc, err) 1791 }() 1792 } 1793 if err := validation.Validate([]validation.Validation{ 1794 {TargetValue: resourceGroupName, 1795 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1796 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1797 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 1798 {TargetValue: accountName, 1799 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 1800 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 1801 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 1802 return result, validation.NewError("documentdb.SQLResourcesClient", "GetSQLUserDefinedFunction", err.Error()) 1803 } 1804 1805 req, err := client.GetSQLUserDefinedFunctionPreparer(ctx, resourceGroupName, accountName, databaseName, containerName, userDefinedFunctionName) 1806 if err != nil { 1807 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLUserDefinedFunction", nil, "Failure preparing request") 1808 return 1809 } 1810 1811 resp, err := client.GetSQLUserDefinedFunctionSender(req) 1812 if err != nil { 1813 result.Response = autorest.Response{Response: resp} 1814 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLUserDefinedFunction", resp, "Failure sending request") 1815 return 1816 } 1817 1818 result, err = client.GetSQLUserDefinedFunctionResponder(resp) 1819 if err != nil { 1820 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "GetSQLUserDefinedFunction", resp, "Failure responding to request") 1821 return 1822 } 1823 1824 return 1825} 1826 1827// GetSQLUserDefinedFunctionPreparer prepares the GetSQLUserDefinedFunction request. 1828func (client SQLResourcesClient) GetSQLUserDefinedFunctionPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, userDefinedFunctionName string) (*http.Request, error) { 1829 pathParameters := map[string]interface{}{ 1830 "accountName": autorest.Encode("path", accountName), 1831 "containerName": autorest.Encode("path", containerName), 1832 "databaseName": autorest.Encode("path", databaseName), 1833 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1834 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1835 "userDefinedFunctionName": autorest.Encode("path", userDefinedFunctionName), 1836 } 1837 1838 const APIVersion = "2019-12-12" 1839 queryParameters := map[string]interface{}{ 1840 "api-version": APIVersion, 1841 } 1842 1843 preparer := autorest.CreatePreparer( 1844 autorest.AsGet(), 1845 autorest.WithBaseURL(client.BaseURI), 1846 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/userDefinedFunctions/{userDefinedFunctionName}", pathParameters), 1847 autorest.WithQueryParameters(queryParameters)) 1848 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1849} 1850 1851// GetSQLUserDefinedFunctionSender sends the GetSQLUserDefinedFunction request. The method will close the 1852// http.Response Body if it receives an error. 1853func (client SQLResourcesClient) GetSQLUserDefinedFunctionSender(req *http.Request) (*http.Response, error) { 1854 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1855} 1856 1857// GetSQLUserDefinedFunctionResponder handles the response to the GetSQLUserDefinedFunction request. The method always 1858// closes the http.Response Body. 1859func (client SQLResourcesClient) GetSQLUserDefinedFunctionResponder(resp *http.Response) (result SQLUserDefinedFunctionGetResults, err error) { 1860 err = autorest.Respond( 1861 resp, 1862 azure.WithErrorUnlessStatusCode(http.StatusOK), 1863 autorest.ByUnmarshallingJSON(&result), 1864 autorest.ByClosing()) 1865 result.Response = autorest.Response{Response: resp} 1866 return 1867} 1868 1869// ListSQLContainers lists the SQL container under an existing Azure Cosmos DB database account. 1870// Parameters: 1871// resourceGroupName - name of an Azure resource group. 1872// accountName - cosmos DB database account name. 1873// databaseName - cosmos DB database name. 1874func (client SQLResourcesClient) ListSQLContainers(ctx context.Context, resourceGroupName string, accountName string, databaseName string) (result SQLContainerListResult, err error) { 1875 if tracing.IsEnabled() { 1876 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.ListSQLContainers") 1877 defer func() { 1878 sc := -1 1879 if result.Response.Response != nil { 1880 sc = result.Response.Response.StatusCode 1881 } 1882 tracing.EndSpan(ctx, sc, err) 1883 }() 1884 } 1885 if err := validation.Validate([]validation.Validation{ 1886 {TargetValue: resourceGroupName, 1887 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1888 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1889 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 1890 {TargetValue: accountName, 1891 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 1892 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 1893 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 1894 return result, validation.NewError("documentdb.SQLResourcesClient", "ListSQLContainers", err.Error()) 1895 } 1896 1897 req, err := client.ListSQLContainersPreparer(ctx, resourceGroupName, accountName, databaseName) 1898 if err != nil { 1899 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLContainers", nil, "Failure preparing request") 1900 return 1901 } 1902 1903 resp, err := client.ListSQLContainersSender(req) 1904 if err != nil { 1905 result.Response = autorest.Response{Response: resp} 1906 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLContainers", resp, "Failure sending request") 1907 return 1908 } 1909 1910 result, err = client.ListSQLContainersResponder(resp) 1911 if err != nil { 1912 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLContainers", resp, "Failure responding to request") 1913 return 1914 } 1915 1916 return 1917} 1918 1919// ListSQLContainersPreparer prepares the ListSQLContainers request. 1920func (client SQLResourcesClient) ListSQLContainersPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string) (*http.Request, error) { 1921 pathParameters := map[string]interface{}{ 1922 "accountName": autorest.Encode("path", accountName), 1923 "databaseName": autorest.Encode("path", databaseName), 1924 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1925 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1926 } 1927 1928 const APIVersion = "2019-12-12" 1929 queryParameters := map[string]interface{}{ 1930 "api-version": APIVersion, 1931 } 1932 1933 preparer := autorest.CreatePreparer( 1934 autorest.AsGet(), 1935 autorest.WithBaseURL(client.BaseURI), 1936 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers", pathParameters), 1937 autorest.WithQueryParameters(queryParameters)) 1938 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1939} 1940 1941// ListSQLContainersSender sends the ListSQLContainers request. The method will close the 1942// http.Response Body if it receives an error. 1943func (client SQLResourcesClient) ListSQLContainersSender(req *http.Request) (*http.Response, error) { 1944 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1945} 1946 1947// ListSQLContainersResponder handles the response to the ListSQLContainers request. The method always 1948// closes the http.Response Body. 1949func (client SQLResourcesClient) ListSQLContainersResponder(resp *http.Response) (result SQLContainerListResult, err error) { 1950 err = autorest.Respond( 1951 resp, 1952 azure.WithErrorUnlessStatusCode(http.StatusOK), 1953 autorest.ByUnmarshallingJSON(&result), 1954 autorest.ByClosing()) 1955 result.Response = autorest.Response{Response: resp} 1956 return 1957} 1958 1959// ListSQLDatabases lists the SQL databases under an existing Azure Cosmos DB database account. 1960// Parameters: 1961// resourceGroupName - name of an Azure resource group. 1962// accountName - cosmos DB database account name. 1963func (client SQLResourcesClient) ListSQLDatabases(ctx context.Context, resourceGroupName string, accountName string) (result SQLDatabaseListResult, err error) { 1964 if tracing.IsEnabled() { 1965 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.ListSQLDatabases") 1966 defer func() { 1967 sc := -1 1968 if result.Response.Response != nil { 1969 sc = result.Response.Response.StatusCode 1970 } 1971 tracing.EndSpan(ctx, sc, err) 1972 }() 1973 } 1974 if err := validation.Validate([]validation.Validation{ 1975 {TargetValue: resourceGroupName, 1976 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1977 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1978 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 1979 {TargetValue: accountName, 1980 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 1981 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 1982 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 1983 return result, validation.NewError("documentdb.SQLResourcesClient", "ListSQLDatabases", err.Error()) 1984 } 1985 1986 req, err := client.ListSQLDatabasesPreparer(ctx, resourceGroupName, accountName) 1987 if err != nil { 1988 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLDatabases", nil, "Failure preparing request") 1989 return 1990 } 1991 1992 resp, err := client.ListSQLDatabasesSender(req) 1993 if err != nil { 1994 result.Response = autorest.Response{Response: resp} 1995 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLDatabases", resp, "Failure sending request") 1996 return 1997 } 1998 1999 result, err = client.ListSQLDatabasesResponder(resp) 2000 if err != nil { 2001 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLDatabases", resp, "Failure responding to request") 2002 return 2003 } 2004 2005 return 2006} 2007 2008// ListSQLDatabasesPreparer prepares the ListSQLDatabases request. 2009func (client SQLResourcesClient) ListSQLDatabasesPreparer(ctx context.Context, resourceGroupName string, accountName string) (*http.Request, error) { 2010 pathParameters := map[string]interface{}{ 2011 "accountName": autorest.Encode("path", accountName), 2012 "resourceGroupName": autorest.Encode("path", resourceGroupName), 2013 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 2014 } 2015 2016 const APIVersion = "2019-12-12" 2017 queryParameters := map[string]interface{}{ 2018 "api-version": APIVersion, 2019 } 2020 2021 preparer := autorest.CreatePreparer( 2022 autorest.AsGet(), 2023 autorest.WithBaseURL(client.BaseURI), 2024 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases", pathParameters), 2025 autorest.WithQueryParameters(queryParameters)) 2026 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 2027} 2028 2029// ListSQLDatabasesSender sends the ListSQLDatabases request. The method will close the 2030// http.Response Body if it receives an error. 2031func (client SQLResourcesClient) ListSQLDatabasesSender(req *http.Request) (*http.Response, error) { 2032 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 2033} 2034 2035// ListSQLDatabasesResponder handles the response to the ListSQLDatabases request. The method always 2036// closes the http.Response Body. 2037func (client SQLResourcesClient) ListSQLDatabasesResponder(resp *http.Response) (result SQLDatabaseListResult, err error) { 2038 err = autorest.Respond( 2039 resp, 2040 azure.WithErrorUnlessStatusCode(http.StatusOK), 2041 autorest.ByUnmarshallingJSON(&result), 2042 autorest.ByClosing()) 2043 result.Response = autorest.Response{Response: resp} 2044 return 2045} 2046 2047// ListSQLStoredProcedures lists the SQL storedProcedure under an existing Azure Cosmos DB database account. 2048// Parameters: 2049// resourceGroupName - name of an Azure resource group. 2050// accountName - cosmos DB database account name. 2051// databaseName - cosmos DB database name. 2052// containerName - cosmos DB container name. 2053func (client SQLResourcesClient) ListSQLStoredProcedures(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string) (result SQLStoredProcedureListResult, err error) { 2054 if tracing.IsEnabled() { 2055 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.ListSQLStoredProcedures") 2056 defer func() { 2057 sc := -1 2058 if result.Response.Response != nil { 2059 sc = result.Response.Response.StatusCode 2060 } 2061 tracing.EndSpan(ctx, sc, err) 2062 }() 2063 } 2064 if err := validation.Validate([]validation.Validation{ 2065 {TargetValue: resourceGroupName, 2066 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 2067 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 2068 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 2069 {TargetValue: accountName, 2070 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 2071 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 2072 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 2073 return result, validation.NewError("documentdb.SQLResourcesClient", "ListSQLStoredProcedures", err.Error()) 2074 } 2075 2076 req, err := client.ListSQLStoredProceduresPreparer(ctx, resourceGroupName, accountName, databaseName, containerName) 2077 if err != nil { 2078 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLStoredProcedures", nil, "Failure preparing request") 2079 return 2080 } 2081 2082 resp, err := client.ListSQLStoredProceduresSender(req) 2083 if err != nil { 2084 result.Response = autorest.Response{Response: resp} 2085 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLStoredProcedures", resp, "Failure sending request") 2086 return 2087 } 2088 2089 result, err = client.ListSQLStoredProceduresResponder(resp) 2090 if err != nil { 2091 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLStoredProcedures", resp, "Failure responding to request") 2092 return 2093 } 2094 2095 return 2096} 2097 2098// ListSQLStoredProceduresPreparer prepares the ListSQLStoredProcedures request. 2099func (client SQLResourcesClient) ListSQLStoredProceduresPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string) (*http.Request, error) { 2100 pathParameters := map[string]interface{}{ 2101 "accountName": autorest.Encode("path", accountName), 2102 "containerName": autorest.Encode("path", containerName), 2103 "databaseName": autorest.Encode("path", databaseName), 2104 "resourceGroupName": autorest.Encode("path", resourceGroupName), 2105 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 2106 } 2107 2108 const APIVersion = "2019-12-12" 2109 queryParameters := map[string]interface{}{ 2110 "api-version": APIVersion, 2111 } 2112 2113 preparer := autorest.CreatePreparer( 2114 autorest.AsGet(), 2115 autorest.WithBaseURL(client.BaseURI), 2116 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures", pathParameters), 2117 autorest.WithQueryParameters(queryParameters)) 2118 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 2119} 2120 2121// ListSQLStoredProceduresSender sends the ListSQLStoredProcedures request. The method will close the 2122// http.Response Body if it receives an error. 2123func (client SQLResourcesClient) ListSQLStoredProceduresSender(req *http.Request) (*http.Response, error) { 2124 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 2125} 2126 2127// ListSQLStoredProceduresResponder handles the response to the ListSQLStoredProcedures request. The method always 2128// closes the http.Response Body. 2129func (client SQLResourcesClient) ListSQLStoredProceduresResponder(resp *http.Response) (result SQLStoredProcedureListResult, err error) { 2130 err = autorest.Respond( 2131 resp, 2132 azure.WithErrorUnlessStatusCode(http.StatusOK), 2133 autorest.ByUnmarshallingJSON(&result), 2134 autorest.ByClosing()) 2135 result.Response = autorest.Response{Response: resp} 2136 return 2137} 2138 2139// ListSQLTriggers lists the SQL trigger under an existing Azure Cosmos DB database account. 2140// Parameters: 2141// resourceGroupName - name of an Azure resource group. 2142// accountName - cosmos DB database account name. 2143// databaseName - cosmos DB database name. 2144// containerName - cosmos DB container name. 2145func (client SQLResourcesClient) ListSQLTriggers(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string) (result SQLTriggerListResult, err error) { 2146 if tracing.IsEnabled() { 2147 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.ListSQLTriggers") 2148 defer func() { 2149 sc := -1 2150 if result.Response.Response != nil { 2151 sc = result.Response.Response.StatusCode 2152 } 2153 tracing.EndSpan(ctx, sc, err) 2154 }() 2155 } 2156 if err := validation.Validate([]validation.Validation{ 2157 {TargetValue: resourceGroupName, 2158 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 2159 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 2160 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 2161 {TargetValue: accountName, 2162 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 2163 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 2164 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 2165 return result, validation.NewError("documentdb.SQLResourcesClient", "ListSQLTriggers", err.Error()) 2166 } 2167 2168 req, err := client.ListSQLTriggersPreparer(ctx, resourceGroupName, accountName, databaseName, containerName) 2169 if err != nil { 2170 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLTriggers", nil, "Failure preparing request") 2171 return 2172 } 2173 2174 resp, err := client.ListSQLTriggersSender(req) 2175 if err != nil { 2176 result.Response = autorest.Response{Response: resp} 2177 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLTriggers", resp, "Failure sending request") 2178 return 2179 } 2180 2181 result, err = client.ListSQLTriggersResponder(resp) 2182 if err != nil { 2183 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLTriggers", resp, "Failure responding to request") 2184 return 2185 } 2186 2187 return 2188} 2189 2190// ListSQLTriggersPreparer prepares the ListSQLTriggers request. 2191func (client SQLResourcesClient) ListSQLTriggersPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string) (*http.Request, error) { 2192 pathParameters := map[string]interface{}{ 2193 "accountName": autorest.Encode("path", accountName), 2194 "containerName": autorest.Encode("path", containerName), 2195 "databaseName": autorest.Encode("path", databaseName), 2196 "resourceGroupName": autorest.Encode("path", resourceGroupName), 2197 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 2198 } 2199 2200 const APIVersion = "2019-12-12" 2201 queryParameters := map[string]interface{}{ 2202 "api-version": APIVersion, 2203 } 2204 2205 preparer := autorest.CreatePreparer( 2206 autorest.AsGet(), 2207 autorest.WithBaseURL(client.BaseURI), 2208 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/triggers", pathParameters), 2209 autorest.WithQueryParameters(queryParameters)) 2210 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 2211} 2212 2213// ListSQLTriggersSender sends the ListSQLTriggers request. The method will close the 2214// http.Response Body if it receives an error. 2215func (client SQLResourcesClient) ListSQLTriggersSender(req *http.Request) (*http.Response, error) { 2216 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 2217} 2218 2219// ListSQLTriggersResponder handles the response to the ListSQLTriggers request. The method always 2220// closes the http.Response Body. 2221func (client SQLResourcesClient) ListSQLTriggersResponder(resp *http.Response) (result SQLTriggerListResult, err error) { 2222 err = autorest.Respond( 2223 resp, 2224 azure.WithErrorUnlessStatusCode(http.StatusOK), 2225 autorest.ByUnmarshallingJSON(&result), 2226 autorest.ByClosing()) 2227 result.Response = autorest.Response{Response: resp} 2228 return 2229} 2230 2231// ListSQLUserDefinedFunctions lists the SQL userDefinedFunction under an existing Azure Cosmos DB database account. 2232// Parameters: 2233// resourceGroupName - name of an Azure resource group. 2234// accountName - cosmos DB database account name. 2235// databaseName - cosmos DB database name. 2236// containerName - cosmos DB container name. 2237func (client SQLResourcesClient) ListSQLUserDefinedFunctions(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string) (result SQLUserDefinedFunctionListResult, err error) { 2238 if tracing.IsEnabled() { 2239 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.ListSQLUserDefinedFunctions") 2240 defer func() { 2241 sc := -1 2242 if result.Response.Response != nil { 2243 sc = result.Response.Response.StatusCode 2244 } 2245 tracing.EndSpan(ctx, sc, err) 2246 }() 2247 } 2248 if err := validation.Validate([]validation.Validation{ 2249 {TargetValue: resourceGroupName, 2250 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 2251 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 2252 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 2253 {TargetValue: accountName, 2254 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 2255 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 2256 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}}); err != nil { 2257 return result, validation.NewError("documentdb.SQLResourcesClient", "ListSQLUserDefinedFunctions", err.Error()) 2258 } 2259 2260 req, err := client.ListSQLUserDefinedFunctionsPreparer(ctx, resourceGroupName, accountName, databaseName, containerName) 2261 if err != nil { 2262 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLUserDefinedFunctions", nil, "Failure preparing request") 2263 return 2264 } 2265 2266 resp, err := client.ListSQLUserDefinedFunctionsSender(req) 2267 if err != nil { 2268 result.Response = autorest.Response{Response: resp} 2269 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLUserDefinedFunctions", resp, "Failure sending request") 2270 return 2271 } 2272 2273 result, err = client.ListSQLUserDefinedFunctionsResponder(resp) 2274 if err != nil { 2275 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "ListSQLUserDefinedFunctions", resp, "Failure responding to request") 2276 return 2277 } 2278 2279 return 2280} 2281 2282// ListSQLUserDefinedFunctionsPreparer prepares the ListSQLUserDefinedFunctions request. 2283func (client SQLResourcesClient) ListSQLUserDefinedFunctionsPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string) (*http.Request, error) { 2284 pathParameters := map[string]interface{}{ 2285 "accountName": autorest.Encode("path", accountName), 2286 "containerName": autorest.Encode("path", containerName), 2287 "databaseName": autorest.Encode("path", databaseName), 2288 "resourceGroupName": autorest.Encode("path", resourceGroupName), 2289 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 2290 } 2291 2292 const APIVersion = "2019-12-12" 2293 queryParameters := map[string]interface{}{ 2294 "api-version": APIVersion, 2295 } 2296 2297 preparer := autorest.CreatePreparer( 2298 autorest.AsGet(), 2299 autorest.WithBaseURL(client.BaseURI), 2300 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/userDefinedFunctions", pathParameters), 2301 autorest.WithQueryParameters(queryParameters)) 2302 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 2303} 2304 2305// ListSQLUserDefinedFunctionsSender sends the ListSQLUserDefinedFunctions request. The method will close the 2306// http.Response Body if it receives an error. 2307func (client SQLResourcesClient) ListSQLUserDefinedFunctionsSender(req *http.Request) (*http.Response, error) { 2308 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 2309} 2310 2311// ListSQLUserDefinedFunctionsResponder handles the response to the ListSQLUserDefinedFunctions request. The method always 2312// closes the http.Response Body. 2313func (client SQLResourcesClient) ListSQLUserDefinedFunctionsResponder(resp *http.Response) (result SQLUserDefinedFunctionListResult, err error) { 2314 err = autorest.Respond( 2315 resp, 2316 azure.WithErrorUnlessStatusCode(http.StatusOK), 2317 autorest.ByUnmarshallingJSON(&result), 2318 autorest.ByClosing()) 2319 result.Response = autorest.Response{Response: resp} 2320 return 2321} 2322 2323// UpdateSQLContainerThroughput update RUs per second of an Azure Cosmos DB SQL container 2324// Parameters: 2325// resourceGroupName - name of an Azure resource group. 2326// accountName - cosmos DB database account name. 2327// databaseName - cosmos DB database name. 2328// containerName - cosmos DB container name. 2329// updateThroughputParameters - the parameters to provide for the RUs per second of the current SQL container. 2330func (client SQLResourcesClient) UpdateSQLContainerThroughput(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, updateThroughputParameters ThroughputSettingsUpdateParameters) (result SQLResourcesUpdateSQLContainerThroughputFuture, err error) { 2331 if tracing.IsEnabled() { 2332 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.UpdateSQLContainerThroughput") 2333 defer func() { 2334 sc := -1 2335 if result.FutureAPI != nil && result.FutureAPI.Response() != nil { 2336 sc = result.FutureAPI.Response().StatusCode 2337 } 2338 tracing.EndSpan(ctx, sc, err) 2339 }() 2340 } 2341 if err := validation.Validate([]validation.Validation{ 2342 {TargetValue: resourceGroupName, 2343 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 2344 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 2345 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 2346 {TargetValue: accountName, 2347 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 2348 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 2349 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}, 2350 {TargetValue: updateThroughputParameters, 2351 Constraints: []validation.Constraint{{Target: "updateThroughputParameters.ThroughputSettingsUpdateProperties", Name: validation.Null, Rule: true, 2352 Chain: []validation.Constraint{{Target: "updateThroughputParameters.ThroughputSettingsUpdateProperties.Resource", Name: validation.Null, Rule: true, 2353 Chain: []validation.Constraint{{Target: "updateThroughputParameters.ThroughputSettingsUpdateProperties.Resource.ProvisionedThroughputSettings", Name: validation.Null, Rule: false, 2354 Chain: []validation.Constraint{{Target: "updateThroughputParameters.ThroughputSettingsUpdateProperties.Resource.ProvisionedThroughputSettings.MaxThroughput", Name: validation.Null, Rule: true, Chain: nil}}}, 2355 }}, 2356 }}}}}); err != nil { 2357 return result, validation.NewError("documentdb.SQLResourcesClient", "UpdateSQLContainerThroughput", err.Error()) 2358 } 2359 2360 req, err := client.UpdateSQLContainerThroughputPreparer(ctx, resourceGroupName, accountName, databaseName, containerName, updateThroughputParameters) 2361 if err != nil { 2362 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "UpdateSQLContainerThroughput", nil, "Failure preparing request") 2363 return 2364 } 2365 2366 result, err = client.UpdateSQLContainerThroughputSender(req) 2367 if err != nil { 2368 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "UpdateSQLContainerThroughput", nil, "Failure sending request") 2369 return 2370 } 2371 2372 return 2373} 2374 2375// UpdateSQLContainerThroughputPreparer prepares the UpdateSQLContainerThroughput request. 2376func (client SQLResourcesClient) UpdateSQLContainerThroughputPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, containerName string, updateThroughputParameters ThroughputSettingsUpdateParameters) (*http.Request, error) { 2377 pathParameters := map[string]interface{}{ 2378 "accountName": autorest.Encode("path", accountName), 2379 "containerName": autorest.Encode("path", containerName), 2380 "databaseName": autorest.Encode("path", databaseName), 2381 "resourceGroupName": autorest.Encode("path", resourceGroupName), 2382 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 2383 } 2384 2385 const APIVersion = "2019-12-12" 2386 queryParameters := map[string]interface{}{ 2387 "api-version": APIVersion, 2388 } 2389 2390 preparer := autorest.CreatePreparer( 2391 autorest.AsContentType("application/json; charset=utf-8"), 2392 autorest.AsPut(), 2393 autorest.WithBaseURL(client.BaseURI), 2394 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default", pathParameters), 2395 autorest.WithJSON(updateThroughputParameters), 2396 autorest.WithQueryParameters(queryParameters)) 2397 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 2398} 2399 2400// UpdateSQLContainerThroughputSender sends the UpdateSQLContainerThroughput request. The method will close the 2401// http.Response Body if it receives an error. 2402func (client SQLResourcesClient) UpdateSQLContainerThroughputSender(req *http.Request) (future SQLResourcesUpdateSQLContainerThroughputFuture, err error) { 2403 var resp *http.Response 2404 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 2405 if err != nil { 2406 return 2407 } 2408 var azf azure.Future 2409 azf, err = azure.NewFutureFromResponse(resp) 2410 future.FutureAPI = &azf 2411 future.Result = func(client SQLResourcesClient) (tsgr ThroughputSettingsGetResults, err error) { 2412 var done bool 2413 done, err = future.DoneWithContext(context.Background(), client) 2414 if err != nil { 2415 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesUpdateSQLContainerThroughputFuture", "Result", future.Response(), "Polling failure") 2416 return 2417 } 2418 if !done { 2419 err = azure.NewAsyncOpIncompleteError("documentdb.SQLResourcesUpdateSQLContainerThroughputFuture") 2420 return 2421 } 2422 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2423 tsgr.Response.Response, err = future.GetResult(sender) 2424 if tsgr.Response.Response == nil && err == nil { 2425 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesUpdateSQLContainerThroughputFuture", "Result", nil, "received nil response and error") 2426 } 2427 if err == nil && tsgr.Response.Response.StatusCode != http.StatusNoContent { 2428 tsgr, err = client.UpdateSQLContainerThroughputResponder(tsgr.Response.Response) 2429 if err != nil { 2430 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesUpdateSQLContainerThroughputFuture", "Result", tsgr.Response.Response, "Failure responding to request") 2431 } 2432 } 2433 return 2434 } 2435 return 2436} 2437 2438// UpdateSQLContainerThroughputResponder handles the response to the UpdateSQLContainerThroughput request. The method always 2439// closes the http.Response Body. 2440func (client SQLResourcesClient) UpdateSQLContainerThroughputResponder(resp *http.Response) (result ThroughputSettingsGetResults, err error) { 2441 err = autorest.Respond( 2442 resp, 2443 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted), 2444 autorest.ByUnmarshallingJSON(&result), 2445 autorest.ByClosing()) 2446 result.Response = autorest.Response{Response: resp} 2447 return 2448} 2449 2450// UpdateSQLDatabaseThroughput update RUs per second of an Azure Cosmos DB SQL database 2451// Parameters: 2452// resourceGroupName - name of an Azure resource group. 2453// accountName - cosmos DB database account name. 2454// databaseName - cosmos DB database name. 2455// updateThroughputParameters - the parameters to provide for the RUs per second of the current SQL database. 2456func (client SQLResourcesClient) UpdateSQLDatabaseThroughput(ctx context.Context, resourceGroupName string, accountName string, databaseName string, updateThroughputParameters ThroughputSettingsUpdateParameters) (result SQLResourcesUpdateSQLDatabaseThroughputFuture, err error) { 2457 if tracing.IsEnabled() { 2458 ctx = tracing.StartSpan(ctx, fqdn+"/SQLResourcesClient.UpdateSQLDatabaseThroughput") 2459 defer func() { 2460 sc := -1 2461 if result.FutureAPI != nil && result.FutureAPI.Response() != nil { 2462 sc = result.FutureAPI.Response().StatusCode 2463 } 2464 tracing.EndSpan(ctx, sc, err) 2465 }() 2466 } 2467 if err := validation.Validate([]validation.Validation{ 2468 {TargetValue: resourceGroupName, 2469 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 2470 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 2471 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}, 2472 {TargetValue: accountName, 2473 Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 50, Chain: nil}, 2474 {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}, 2475 {Target: "accountName", Name: validation.Pattern, Rule: `^[a-z0-9]+(-[a-z0-9]+)*`, Chain: nil}}}, 2476 {TargetValue: updateThroughputParameters, 2477 Constraints: []validation.Constraint{{Target: "updateThroughputParameters.ThroughputSettingsUpdateProperties", Name: validation.Null, Rule: true, 2478 Chain: []validation.Constraint{{Target: "updateThroughputParameters.ThroughputSettingsUpdateProperties.Resource", Name: validation.Null, Rule: true, 2479 Chain: []validation.Constraint{{Target: "updateThroughputParameters.ThroughputSettingsUpdateProperties.Resource.ProvisionedThroughputSettings", Name: validation.Null, Rule: false, 2480 Chain: []validation.Constraint{{Target: "updateThroughputParameters.ThroughputSettingsUpdateProperties.Resource.ProvisionedThroughputSettings.MaxThroughput", Name: validation.Null, Rule: true, Chain: nil}}}, 2481 }}, 2482 }}}}}); err != nil { 2483 return result, validation.NewError("documentdb.SQLResourcesClient", "UpdateSQLDatabaseThroughput", err.Error()) 2484 } 2485 2486 req, err := client.UpdateSQLDatabaseThroughputPreparer(ctx, resourceGroupName, accountName, databaseName, updateThroughputParameters) 2487 if err != nil { 2488 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "UpdateSQLDatabaseThroughput", nil, "Failure preparing request") 2489 return 2490 } 2491 2492 result, err = client.UpdateSQLDatabaseThroughputSender(req) 2493 if err != nil { 2494 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesClient", "UpdateSQLDatabaseThroughput", nil, "Failure sending request") 2495 return 2496 } 2497 2498 return 2499} 2500 2501// UpdateSQLDatabaseThroughputPreparer prepares the UpdateSQLDatabaseThroughput request. 2502func (client SQLResourcesClient) UpdateSQLDatabaseThroughputPreparer(ctx context.Context, resourceGroupName string, accountName string, databaseName string, updateThroughputParameters ThroughputSettingsUpdateParameters) (*http.Request, error) { 2503 pathParameters := map[string]interface{}{ 2504 "accountName": autorest.Encode("path", accountName), 2505 "databaseName": autorest.Encode("path", databaseName), 2506 "resourceGroupName": autorest.Encode("path", resourceGroupName), 2507 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 2508 } 2509 2510 const APIVersion = "2019-12-12" 2511 queryParameters := map[string]interface{}{ 2512 "api-version": APIVersion, 2513 } 2514 2515 preparer := autorest.CreatePreparer( 2516 autorest.AsContentType("application/json; charset=utf-8"), 2517 autorest.AsPut(), 2518 autorest.WithBaseURL(client.BaseURI), 2519 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default", pathParameters), 2520 autorest.WithJSON(updateThroughputParameters), 2521 autorest.WithQueryParameters(queryParameters)) 2522 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 2523} 2524 2525// UpdateSQLDatabaseThroughputSender sends the UpdateSQLDatabaseThroughput request. The method will close the 2526// http.Response Body if it receives an error. 2527func (client SQLResourcesClient) UpdateSQLDatabaseThroughputSender(req *http.Request) (future SQLResourcesUpdateSQLDatabaseThroughputFuture, err error) { 2528 var resp *http.Response 2529 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 2530 if err != nil { 2531 return 2532 } 2533 var azf azure.Future 2534 azf, err = azure.NewFutureFromResponse(resp) 2535 future.FutureAPI = &azf 2536 future.Result = func(client SQLResourcesClient) (tsgr ThroughputSettingsGetResults, err error) { 2537 var done bool 2538 done, err = future.DoneWithContext(context.Background(), client) 2539 if err != nil { 2540 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesUpdateSQLDatabaseThroughputFuture", "Result", future.Response(), "Polling failure") 2541 return 2542 } 2543 if !done { 2544 err = azure.NewAsyncOpIncompleteError("documentdb.SQLResourcesUpdateSQLDatabaseThroughputFuture") 2545 return 2546 } 2547 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2548 tsgr.Response.Response, err = future.GetResult(sender) 2549 if tsgr.Response.Response == nil && err == nil { 2550 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesUpdateSQLDatabaseThroughputFuture", "Result", nil, "received nil response and error") 2551 } 2552 if err == nil && tsgr.Response.Response.StatusCode != http.StatusNoContent { 2553 tsgr, err = client.UpdateSQLDatabaseThroughputResponder(tsgr.Response.Response) 2554 if err != nil { 2555 err = autorest.NewErrorWithError(err, "documentdb.SQLResourcesUpdateSQLDatabaseThroughputFuture", "Result", tsgr.Response.Response, "Failure responding to request") 2556 } 2557 } 2558 return 2559 } 2560 return 2561} 2562 2563// UpdateSQLDatabaseThroughputResponder handles the response to the UpdateSQLDatabaseThroughput request. The method always 2564// closes the http.Response Body. 2565func (client SQLResourcesClient) UpdateSQLDatabaseThroughputResponder(resp *http.Response) (result ThroughputSettingsGetResults, err error) { 2566 err = autorest.Respond( 2567 resp, 2568 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted), 2569 autorest.ByUnmarshallingJSON(&result), 2570 autorest.ByClosing()) 2571 result.Response = autorest.Response{Response: resp} 2572 return 2573} 2574