1package compute 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/tracing" 25 "net/http" 26) 27 28// AvailabilitySetsClient is the compute Client 29type AvailabilitySetsClient struct { 30 BaseClient 31} 32 33// NewAvailabilitySetsClient creates an instance of the AvailabilitySetsClient client. 34func NewAvailabilitySetsClient(subscriptionID string) AvailabilitySetsClient { 35 return NewAvailabilitySetsClientWithBaseURI(DefaultBaseURI, subscriptionID) 36} 37 38// NewAvailabilitySetsClientWithBaseURI creates an instance of the AvailabilitySetsClient client. 39func NewAvailabilitySetsClientWithBaseURI(baseURI string, subscriptionID string) AvailabilitySetsClient { 40 return AvailabilitySetsClient{NewWithBaseURI(baseURI, subscriptionID)} 41} 42 43// CreateOrUpdate create or update an availability set. 44// Parameters: 45// resourceGroupName - the name of the resource group. 46// name - the name of the availability set. 47// parameters - parameters supplied to the Create Availability Set operation. 48func (client AvailabilitySetsClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, name string, parameters AvailabilitySet) (result AvailabilitySet, err error) { 49 if tracing.IsEnabled() { 50 ctx = tracing.StartSpan(ctx, fqdn+"/AvailabilitySetsClient.CreateOrUpdate") 51 defer func() { 52 sc := -1 53 if result.Response.Response != nil { 54 sc = result.Response.Response.StatusCode 55 } 56 tracing.EndSpan(ctx, sc, err) 57 }() 58 } 59 req, err := client.CreateOrUpdatePreparer(ctx, resourceGroupName, name, parameters) 60 if err != nil { 61 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "CreateOrUpdate", nil, "Failure preparing request") 62 return 63 } 64 65 resp, err := client.CreateOrUpdateSender(req) 66 if err != nil { 67 result.Response = autorest.Response{Response: resp} 68 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "CreateOrUpdate", resp, "Failure sending request") 69 return 70 } 71 72 result, err = client.CreateOrUpdateResponder(resp) 73 if err != nil { 74 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "CreateOrUpdate", resp, "Failure responding to request") 75 } 76 77 return 78} 79 80// CreateOrUpdatePreparer prepares the CreateOrUpdate request. 81func (client AvailabilitySetsClient) CreateOrUpdatePreparer(ctx context.Context, resourceGroupName string, name string, parameters AvailabilitySet) (*http.Request, error) { 82 pathParameters := map[string]interface{}{ 83 "availabilitySetName": autorest.Encode("path", name), 84 "resourceGroupName": autorest.Encode("path", resourceGroupName), 85 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 86 } 87 88 const APIVersion = "2016-04-30-preview" 89 queryParameters := map[string]interface{}{ 90 "api-version": APIVersion, 91 } 92 93 preparer := autorest.CreatePreparer( 94 autorest.AsContentType("application/json; charset=utf-8"), 95 autorest.AsPut(), 96 autorest.WithBaseURL(client.BaseURI), 97 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", pathParameters), 98 autorest.WithJSON(parameters), 99 autorest.WithQueryParameters(queryParameters)) 100 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 101} 102 103// CreateOrUpdateSender sends the CreateOrUpdate request. The method will close the 104// http.Response Body if it receives an error. 105func (client AvailabilitySetsClient) CreateOrUpdateSender(req *http.Request) (*http.Response, error) { 106 sd := autorest.GetSendDecorators(req.Context(), azure.DoRetryWithRegistration(client.Client)) 107 return autorest.SendWithSender(client, req, sd...) 108} 109 110// CreateOrUpdateResponder handles the response to the CreateOrUpdate request. The method always 111// closes the http.Response Body. 112func (client AvailabilitySetsClient) CreateOrUpdateResponder(resp *http.Response) (result AvailabilitySet, err error) { 113 err = autorest.Respond( 114 resp, 115 client.ByInspecting(), 116 azure.WithErrorUnlessStatusCode(http.StatusOK), 117 autorest.ByUnmarshallingJSON(&result), 118 autorest.ByClosing()) 119 result.Response = autorest.Response{Response: resp} 120 return 121} 122 123// Delete delete an availability set. 124// Parameters: 125// resourceGroupName - the name of the resource group. 126// availabilitySetName - the name of the availability set. 127func (client AvailabilitySetsClient) Delete(ctx context.Context, resourceGroupName string, availabilitySetName string) (result OperationStatusResponse, err error) { 128 if tracing.IsEnabled() { 129 ctx = tracing.StartSpan(ctx, fqdn+"/AvailabilitySetsClient.Delete") 130 defer func() { 131 sc := -1 132 if result.Response.Response != nil { 133 sc = result.Response.Response.StatusCode 134 } 135 tracing.EndSpan(ctx, sc, err) 136 }() 137 } 138 req, err := client.DeletePreparer(ctx, resourceGroupName, availabilitySetName) 139 if err != nil { 140 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "Delete", nil, "Failure preparing request") 141 return 142 } 143 144 resp, err := client.DeleteSender(req) 145 if err != nil { 146 result.Response = autorest.Response{Response: resp} 147 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "Delete", resp, "Failure sending request") 148 return 149 } 150 151 result, err = client.DeleteResponder(resp) 152 if err != nil { 153 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "Delete", resp, "Failure responding to request") 154 } 155 156 return 157} 158 159// DeletePreparer prepares the Delete request. 160func (client AvailabilitySetsClient) DeletePreparer(ctx context.Context, resourceGroupName string, availabilitySetName string) (*http.Request, error) { 161 pathParameters := map[string]interface{}{ 162 "availabilitySetName": autorest.Encode("path", availabilitySetName), 163 "resourceGroupName": autorest.Encode("path", resourceGroupName), 164 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 165 } 166 167 const APIVersion = "2016-04-30-preview" 168 queryParameters := map[string]interface{}{ 169 "api-version": APIVersion, 170 } 171 172 preparer := autorest.CreatePreparer( 173 autorest.AsDelete(), 174 autorest.WithBaseURL(client.BaseURI), 175 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", pathParameters), 176 autorest.WithQueryParameters(queryParameters)) 177 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 178} 179 180// DeleteSender sends the Delete request. The method will close the 181// http.Response Body if it receives an error. 182func (client AvailabilitySetsClient) DeleteSender(req *http.Request) (*http.Response, error) { 183 sd := autorest.GetSendDecorators(req.Context(), azure.DoRetryWithRegistration(client.Client)) 184 return autorest.SendWithSender(client, req, sd...) 185} 186 187// DeleteResponder handles the response to the Delete request. The method always 188// closes the http.Response Body. 189func (client AvailabilitySetsClient) DeleteResponder(resp *http.Response) (result OperationStatusResponse, err error) { 190 err = autorest.Respond( 191 resp, 192 client.ByInspecting(), 193 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusNoContent), 194 autorest.ByUnmarshallingJSON(&result), 195 autorest.ByClosing()) 196 result.Response = autorest.Response{Response: resp} 197 return 198} 199 200// Get retrieves information about an availability set. 201// Parameters: 202// resourceGroupName - the name of the resource group. 203// availabilitySetName - the name of the availability set. 204func (client AvailabilitySetsClient) Get(ctx context.Context, resourceGroupName string, availabilitySetName string) (result AvailabilitySet, err error) { 205 if tracing.IsEnabled() { 206 ctx = tracing.StartSpan(ctx, fqdn+"/AvailabilitySetsClient.Get") 207 defer func() { 208 sc := -1 209 if result.Response.Response != nil { 210 sc = result.Response.Response.StatusCode 211 } 212 tracing.EndSpan(ctx, sc, err) 213 }() 214 } 215 req, err := client.GetPreparer(ctx, resourceGroupName, availabilitySetName) 216 if err != nil { 217 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "Get", nil, "Failure preparing request") 218 return 219 } 220 221 resp, err := client.GetSender(req) 222 if err != nil { 223 result.Response = autorest.Response{Response: resp} 224 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "Get", resp, "Failure sending request") 225 return 226 } 227 228 result, err = client.GetResponder(resp) 229 if err != nil { 230 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "Get", resp, "Failure responding to request") 231 } 232 233 return 234} 235 236// GetPreparer prepares the Get request. 237func (client AvailabilitySetsClient) GetPreparer(ctx context.Context, resourceGroupName string, availabilitySetName string) (*http.Request, error) { 238 pathParameters := map[string]interface{}{ 239 "availabilitySetName": autorest.Encode("path", availabilitySetName), 240 "resourceGroupName": autorest.Encode("path", resourceGroupName), 241 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 242 } 243 244 const APIVersion = "2016-04-30-preview" 245 queryParameters := map[string]interface{}{ 246 "api-version": APIVersion, 247 } 248 249 preparer := autorest.CreatePreparer( 250 autorest.AsGet(), 251 autorest.WithBaseURL(client.BaseURI), 252 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", pathParameters), 253 autorest.WithQueryParameters(queryParameters)) 254 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 255} 256 257// GetSender sends the Get request. The method will close the 258// http.Response Body if it receives an error. 259func (client AvailabilitySetsClient) GetSender(req *http.Request) (*http.Response, error) { 260 sd := autorest.GetSendDecorators(req.Context(), azure.DoRetryWithRegistration(client.Client)) 261 return autorest.SendWithSender(client, req, sd...) 262} 263 264// GetResponder handles the response to the Get request. The method always 265// closes the http.Response Body. 266func (client AvailabilitySetsClient) GetResponder(resp *http.Response) (result AvailabilitySet, err error) { 267 err = autorest.Respond( 268 resp, 269 client.ByInspecting(), 270 azure.WithErrorUnlessStatusCode(http.StatusOK), 271 autorest.ByUnmarshallingJSON(&result), 272 autorest.ByClosing()) 273 result.Response = autorest.Response{Response: resp} 274 return 275} 276 277// List lists all availability sets in a resource group. 278// Parameters: 279// resourceGroupName - the name of the resource group. 280func (client AvailabilitySetsClient) List(ctx context.Context, resourceGroupName string) (result AvailabilitySetListResultPage, err error) { 281 if tracing.IsEnabled() { 282 ctx = tracing.StartSpan(ctx, fqdn+"/AvailabilitySetsClient.List") 283 defer func() { 284 sc := -1 285 if result.aslr.Response.Response != nil { 286 sc = result.aslr.Response.Response.StatusCode 287 } 288 tracing.EndSpan(ctx, sc, err) 289 }() 290 } 291 result.fn = client.listNextResults 292 req, err := client.ListPreparer(ctx, resourceGroupName) 293 if err != nil { 294 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "List", nil, "Failure preparing request") 295 return 296 } 297 298 resp, err := client.ListSender(req) 299 if err != nil { 300 result.aslr.Response = autorest.Response{Response: resp} 301 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "List", resp, "Failure sending request") 302 return 303 } 304 305 result.aslr, err = client.ListResponder(resp) 306 if err != nil { 307 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "List", resp, "Failure responding to request") 308 } 309 310 return 311} 312 313// ListPreparer prepares the List request. 314func (client AvailabilitySetsClient) ListPreparer(ctx context.Context, resourceGroupName string) (*http.Request, error) { 315 pathParameters := map[string]interface{}{ 316 "resourceGroupName": autorest.Encode("path", resourceGroupName), 317 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 318 } 319 320 const APIVersion = "2016-04-30-preview" 321 queryParameters := map[string]interface{}{ 322 "api-version": APIVersion, 323 } 324 325 preparer := autorest.CreatePreparer( 326 autorest.AsGet(), 327 autorest.WithBaseURL(client.BaseURI), 328 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets", pathParameters), 329 autorest.WithQueryParameters(queryParameters)) 330 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 331} 332 333// ListSender sends the List request. The method will close the 334// http.Response Body if it receives an error. 335func (client AvailabilitySetsClient) ListSender(req *http.Request) (*http.Response, error) { 336 sd := autorest.GetSendDecorators(req.Context(), azure.DoRetryWithRegistration(client.Client)) 337 return autorest.SendWithSender(client, req, sd...) 338} 339 340// ListResponder handles the response to the List request. The method always 341// closes the http.Response Body. 342func (client AvailabilitySetsClient) ListResponder(resp *http.Response) (result AvailabilitySetListResult, err error) { 343 err = autorest.Respond( 344 resp, 345 client.ByInspecting(), 346 azure.WithErrorUnlessStatusCode(http.StatusOK), 347 autorest.ByUnmarshallingJSON(&result), 348 autorest.ByClosing()) 349 result.Response = autorest.Response{Response: resp} 350 return 351} 352 353// listNextResults retrieves the next set of results, if any. 354func (client AvailabilitySetsClient) listNextResults(ctx context.Context, lastResults AvailabilitySetListResult) (result AvailabilitySetListResult, err error) { 355 req, err := lastResults.availabilitySetListResultPreparer(ctx) 356 if err != nil { 357 return result, autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "listNextResults", nil, "Failure preparing next results request") 358 } 359 if req == nil { 360 return 361 } 362 resp, err := client.ListSender(req) 363 if err != nil { 364 result.Response = autorest.Response{Response: resp} 365 return result, autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "listNextResults", resp, "Failure sending next results request") 366 } 367 result, err = client.ListResponder(resp) 368 if err != nil { 369 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "listNextResults", resp, "Failure responding to next results request") 370 } 371 return 372} 373 374// ListComplete enumerates all values, automatically crossing page boundaries as required. 375func (client AvailabilitySetsClient) ListComplete(ctx context.Context, resourceGroupName string) (result AvailabilitySetListResultIterator, err error) { 376 if tracing.IsEnabled() { 377 ctx = tracing.StartSpan(ctx, fqdn+"/AvailabilitySetsClient.List") 378 defer func() { 379 sc := -1 380 if result.Response().Response.Response != nil { 381 sc = result.page.Response().Response.Response.StatusCode 382 } 383 tracing.EndSpan(ctx, sc, err) 384 }() 385 } 386 result.page, err = client.List(ctx, resourceGroupName) 387 return 388} 389 390// ListAvailableSizes lists all available virtual machine sizes that can be used to create a new virtual machine in an 391// existing availability set. 392// Parameters: 393// resourceGroupName - the name of the resource group. 394// availabilitySetName - the name of the availability set. 395func (client AvailabilitySetsClient) ListAvailableSizes(ctx context.Context, resourceGroupName string, availabilitySetName string) (result VirtualMachineSizeListResult, err error) { 396 if tracing.IsEnabled() { 397 ctx = tracing.StartSpan(ctx, fqdn+"/AvailabilitySetsClient.ListAvailableSizes") 398 defer func() { 399 sc := -1 400 if result.Response.Response != nil { 401 sc = result.Response.Response.StatusCode 402 } 403 tracing.EndSpan(ctx, sc, err) 404 }() 405 } 406 req, err := client.ListAvailableSizesPreparer(ctx, resourceGroupName, availabilitySetName) 407 if err != nil { 408 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "ListAvailableSizes", nil, "Failure preparing request") 409 return 410 } 411 412 resp, err := client.ListAvailableSizesSender(req) 413 if err != nil { 414 result.Response = autorest.Response{Response: resp} 415 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "ListAvailableSizes", resp, "Failure sending request") 416 return 417 } 418 419 result, err = client.ListAvailableSizesResponder(resp) 420 if err != nil { 421 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "ListAvailableSizes", resp, "Failure responding to request") 422 } 423 424 return 425} 426 427// ListAvailableSizesPreparer prepares the ListAvailableSizes request. 428func (client AvailabilitySetsClient) ListAvailableSizesPreparer(ctx context.Context, resourceGroupName string, availabilitySetName string) (*http.Request, error) { 429 pathParameters := map[string]interface{}{ 430 "availabilitySetName": autorest.Encode("path", availabilitySetName), 431 "resourceGroupName": autorest.Encode("path", resourceGroupName), 432 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 433 } 434 435 const APIVersion = "2016-04-30-preview" 436 queryParameters := map[string]interface{}{ 437 "api-version": APIVersion, 438 } 439 440 preparer := autorest.CreatePreparer( 441 autorest.AsGet(), 442 autorest.WithBaseURL(client.BaseURI), 443 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}/vmSizes", pathParameters), 444 autorest.WithQueryParameters(queryParameters)) 445 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 446} 447 448// ListAvailableSizesSender sends the ListAvailableSizes request. The method will close the 449// http.Response Body if it receives an error. 450func (client AvailabilitySetsClient) ListAvailableSizesSender(req *http.Request) (*http.Response, error) { 451 sd := autorest.GetSendDecorators(req.Context(), azure.DoRetryWithRegistration(client.Client)) 452 return autorest.SendWithSender(client, req, sd...) 453} 454 455// ListAvailableSizesResponder handles the response to the ListAvailableSizes request. The method always 456// closes the http.Response Body. 457func (client AvailabilitySetsClient) ListAvailableSizesResponder(resp *http.Response) (result VirtualMachineSizeListResult, err error) { 458 err = autorest.Respond( 459 resp, 460 client.ByInspecting(), 461 azure.WithErrorUnlessStatusCode(http.StatusOK), 462 autorest.ByUnmarshallingJSON(&result), 463 autorest.ByClosing()) 464 result.Response = autorest.Response{Response: resp} 465 return 466} 467 468// ListBySubscription lists all availability sets in a subscription. 469func (client AvailabilitySetsClient) ListBySubscription(ctx context.Context) (result AvailabilitySetListResultPage, err error) { 470 if tracing.IsEnabled() { 471 ctx = tracing.StartSpan(ctx, fqdn+"/AvailabilitySetsClient.ListBySubscription") 472 defer func() { 473 sc := -1 474 if result.aslr.Response.Response != nil { 475 sc = result.aslr.Response.Response.StatusCode 476 } 477 tracing.EndSpan(ctx, sc, err) 478 }() 479 } 480 result.fn = client.listBySubscriptionNextResults 481 req, err := client.ListBySubscriptionPreparer(ctx) 482 if err != nil { 483 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "ListBySubscription", nil, "Failure preparing request") 484 return 485 } 486 487 resp, err := client.ListBySubscriptionSender(req) 488 if err != nil { 489 result.aslr.Response = autorest.Response{Response: resp} 490 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "ListBySubscription", resp, "Failure sending request") 491 return 492 } 493 494 result.aslr, err = client.ListBySubscriptionResponder(resp) 495 if err != nil { 496 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "ListBySubscription", resp, "Failure responding to request") 497 } 498 499 return 500} 501 502// ListBySubscriptionPreparer prepares the ListBySubscription request. 503func (client AvailabilitySetsClient) ListBySubscriptionPreparer(ctx context.Context) (*http.Request, error) { 504 pathParameters := map[string]interface{}{ 505 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 506 } 507 508 const APIVersion = "2016-04-30-preview" 509 queryParameters := map[string]interface{}{ 510 "api-version": APIVersion, 511 } 512 513 preparer := autorest.CreatePreparer( 514 autorest.AsGet(), 515 autorest.WithBaseURL(client.BaseURI), 516 autorest.WithPathParameters("/subscriptions/{subscriptionId}/providers/Microsoft.Compute/availabilitySets", pathParameters), 517 autorest.WithQueryParameters(queryParameters)) 518 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 519} 520 521// ListBySubscriptionSender sends the ListBySubscription request. The method will close the 522// http.Response Body if it receives an error. 523func (client AvailabilitySetsClient) ListBySubscriptionSender(req *http.Request) (*http.Response, error) { 524 sd := autorest.GetSendDecorators(req.Context(), azure.DoRetryWithRegistration(client.Client)) 525 return autorest.SendWithSender(client, req, sd...) 526} 527 528// ListBySubscriptionResponder handles the response to the ListBySubscription request. The method always 529// closes the http.Response Body. 530func (client AvailabilitySetsClient) ListBySubscriptionResponder(resp *http.Response) (result AvailabilitySetListResult, err error) { 531 err = autorest.Respond( 532 resp, 533 client.ByInspecting(), 534 azure.WithErrorUnlessStatusCode(http.StatusOK), 535 autorest.ByUnmarshallingJSON(&result), 536 autorest.ByClosing()) 537 result.Response = autorest.Response{Response: resp} 538 return 539} 540 541// listBySubscriptionNextResults retrieves the next set of results, if any. 542func (client AvailabilitySetsClient) listBySubscriptionNextResults(ctx context.Context, lastResults AvailabilitySetListResult) (result AvailabilitySetListResult, err error) { 543 req, err := lastResults.availabilitySetListResultPreparer(ctx) 544 if err != nil { 545 return result, autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "listBySubscriptionNextResults", nil, "Failure preparing next results request") 546 } 547 if req == nil { 548 return 549 } 550 resp, err := client.ListBySubscriptionSender(req) 551 if err != nil { 552 result.Response = autorest.Response{Response: resp} 553 return result, autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "listBySubscriptionNextResults", resp, "Failure sending next results request") 554 } 555 result, err = client.ListBySubscriptionResponder(resp) 556 if err != nil { 557 err = autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "listBySubscriptionNextResults", resp, "Failure responding to next results request") 558 } 559 return 560} 561 562// ListBySubscriptionComplete enumerates all values, automatically crossing page boundaries as required. 563func (client AvailabilitySetsClient) ListBySubscriptionComplete(ctx context.Context) (result AvailabilitySetListResultIterator, err error) { 564 if tracing.IsEnabled() { 565 ctx = tracing.StartSpan(ctx, fqdn+"/AvailabilitySetsClient.ListBySubscription") 566 defer func() { 567 sc := -1 568 if result.Response().Response.Response != nil { 569 sc = result.page.Response().Response.Response.StatusCode 570 } 571 tracing.EndSpan(ctx, sc, err) 572 }() 573 } 574 result.page, err = client.ListBySubscription(ctx) 575 return 576} 577