1package web 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// AppServiceEnvironmentsClient is the webSite Management Client 30type AppServiceEnvironmentsClient struct { 31 BaseClient 32} 33 34// NewAppServiceEnvironmentsClient creates an instance of the AppServiceEnvironmentsClient client. 35func NewAppServiceEnvironmentsClient(subscriptionID string) AppServiceEnvironmentsClient { 36 return NewAppServiceEnvironmentsClientWithBaseURI(DefaultBaseURI, subscriptionID) 37} 38 39// NewAppServiceEnvironmentsClientWithBaseURI creates an instance of the AppServiceEnvironmentsClient client using a 40// custom endpoint. Use this when interacting with an Azure cloud that uses a non-standard base URI (sovereign clouds, 41// Azure stack). 42func NewAppServiceEnvironmentsClientWithBaseURI(baseURI string, subscriptionID string) AppServiceEnvironmentsClient { 43 return AppServiceEnvironmentsClient{NewWithBaseURI(baseURI, subscriptionID)} 44} 45 46// ChangeVnet move an App Service Environment to a different VNET. 47// Parameters: 48// resourceGroupName - name of the resource group to which the resource belongs. 49// name - name of the App Service Environment. 50// vnetInfo - details for the new virtual network. 51func (client AppServiceEnvironmentsClient) ChangeVnet(ctx context.Context, resourceGroupName string, name string, vnetInfo VirtualNetworkProfile) (result AppServiceEnvironmentsChangeVnetFuture, err error) { 52 if tracing.IsEnabled() { 53 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ChangeVnet") 54 defer func() { 55 sc := -1 56 if result.Response() != nil { 57 sc = result.Response().StatusCode 58 } 59 tracing.EndSpan(ctx, sc, err) 60 }() 61 } 62 if err := validation.Validate([]validation.Validation{ 63 {TargetValue: resourceGroupName, 64 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 65 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 66 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 67 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ChangeVnet", err.Error()) 68 } 69 70 req, err := client.ChangeVnetPreparer(ctx, resourceGroupName, name, vnetInfo) 71 if err != nil { 72 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ChangeVnet", nil, "Failure preparing request") 73 return 74 } 75 76 result, err = client.ChangeVnetSender(req) 77 if err != nil { 78 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ChangeVnet", nil, "Failure sending request") 79 return 80 } 81 82 return 83} 84 85// ChangeVnetPreparer prepares the ChangeVnet request. 86func (client AppServiceEnvironmentsClient) ChangeVnetPreparer(ctx context.Context, resourceGroupName string, name string, vnetInfo VirtualNetworkProfile) (*http.Request, error) { 87 pathParameters := map[string]interface{}{ 88 "name": autorest.Encode("path", name), 89 "resourceGroupName": autorest.Encode("path", resourceGroupName), 90 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 91 } 92 93 const APIVersion = "2018-02-01" 94 queryParameters := map[string]interface{}{ 95 "api-version": APIVersion, 96 } 97 98 vnetInfo.Name = nil 99 vnetInfo.Type = nil 100 preparer := autorest.CreatePreparer( 101 autorest.AsContentType("application/json; charset=utf-8"), 102 autorest.AsPost(), 103 autorest.WithBaseURL(client.BaseURI), 104 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/changeVirtualNetwork", pathParameters), 105 autorest.WithJSON(vnetInfo), 106 autorest.WithQueryParameters(queryParameters)) 107 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 108} 109 110// ChangeVnetSender sends the ChangeVnet request. The method will close the 111// http.Response Body if it receives an error. 112func (client AppServiceEnvironmentsClient) ChangeVnetSender(req *http.Request) (future AppServiceEnvironmentsChangeVnetFuture, err error) { 113 var resp *http.Response 114 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 115 if err != nil { 116 return 117 } 118 var azf azure.Future 119 azf, err = azure.NewFutureFromResponse(resp) 120 future.FutureAPI = &azf 121 future.Result = func(client AppServiceEnvironmentsClient) (acp AppCollectionPage, err error) { 122 var done bool 123 done, err = future.DoneWithContext(context.Background(), client) 124 if err != nil { 125 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsChangeVnetFuture", "Result", future.Response(), "Polling failure") 126 return 127 } 128 if !done { 129 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsChangeVnetFuture") 130 return 131 } 132 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 133 if acp.ac.Response.Response, err = future.GetResult(sender); err == nil && acp.ac.Response.Response.StatusCode != http.StatusNoContent { 134 acp, err = client.ChangeVnetResponder(acp.ac.Response.Response) 135 if err != nil { 136 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsChangeVnetFuture", "Result", acp.ac.Response.Response, "Failure responding to request") 137 } 138 } 139 return 140 } 141 return 142} 143 144// ChangeVnetResponder handles the response to the ChangeVnet request. The method always 145// closes the http.Response Body. 146func (client AppServiceEnvironmentsClient) ChangeVnetResponder(resp *http.Response) (result AppCollectionPage, err error) { 147 result.ac, err = client.changeVnetResponder(resp) 148 result.fn = client.changeVnetNextResults 149 return 150} 151 152func (client AppServiceEnvironmentsClient) changeVnetResponder(resp *http.Response) (result AppCollection, err error) { 153 err = autorest.Respond( 154 resp, 155 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted), 156 autorest.ByUnmarshallingJSON(&result), 157 autorest.ByClosing()) 158 result.Response = autorest.Response{Response: resp} 159 return 160} 161 162// changeVnetNextResults retrieves the next set of results, if any. 163func (client AppServiceEnvironmentsClient) changeVnetNextResults(ctx context.Context, lastResults AppCollection) (result AppCollection, err error) { 164 req, err := lastResults.appCollectionPreparer(ctx) 165 if err != nil { 166 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "changeVnetNextResults", nil, "Failure preparing next results request") 167 } 168 if req == nil { 169 return 170 } 171 var resp *http.Response 172 resp, err = client.Send(req, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 173 if err != nil { 174 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "changeVnetNextResults", resp, "Failure sending next results request") 175 } 176 return client.changeVnetResponder(resp) 177} 178 179// ChangeVnetComplete enumerates all values, automatically crossing page boundaries as required. 180func (client AppServiceEnvironmentsClient) ChangeVnetComplete(ctx context.Context, resourceGroupName string, name string, vnetInfo VirtualNetworkProfile) (result AppServiceEnvironmentsChangeVnetAllFuture, err error) { 181 if tracing.IsEnabled() { 182 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ChangeVnet") 183 defer func() { 184 sc := -1 185 if result.Response() != nil { 186 sc = result.Response().StatusCode 187 } 188 tracing.EndSpan(ctx, sc, err) 189 }() 190 } 191 var future AppServiceEnvironmentsChangeVnetFuture 192 future, err = client.ChangeVnet(ctx, resourceGroupName, name, vnetInfo) 193 result.FutureAPI = future.FutureAPI 194 return 195} 196 197// CreateOrUpdate create or update an App Service Environment. 198// Parameters: 199// resourceGroupName - name of the resource group to which the resource belongs. 200// name - name of the App Service Environment. 201// hostingEnvironmentEnvelope - configuration details of the App Service Environment. 202func (client AppServiceEnvironmentsClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, name string, hostingEnvironmentEnvelope AppServiceEnvironmentResource) (result AppServiceEnvironmentsCreateOrUpdateFuture, err error) { 203 if tracing.IsEnabled() { 204 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.CreateOrUpdate") 205 defer func() { 206 sc := -1 207 if result.Response() != nil { 208 sc = result.Response().StatusCode 209 } 210 tracing.EndSpan(ctx, sc, err) 211 }() 212 } 213 if err := validation.Validate([]validation.Validation{ 214 {TargetValue: resourceGroupName, 215 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 216 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 217 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}, 218 {TargetValue: hostingEnvironmentEnvelope, 219 Constraints: []validation.Constraint{{Target: "hostingEnvironmentEnvelope.AppServiceEnvironment", Name: validation.Null, Rule: false, 220 Chain: []validation.Constraint{{Target: "hostingEnvironmentEnvelope.AppServiceEnvironment.Name", Name: validation.Null, Rule: true, Chain: nil}, 221 {Target: "hostingEnvironmentEnvelope.AppServiceEnvironment.Location", Name: validation.Null, Rule: true, Chain: nil}, 222 {Target: "hostingEnvironmentEnvelope.AppServiceEnvironment.VirtualNetwork", Name: validation.Null, Rule: true, Chain: nil}, 223 {Target: "hostingEnvironmentEnvelope.AppServiceEnvironment.WorkerPools", Name: validation.Null, Rule: true, Chain: nil}, 224 }}}}}); err != nil { 225 return result, validation.NewError("web.AppServiceEnvironmentsClient", "CreateOrUpdate", err.Error()) 226 } 227 228 req, err := client.CreateOrUpdatePreparer(ctx, resourceGroupName, name, hostingEnvironmentEnvelope) 229 if err != nil { 230 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "CreateOrUpdate", nil, "Failure preparing request") 231 return 232 } 233 234 result, err = client.CreateOrUpdateSender(req) 235 if err != nil { 236 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "CreateOrUpdate", nil, "Failure sending request") 237 return 238 } 239 240 return 241} 242 243// CreateOrUpdatePreparer prepares the CreateOrUpdate request. 244func (client AppServiceEnvironmentsClient) CreateOrUpdatePreparer(ctx context.Context, resourceGroupName string, name string, hostingEnvironmentEnvelope AppServiceEnvironmentResource) (*http.Request, error) { 245 pathParameters := map[string]interface{}{ 246 "name": autorest.Encode("path", name), 247 "resourceGroupName": autorest.Encode("path", resourceGroupName), 248 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 249 } 250 251 const APIVersion = "2018-02-01" 252 queryParameters := map[string]interface{}{ 253 "api-version": APIVersion, 254 } 255 256 preparer := autorest.CreatePreparer( 257 autorest.AsContentType("application/json; charset=utf-8"), 258 autorest.AsPut(), 259 autorest.WithBaseURL(client.BaseURI), 260 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}", pathParameters), 261 autorest.WithJSON(hostingEnvironmentEnvelope), 262 autorest.WithQueryParameters(queryParameters)) 263 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 264} 265 266// CreateOrUpdateSender sends the CreateOrUpdate request. The method will close the 267// http.Response Body if it receives an error. 268func (client AppServiceEnvironmentsClient) CreateOrUpdateSender(req *http.Request) (future AppServiceEnvironmentsCreateOrUpdateFuture, err error) { 269 var resp *http.Response 270 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 271 if err != nil { 272 return 273 } 274 var azf azure.Future 275 azf, err = azure.NewFutureFromResponse(resp) 276 future.FutureAPI = &azf 277 future.Result = func(client AppServiceEnvironmentsClient) (aser AppServiceEnvironmentResource, err error) { 278 var done bool 279 done, err = future.DoneWithContext(context.Background(), client) 280 if err != nil { 281 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure") 282 return 283 } 284 if !done { 285 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsCreateOrUpdateFuture") 286 return 287 } 288 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 289 if aser.Response.Response, err = future.GetResult(sender); err == nil && aser.Response.Response.StatusCode != http.StatusNoContent { 290 aser, err = client.CreateOrUpdateResponder(aser.Response.Response) 291 if err != nil { 292 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateFuture", "Result", aser.Response.Response, "Failure responding to request") 293 } 294 } 295 return 296 } 297 return 298} 299 300// CreateOrUpdateResponder handles the response to the CreateOrUpdate request. The method always 301// closes the http.Response Body. 302func (client AppServiceEnvironmentsClient) CreateOrUpdateResponder(resp *http.Response) (result AppServiceEnvironmentResource, err error) { 303 err = autorest.Respond( 304 resp, 305 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusBadRequest, http.StatusNotFound, http.StatusConflict), 306 autorest.ByUnmarshallingJSON(&result), 307 autorest.ByClosing()) 308 result.Response = autorest.Response{Response: resp} 309 return 310} 311 312// CreateOrUpdateMultiRolePool create or update a multi-role pool. 313// Parameters: 314// resourceGroupName - name of the resource group to which the resource belongs. 315// name - name of the App Service Environment. 316// multiRolePoolEnvelope - properties of the multi-role pool. 317func (client AppServiceEnvironmentsClient) CreateOrUpdateMultiRolePool(ctx context.Context, resourceGroupName string, name string, multiRolePoolEnvelope WorkerPoolResource) (result AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture, err error) { 318 if tracing.IsEnabled() { 319 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.CreateOrUpdateMultiRolePool") 320 defer func() { 321 sc := -1 322 if result.Response() != nil { 323 sc = result.Response().StatusCode 324 } 325 tracing.EndSpan(ctx, sc, err) 326 }() 327 } 328 if err := validation.Validate([]validation.Validation{ 329 {TargetValue: resourceGroupName, 330 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 331 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 332 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 333 return result, validation.NewError("web.AppServiceEnvironmentsClient", "CreateOrUpdateMultiRolePool", err.Error()) 334 } 335 336 req, err := client.CreateOrUpdateMultiRolePoolPreparer(ctx, resourceGroupName, name, multiRolePoolEnvelope) 337 if err != nil { 338 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "CreateOrUpdateMultiRolePool", nil, "Failure preparing request") 339 return 340 } 341 342 result, err = client.CreateOrUpdateMultiRolePoolSender(req) 343 if err != nil { 344 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "CreateOrUpdateMultiRolePool", nil, "Failure sending request") 345 return 346 } 347 348 return 349} 350 351// CreateOrUpdateMultiRolePoolPreparer prepares the CreateOrUpdateMultiRolePool request. 352func (client AppServiceEnvironmentsClient) CreateOrUpdateMultiRolePoolPreparer(ctx context.Context, resourceGroupName string, name string, multiRolePoolEnvelope WorkerPoolResource) (*http.Request, error) { 353 pathParameters := map[string]interface{}{ 354 "name": autorest.Encode("path", name), 355 "resourceGroupName": autorest.Encode("path", resourceGroupName), 356 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 357 } 358 359 const APIVersion = "2018-02-01" 360 queryParameters := map[string]interface{}{ 361 "api-version": APIVersion, 362 } 363 364 preparer := autorest.CreatePreparer( 365 autorest.AsContentType("application/json; charset=utf-8"), 366 autorest.AsPut(), 367 autorest.WithBaseURL(client.BaseURI), 368 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default", pathParameters), 369 autorest.WithJSON(multiRolePoolEnvelope), 370 autorest.WithQueryParameters(queryParameters)) 371 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 372} 373 374// CreateOrUpdateMultiRolePoolSender sends the CreateOrUpdateMultiRolePool request. The method will close the 375// http.Response Body if it receives an error. 376func (client AppServiceEnvironmentsClient) CreateOrUpdateMultiRolePoolSender(req *http.Request) (future AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture, err error) { 377 var resp *http.Response 378 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 379 if err != nil { 380 return 381 } 382 var azf azure.Future 383 azf, err = azure.NewFutureFromResponse(resp) 384 future.FutureAPI = &azf 385 future.Result = func(client AppServiceEnvironmentsClient) (wpr WorkerPoolResource, err error) { 386 var done bool 387 done, err = future.DoneWithContext(context.Background(), client) 388 if err != nil { 389 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture", "Result", future.Response(), "Polling failure") 390 return 391 } 392 if !done { 393 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture") 394 return 395 } 396 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 397 if wpr.Response.Response, err = future.GetResult(sender); err == nil && wpr.Response.Response.StatusCode != http.StatusNoContent { 398 wpr, err = client.CreateOrUpdateMultiRolePoolResponder(wpr.Response.Response) 399 if err != nil { 400 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture", "Result", wpr.Response.Response, "Failure responding to request") 401 } 402 } 403 return 404 } 405 return 406} 407 408// CreateOrUpdateMultiRolePoolResponder handles the response to the CreateOrUpdateMultiRolePool request. The method always 409// closes the http.Response Body. 410func (client AppServiceEnvironmentsClient) CreateOrUpdateMultiRolePoolResponder(resp *http.Response) (result WorkerPoolResource, err error) { 411 err = autorest.Respond( 412 resp, 413 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusBadRequest, http.StatusNotFound, http.StatusConflict), 414 autorest.ByUnmarshallingJSON(&result), 415 autorest.ByClosing()) 416 result.Response = autorest.Response{Response: resp} 417 return 418} 419 420// CreateOrUpdateWorkerPool create or update a worker pool. 421// Parameters: 422// resourceGroupName - name of the resource group to which the resource belongs. 423// name - name of the App Service Environment. 424// workerPoolName - name of the worker pool. 425// workerPoolEnvelope - properties of the worker pool. 426func (client AppServiceEnvironmentsClient) CreateOrUpdateWorkerPool(ctx context.Context, resourceGroupName string, name string, workerPoolName string, workerPoolEnvelope WorkerPoolResource) (result AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture, err error) { 427 if tracing.IsEnabled() { 428 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.CreateOrUpdateWorkerPool") 429 defer func() { 430 sc := -1 431 if result.Response() != nil { 432 sc = result.Response().StatusCode 433 } 434 tracing.EndSpan(ctx, sc, err) 435 }() 436 } 437 if err := validation.Validate([]validation.Validation{ 438 {TargetValue: resourceGroupName, 439 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 440 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 441 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 442 return result, validation.NewError("web.AppServiceEnvironmentsClient", "CreateOrUpdateWorkerPool", err.Error()) 443 } 444 445 req, err := client.CreateOrUpdateWorkerPoolPreparer(ctx, resourceGroupName, name, workerPoolName, workerPoolEnvelope) 446 if err != nil { 447 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "CreateOrUpdateWorkerPool", nil, "Failure preparing request") 448 return 449 } 450 451 result, err = client.CreateOrUpdateWorkerPoolSender(req) 452 if err != nil { 453 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "CreateOrUpdateWorkerPool", nil, "Failure sending request") 454 return 455 } 456 457 return 458} 459 460// CreateOrUpdateWorkerPoolPreparer prepares the CreateOrUpdateWorkerPool request. 461func (client AppServiceEnvironmentsClient) CreateOrUpdateWorkerPoolPreparer(ctx context.Context, resourceGroupName string, name string, workerPoolName string, workerPoolEnvelope WorkerPoolResource) (*http.Request, error) { 462 pathParameters := map[string]interface{}{ 463 "name": autorest.Encode("path", name), 464 "resourceGroupName": autorest.Encode("path", resourceGroupName), 465 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 466 "workerPoolName": autorest.Encode("path", workerPoolName), 467 } 468 469 const APIVersion = "2018-02-01" 470 queryParameters := map[string]interface{}{ 471 "api-version": APIVersion, 472 } 473 474 preparer := autorest.CreatePreparer( 475 autorest.AsContentType("application/json; charset=utf-8"), 476 autorest.AsPut(), 477 autorest.WithBaseURL(client.BaseURI), 478 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}", pathParameters), 479 autorest.WithJSON(workerPoolEnvelope), 480 autorest.WithQueryParameters(queryParameters)) 481 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 482} 483 484// CreateOrUpdateWorkerPoolSender sends the CreateOrUpdateWorkerPool request. The method will close the 485// http.Response Body if it receives an error. 486func (client AppServiceEnvironmentsClient) CreateOrUpdateWorkerPoolSender(req *http.Request) (future AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture, err error) { 487 var resp *http.Response 488 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 489 if err != nil { 490 return 491 } 492 var azf azure.Future 493 azf, err = azure.NewFutureFromResponse(resp) 494 future.FutureAPI = &azf 495 future.Result = func(client AppServiceEnvironmentsClient) (wpr WorkerPoolResource, err error) { 496 var done bool 497 done, err = future.DoneWithContext(context.Background(), client) 498 if err != nil { 499 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture", "Result", future.Response(), "Polling failure") 500 return 501 } 502 if !done { 503 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture") 504 return 505 } 506 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 507 if wpr.Response.Response, err = future.GetResult(sender); err == nil && wpr.Response.Response.StatusCode != http.StatusNoContent { 508 wpr, err = client.CreateOrUpdateWorkerPoolResponder(wpr.Response.Response) 509 if err != nil { 510 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture", "Result", wpr.Response.Response, "Failure responding to request") 511 } 512 } 513 return 514 } 515 return 516} 517 518// CreateOrUpdateWorkerPoolResponder handles the response to the CreateOrUpdateWorkerPool request. The method always 519// closes the http.Response Body. 520func (client AppServiceEnvironmentsClient) CreateOrUpdateWorkerPoolResponder(resp *http.Response) (result WorkerPoolResource, err error) { 521 err = autorest.Respond( 522 resp, 523 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusBadRequest, http.StatusNotFound, http.StatusConflict), 524 autorest.ByUnmarshallingJSON(&result), 525 autorest.ByClosing()) 526 result.Response = autorest.Response{Response: resp} 527 return 528} 529 530// Delete delete an App Service Environment. 531// Parameters: 532// resourceGroupName - name of the resource group to which the resource belongs. 533// name - name of the App Service Environment. 534// forceDelete - specify <code>true</code> to force the deletion even if the App Service Environment contains 535// resources. The default is <code>false</code>. 536func (client AppServiceEnvironmentsClient) Delete(ctx context.Context, resourceGroupName string, name string, forceDelete *bool) (result AppServiceEnvironmentsDeleteFuture, err error) { 537 if tracing.IsEnabled() { 538 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.Delete") 539 defer func() { 540 sc := -1 541 if result.Response() != nil { 542 sc = result.Response().StatusCode 543 } 544 tracing.EndSpan(ctx, sc, err) 545 }() 546 } 547 if err := validation.Validate([]validation.Validation{ 548 {TargetValue: resourceGroupName, 549 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 550 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 551 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 552 return result, validation.NewError("web.AppServiceEnvironmentsClient", "Delete", err.Error()) 553 } 554 555 req, err := client.DeletePreparer(ctx, resourceGroupName, name, forceDelete) 556 if err != nil { 557 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Delete", nil, "Failure preparing request") 558 return 559 } 560 561 result, err = client.DeleteSender(req) 562 if err != nil { 563 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Delete", nil, "Failure sending request") 564 return 565 } 566 567 return 568} 569 570// DeletePreparer prepares the Delete request. 571func (client AppServiceEnvironmentsClient) DeletePreparer(ctx context.Context, resourceGroupName string, name string, forceDelete *bool) (*http.Request, error) { 572 pathParameters := map[string]interface{}{ 573 "name": autorest.Encode("path", name), 574 "resourceGroupName": autorest.Encode("path", resourceGroupName), 575 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 576 } 577 578 const APIVersion = "2018-02-01" 579 queryParameters := map[string]interface{}{ 580 "api-version": APIVersion, 581 } 582 if forceDelete != nil { 583 queryParameters["forceDelete"] = autorest.Encode("query", *forceDelete) 584 } 585 586 preparer := autorest.CreatePreparer( 587 autorest.AsDelete(), 588 autorest.WithBaseURL(client.BaseURI), 589 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}", pathParameters), 590 autorest.WithQueryParameters(queryParameters)) 591 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 592} 593 594// DeleteSender sends the Delete request. The method will close the 595// http.Response Body if it receives an error. 596func (client AppServiceEnvironmentsClient) DeleteSender(req *http.Request) (future AppServiceEnvironmentsDeleteFuture, err error) { 597 var resp *http.Response 598 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 599 if err != nil { 600 return 601 } 602 var azf azure.Future 603 azf, err = azure.NewFutureFromResponse(resp) 604 future.FutureAPI = &azf 605 future.Result = func(client AppServiceEnvironmentsClient) (ar autorest.Response, err error) { 606 var done bool 607 done, err = future.DoneWithContext(context.Background(), client) 608 if err != nil { 609 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsDeleteFuture", "Result", future.Response(), "Polling failure") 610 return 611 } 612 if !done { 613 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsDeleteFuture") 614 return 615 } 616 ar.Response = future.Response() 617 return 618 } 619 return 620} 621 622// DeleteResponder handles the response to the Delete request. The method always 623// closes the http.Response Body. 624func (client AppServiceEnvironmentsClient) DeleteResponder(resp *http.Response) (result autorest.Response, err error) { 625 err = autorest.Respond( 626 resp, 627 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent, http.StatusBadRequest, http.StatusNotFound, http.StatusConflict), 628 autorest.ByClosing()) 629 result.Response = resp 630 return 631} 632 633// Get get the properties of an App Service Environment. 634// Parameters: 635// resourceGroupName - name of the resource group to which the resource belongs. 636// name - name of the App Service Environment. 637func (client AppServiceEnvironmentsClient) Get(ctx context.Context, resourceGroupName string, name string) (result AppServiceEnvironmentResource, err error) { 638 if tracing.IsEnabled() { 639 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.Get") 640 defer func() { 641 sc := -1 642 if result.Response.Response != nil { 643 sc = result.Response.Response.StatusCode 644 } 645 tracing.EndSpan(ctx, sc, err) 646 }() 647 } 648 if err := validation.Validate([]validation.Validation{ 649 {TargetValue: resourceGroupName, 650 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 651 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 652 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 653 return result, validation.NewError("web.AppServiceEnvironmentsClient", "Get", err.Error()) 654 } 655 656 req, err := client.GetPreparer(ctx, resourceGroupName, name) 657 if err != nil { 658 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Get", nil, "Failure preparing request") 659 return 660 } 661 662 resp, err := client.GetSender(req) 663 if err != nil { 664 result.Response = autorest.Response{Response: resp} 665 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Get", resp, "Failure sending request") 666 return 667 } 668 669 result, err = client.GetResponder(resp) 670 if err != nil { 671 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Get", resp, "Failure responding to request") 672 return 673 } 674 675 return 676} 677 678// GetPreparer prepares the Get request. 679func (client AppServiceEnvironmentsClient) GetPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 680 pathParameters := map[string]interface{}{ 681 "name": autorest.Encode("path", name), 682 "resourceGroupName": autorest.Encode("path", resourceGroupName), 683 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 684 } 685 686 const APIVersion = "2018-02-01" 687 queryParameters := map[string]interface{}{ 688 "api-version": APIVersion, 689 } 690 691 preparer := autorest.CreatePreparer( 692 autorest.AsGet(), 693 autorest.WithBaseURL(client.BaseURI), 694 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}", pathParameters), 695 autorest.WithQueryParameters(queryParameters)) 696 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 697} 698 699// GetSender sends the Get request. The method will close the 700// http.Response Body if it receives an error. 701func (client AppServiceEnvironmentsClient) GetSender(req *http.Request) (*http.Response, error) { 702 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 703} 704 705// GetResponder handles the response to the Get request. The method always 706// closes the http.Response Body. 707func (client AppServiceEnvironmentsClient) GetResponder(resp *http.Response) (result AppServiceEnvironmentResource, err error) { 708 err = autorest.Respond( 709 resp, 710 azure.WithErrorUnlessStatusCode(http.StatusOK), 711 autorest.ByUnmarshallingJSON(&result), 712 autorest.ByClosing()) 713 result.Response = autorest.Response{Response: resp} 714 return 715} 716 717// GetDiagnosticsItem get a diagnostics item for an App Service Environment. 718// Parameters: 719// resourceGroupName - name of the resource group to which the resource belongs. 720// name - name of the App Service Environment. 721// diagnosticsName - name of the diagnostics item. 722func (client AppServiceEnvironmentsClient) GetDiagnosticsItem(ctx context.Context, resourceGroupName string, name string, diagnosticsName string) (result HostingEnvironmentDiagnostics, err error) { 723 if tracing.IsEnabled() { 724 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.GetDiagnosticsItem") 725 defer func() { 726 sc := -1 727 if result.Response.Response != nil { 728 sc = result.Response.Response.StatusCode 729 } 730 tracing.EndSpan(ctx, sc, err) 731 }() 732 } 733 if err := validation.Validate([]validation.Validation{ 734 {TargetValue: resourceGroupName, 735 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 736 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 737 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 738 return result, validation.NewError("web.AppServiceEnvironmentsClient", "GetDiagnosticsItem", err.Error()) 739 } 740 741 req, err := client.GetDiagnosticsItemPreparer(ctx, resourceGroupName, name, diagnosticsName) 742 if err != nil { 743 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetDiagnosticsItem", nil, "Failure preparing request") 744 return 745 } 746 747 resp, err := client.GetDiagnosticsItemSender(req) 748 if err != nil { 749 result.Response = autorest.Response{Response: resp} 750 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetDiagnosticsItem", resp, "Failure sending request") 751 return 752 } 753 754 result, err = client.GetDiagnosticsItemResponder(resp) 755 if err != nil { 756 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetDiagnosticsItem", resp, "Failure responding to request") 757 return 758 } 759 760 return 761} 762 763// GetDiagnosticsItemPreparer prepares the GetDiagnosticsItem request. 764func (client AppServiceEnvironmentsClient) GetDiagnosticsItemPreparer(ctx context.Context, resourceGroupName string, name string, diagnosticsName string) (*http.Request, error) { 765 pathParameters := map[string]interface{}{ 766 "diagnosticsName": autorest.Encode("path", diagnosticsName), 767 "name": autorest.Encode("path", name), 768 "resourceGroupName": autorest.Encode("path", resourceGroupName), 769 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 770 } 771 772 const APIVersion = "2018-02-01" 773 queryParameters := map[string]interface{}{ 774 "api-version": APIVersion, 775 } 776 777 preparer := autorest.CreatePreparer( 778 autorest.AsGet(), 779 autorest.WithBaseURL(client.BaseURI), 780 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/diagnostics/{diagnosticsName}", pathParameters), 781 autorest.WithQueryParameters(queryParameters)) 782 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 783} 784 785// GetDiagnosticsItemSender sends the GetDiagnosticsItem request. The method will close the 786// http.Response Body if it receives an error. 787func (client AppServiceEnvironmentsClient) GetDiagnosticsItemSender(req *http.Request) (*http.Response, error) { 788 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 789} 790 791// GetDiagnosticsItemResponder handles the response to the GetDiagnosticsItem request. The method always 792// closes the http.Response Body. 793func (client AppServiceEnvironmentsClient) GetDiagnosticsItemResponder(resp *http.Response) (result HostingEnvironmentDiagnostics, err error) { 794 err = autorest.Respond( 795 resp, 796 azure.WithErrorUnlessStatusCode(http.StatusOK), 797 autorest.ByUnmarshallingJSON(&result), 798 autorest.ByClosing()) 799 result.Response = autorest.Response{Response: resp} 800 return 801} 802 803// GetInboundNetworkDependenciesEndpoints get the network endpoints of all inbound dependencies of an App Service 804// Environment. 805// Parameters: 806// resourceGroupName - name of the resource group to which the resource belongs. 807// name - name of the App Service Environment. 808func (client AppServiceEnvironmentsClient) GetInboundNetworkDependenciesEndpoints(ctx context.Context, resourceGroupName string, name string) (result InboundEnvironmentEndpointCollectionPage, err error) { 809 if tracing.IsEnabled() { 810 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.GetInboundNetworkDependenciesEndpoints") 811 defer func() { 812 sc := -1 813 if result.ieec.Response.Response != nil { 814 sc = result.ieec.Response.Response.StatusCode 815 } 816 tracing.EndSpan(ctx, sc, err) 817 }() 818 } 819 if err := validation.Validate([]validation.Validation{ 820 {TargetValue: resourceGroupName, 821 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 822 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 823 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 824 return result, validation.NewError("web.AppServiceEnvironmentsClient", "GetInboundNetworkDependenciesEndpoints", err.Error()) 825 } 826 827 result.fn = client.getInboundNetworkDependenciesEndpointsNextResults 828 req, err := client.GetInboundNetworkDependenciesEndpointsPreparer(ctx, resourceGroupName, name) 829 if err != nil { 830 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetInboundNetworkDependenciesEndpoints", nil, "Failure preparing request") 831 return 832 } 833 834 resp, err := client.GetInboundNetworkDependenciesEndpointsSender(req) 835 if err != nil { 836 result.ieec.Response = autorest.Response{Response: resp} 837 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetInboundNetworkDependenciesEndpoints", resp, "Failure sending request") 838 return 839 } 840 841 result.ieec, err = client.GetInboundNetworkDependenciesEndpointsResponder(resp) 842 if err != nil { 843 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetInboundNetworkDependenciesEndpoints", resp, "Failure responding to request") 844 return 845 } 846 if result.ieec.hasNextLink() && result.ieec.IsEmpty() { 847 err = result.NextWithContext(ctx) 848 return 849 } 850 851 return 852} 853 854// GetInboundNetworkDependenciesEndpointsPreparer prepares the GetInboundNetworkDependenciesEndpoints request. 855func (client AppServiceEnvironmentsClient) GetInboundNetworkDependenciesEndpointsPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 856 pathParameters := map[string]interface{}{ 857 "name": autorest.Encode("path", name), 858 "resourceGroupName": autorest.Encode("path", resourceGroupName), 859 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 860 } 861 862 const APIVersion = "2018-02-01" 863 queryParameters := map[string]interface{}{ 864 "api-version": APIVersion, 865 } 866 867 preparer := autorest.CreatePreparer( 868 autorest.AsGet(), 869 autorest.WithBaseURL(client.BaseURI), 870 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/inboundNetworkDependenciesEndpoints", pathParameters), 871 autorest.WithQueryParameters(queryParameters)) 872 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 873} 874 875// GetInboundNetworkDependenciesEndpointsSender sends the GetInboundNetworkDependenciesEndpoints request. The method will close the 876// http.Response Body if it receives an error. 877func (client AppServiceEnvironmentsClient) GetInboundNetworkDependenciesEndpointsSender(req *http.Request) (*http.Response, error) { 878 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 879} 880 881// GetInboundNetworkDependenciesEndpointsResponder handles the response to the GetInboundNetworkDependenciesEndpoints request. The method always 882// closes the http.Response Body. 883func (client AppServiceEnvironmentsClient) GetInboundNetworkDependenciesEndpointsResponder(resp *http.Response) (result InboundEnvironmentEndpointCollection, err error) { 884 err = autorest.Respond( 885 resp, 886 azure.WithErrorUnlessStatusCode(http.StatusOK), 887 autorest.ByUnmarshallingJSON(&result), 888 autorest.ByClosing()) 889 result.Response = autorest.Response{Response: resp} 890 return 891} 892 893// getInboundNetworkDependenciesEndpointsNextResults retrieves the next set of results, if any. 894func (client AppServiceEnvironmentsClient) getInboundNetworkDependenciesEndpointsNextResults(ctx context.Context, lastResults InboundEnvironmentEndpointCollection) (result InboundEnvironmentEndpointCollection, err error) { 895 req, err := lastResults.inboundEnvironmentEndpointCollectionPreparer(ctx) 896 if err != nil { 897 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "getInboundNetworkDependenciesEndpointsNextResults", nil, "Failure preparing next results request") 898 } 899 if req == nil { 900 return 901 } 902 resp, err := client.GetInboundNetworkDependenciesEndpointsSender(req) 903 if err != nil { 904 result.Response = autorest.Response{Response: resp} 905 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "getInboundNetworkDependenciesEndpointsNextResults", resp, "Failure sending next results request") 906 } 907 result, err = client.GetInboundNetworkDependenciesEndpointsResponder(resp) 908 if err != nil { 909 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "getInboundNetworkDependenciesEndpointsNextResults", resp, "Failure responding to next results request") 910 } 911 return 912} 913 914// GetInboundNetworkDependenciesEndpointsComplete enumerates all values, automatically crossing page boundaries as required. 915func (client AppServiceEnvironmentsClient) GetInboundNetworkDependenciesEndpointsComplete(ctx context.Context, resourceGroupName string, name string) (result InboundEnvironmentEndpointCollectionIterator, err error) { 916 if tracing.IsEnabled() { 917 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.GetInboundNetworkDependenciesEndpoints") 918 defer func() { 919 sc := -1 920 if result.Response().Response.Response != nil { 921 sc = result.page.Response().Response.Response.StatusCode 922 } 923 tracing.EndSpan(ctx, sc, err) 924 }() 925 } 926 result.page, err = client.GetInboundNetworkDependenciesEndpoints(ctx, resourceGroupName, name) 927 return 928} 929 930// GetMultiRolePool get properties of a multi-role pool. 931// Parameters: 932// resourceGroupName - name of the resource group to which the resource belongs. 933// name - name of the App Service Environment. 934func (client AppServiceEnvironmentsClient) GetMultiRolePool(ctx context.Context, resourceGroupName string, name string) (result WorkerPoolResource, err error) { 935 if tracing.IsEnabled() { 936 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.GetMultiRolePool") 937 defer func() { 938 sc := -1 939 if result.Response.Response != nil { 940 sc = result.Response.Response.StatusCode 941 } 942 tracing.EndSpan(ctx, sc, err) 943 }() 944 } 945 if err := validation.Validate([]validation.Validation{ 946 {TargetValue: resourceGroupName, 947 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 948 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 949 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 950 return result, validation.NewError("web.AppServiceEnvironmentsClient", "GetMultiRolePool", err.Error()) 951 } 952 953 req, err := client.GetMultiRolePoolPreparer(ctx, resourceGroupName, name) 954 if err != nil { 955 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetMultiRolePool", nil, "Failure preparing request") 956 return 957 } 958 959 resp, err := client.GetMultiRolePoolSender(req) 960 if err != nil { 961 result.Response = autorest.Response{Response: resp} 962 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetMultiRolePool", resp, "Failure sending request") 963 return 964 } 965 966 result, err = client.GetMultiRolePoolResponder(resp) 967 if err != nil { 968 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetMultiRolePool", resp, "Failure responding to request") 969 return 970 } 971 972 return 973} 974 975// GetMultiRolePoolPreparer prepares the GetMultiRolePool request. 976func (client AppServiceEnvironmentsClient) GetMultiRolePoolPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 977 pathParameters := map[string]interface{}{ 978 "name": autorest.Encode("path", name), 979 "resourceGroupName": autorest.Encode("path", resourceGroupName), 980 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 981 } 982 983 const APIVersion = "2018-02-01" 984 queryParameters := map[string]interface{}{ 985 "api-version": APIVersion, 986 } 987 988 preparer := autorest.CreatePreparer( 989 autorest.AsGet(), 990 autorest.WithBaseURL(client.BaseURI), 991 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default", pathParameters), 992 autorest.WithQueryParameters(queryParameters)) 993 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 994} 995 996// GetMultiRolePoolSender sends the GetMultiRolePool request. The method will close the 997// http.Response Body if it receives an error. 998func (client AppServiceEnvironmentsClient) GetMultiRolePoolSender(req *http.Request) (*http.Response, error) { 999 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1000} 1001 1002// GetMultiRolePoolResponder handles the response to the GetMultiRolePool request. The method always 1003// closes the http.Response Body. 1004func (client AppServiceEnvironmentsClient) GetMultiRolePoolResponder(resp *http.Response) (result WorkerPoolResource, err error) { 1005 err = autorest.Respond( 1006 resp, 1007 azure.WithErrorUnlessStatusCode(http.StatusOK), 1008 autorest.ByUnmarshallingJSON(&result), 1009 autorest.ByClosing()) 1010 result.Response = autorest.Response{Response: resp} 1011 return 1012} 1013 1014// GetOutboundNetworkDependenciesEndpoints get the network endpoints of all outbound dependencies of an App Service 1015// Environment. 1016// Parameters: 1017// resourceGroupName - name of the resource group to which the resource belongs. 1018// name - name of the App Service Environment. 1019func (client AppServiceEnvironmentsClient) GetOutboundNetworkDependenciesEndpoints(ctx context.Context, resourceGroupName string, name string) (result OutboundEnvironmentEndpointCollectionPage, err error) { 1020 if tracing.IsEnabled() { 1021 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.GetOutboundNetworkDependenciesEndpoints") 1022 defer func() { 1023 sc := -1 1024 if result.oeec.Response.Response != nil { 1025 sc = result.oeec.Response.Response.StatusCode 1026 } 1027 tracing.EndSpan(ctx, sc, err) 1028 }() 1029 } 1030 if err := validation.Validate([]validation.Validation{ 1031 {TargetValue: resourceGroupName, 1032 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1033 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1034 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 1035 return result, validation.NewError("web.AppServiceEnvironmentsClient", "GetOutboundNetworkDependenciesEndpoints", err.Error()) 1036 } 1037 1038 result.fn = client.getOutboundNetworkDependenciesEndpointsNextResults 1039 req, err := client.GetOutboundNetworkDependenciesEndpointsPreparer(ctx, resourceGroupName, name) 1040 if err != nil { 1041 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetOutboundNetworkDependenciesEndpoints", nil, "Failure preparing request") 1042 return 1043 } 1044 1045 resp, err := client.GetOutboundNetworkDependenciesEndpointsSender(req) 1046 if err != nil { 1047 result.oeec.Response = autorest.Response{Response: resp} 1048 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetOutboundNetworkDependenciesEndpoints", resp, "Failure sending request") 1049 return 1050 } 1051 1052 result.oeec, err = client.GetOutboundNetworkDependenciesEndpointsResponder(resp) 1053 if err != nil { 1054 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetOutboundNetworkDependenciesEndpoints", resp, "Failure responding to request") 1055 return 1056 } 1057 if result.oeec.hasNextLink() && result.oeec.IsEmpty() { 1058 err = result.NextWithContext(ctx) 1059 return 1060 } 1061 1062 return 1063} 1064 1065// GetOutboundNetworkDependenciesEndpointsPreparer prepares the GetOutboundNetworkDependenciesEndpoints request. 1066func (client AppServiceEnvironmentsClient) GetOutboundNetworkDependenciesEndpointsPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 1067 pathParameters := map[string]interface{}{ 1068 "name": autorest.Encode("path", name), 1069 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1070 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1071 } 1072 1073 const APIVersion = "2018-02-01" 1074 queryParameters := map[string]interface{}{ 1075 "api-version": APIVersion, 1076 } 1077 1078 preparer := autorest.CreatePreparer( 1079 autorest.AsGet(), 1080 autorest.WithBaseURL(client.BaseURI), 1081 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/outboundNetworkDependenciesEndpoints", pathParameters), 1082 autorest.WithQueryParameters(queryParameters)) 1083 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1084} 1085 1086// GetOutboundNetworkDependenciesEndpointsSender sends the GetOutboundNetworkDependenciesEndpoints request. The method will close the 1087// http.Response Body if it receives an error. 1088func (client AppServiceEnvironmentsClient) GetOutboundNetworkDependenciesEndpointsSender(req *http.Request) (*http.Response, error) { 1089 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1090} 1091 1092// GetOutboundNetworkDependenciesEndpointsResponder handles the response to the GetOutboundNetworkDependenciesEndpoints request. The method always 1093// closes the http.Response Body. 1094func (client AppServiceEnvironmentsClient) GetOutboundNetworkDependenciesEndpointsResponder(resp *http.Response) (result OutboundEnvironmentEndpointCollection, err error) { 1095 err = autorest.Respond( 1096 resp, 1097 azure.WithErrorUnlessStatusCode(http.StatusOK), 1098 autorest.ByUnmarshallingJSON(&result), 1099 autorest.ByClosing()) 1100 result.Response = autorest.Response{Response: resp} 1101 return 1102} 1103 1104// getOutboundNetworkDependenciesEndpointsNextResults retrieves the next set of results, if any. 1105func (client AppServiceEnvironmentsClient) getOutboundNetworkDependenciesEndpointsNextResults(ctx context.Context, lastResults OutboundEnvironmentEndpointCollection) (result OutboundEnvironmentEndpointCollection, err error) { 1106 req, err := lastResults.outboundEnvironmentEndpointCollectionPreparer(ctx) 1107 if err != nil { 1108 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "getOutboundNetworkDependenciesEndpointsNextResults", nil, "Failure preparing next results request") 1109 } 1110 if req == nil { 1111 return 1112 } 1113 resp, err := client.GetOutboundNetworkDependenciesEndpointsSender(req) 1114 if err != nil { 1115 result.Response = autorest.Response{Response: resp} 1116 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "getOutboundNetworkDependenciesEndpointsNextResults", resp, "Failure sending next results request") 1117 } 1118 result, err = client.GetOutboundNetworkDependenciesEndpointsResponder(resp) 1119 if err != nil { 1120 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "getOutboundNetworkDependenciesEndpointsNextResults", resp, "Failure responding to next results request") 1121 } 1122 return 1123} 1124 1125// GetOutboundNetworkDependenciesEndpointsComplete enumerates all values, automatically crossing page boundaries as required. 1126func (client AppServiceEnvironmentsClient) GetOutboundNetworkDependenciesEndpointsComplete(ctx context.Context, resourceGroupName string, name string) (result OutboundEnvironmentEndpointCollectionIterator, err error) { 1127 if tracing.IsEnabled() { 1128 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.GetOutboundNetworkDependenciesEndpoints") 1129 defer func() { 1130 sc := -1 1131 if result.Response().Response.Response != nil { 1132 sc = result.page.Response().Response.Response.StatusCode 1133 } 1134 tracing.EndSpan(ctx, sc, err) 1135 }() 1136 } 1137 result.page, err = client.GetOutboundNetworkDependenciesEndpoints(ctx, resourceGroupName, name) 1138 return 1139} 1140 1141// GetWorkerPool get properties of a worker pool. 1142// Parameters: 1143// resourceGroupName - name of the resource group to which the resource belongs. 1144// name - name of the App Service Environment. 1145// workerPoolName - name of the worker pool. 1146func (client AppServiceEnvironmentsClient) GetWorkerPool(ctx context.Context, resourceGroupName string, name string, workerPoolName string) (result WorkerPoolResource, err error) { 1147 if tracing.IsEnabled() { 1148 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.GetWorkerPool") 1149 defer func() { 1150 sc := -1 1151 if result.Response.Response != nil { 1152 sc = result.Response.Response.StatusCode 1153 } 1154 tracing.EndSpan(ctx, sc, err) 1155 }() 1156 } 1157 if err := validation.Validate([]validation.Validation{ 1158 {TargetValue: resourceGroupName, 1159 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1160 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1161 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 1162 return result, validation.NewError("web.AppServiceEnvironmentsClient", "GetWorkerPool", err.Error()) 1163 } 1164 1165 req, err := client.GetWorkerPoolPreparer(ctx, resourceGroupName, name, workerPoolName) 1166 if err != nil { 1167 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetWorkerPool", nil, "Failure preparing request") 1168 return 1169 } 1170 1171 resp, err := client.GetWorkerPoolSender(req) 1172 if err != nil { 1173 result.Response = autorest.Response{Response: resp} 1174 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetWorkerPool", resp, "Failure sending request") 1175 return 1176 } 1177 1178 result, err = client.GetWorkerPoolResponder(resp) 1179 if err != nil { 1180 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "GetWorkerPool", resp, "Failure responding to request") 1181 return 1182 } 1183 1184 return 1185} 1186 1187// GetWorkerPoolPreparer prepares the GetWorkerPool request. 1188func (client AppServiceEnvironmentsClient) GetWorkerPoolPreparer(ctx context.Context, resourceGroupName string, name string, workerPoolName string) (*http.Request, error) { 1189 pathParameters := map[string]interface{}{ 1190 "name": autorest.Encode("path", name), 1191 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1192 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1193 "workerPoolName": autorest.Encode("path", workerPoolName), 1194 } 1195 1196 const APIVersion = "2018-02-01" 1197 queryParameters := map[string]interface{}{ 1198 "api-version": APIVersion, 1199 } 1200 1201 preparer := autorest.CreatePreparer( 1202 autorest.AsGet(), 1203 autorest.WithBaseURL(client.BaseURI), 1204 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}", pathParameters), 1205 autorest.WithQueryParameters(queryParameters)) 1206 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1207} 1208 1209// GetWorkerPoolSender sends the GetWorkerPool request. The method will close the 1210// http.Response Body if it receives an error. 1211func (client AppServiceEnvironmentsClient) GetWorkerPoolSender(req *http.Request) (*http.Response, error) { 1212 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1213} 1214 1215// GetWorkerPoolResponder handles the response to the GetWorkerPool request. The method always 1216// closes the http.Response Body. 1217func (client AppServiceEnvironmentsClient) GetWorkerPoolResponder(resp *http.Response) (result WorkerPoolResource, err error) { 1218 err = autorest.Respond( 1219 resp, 1220 azure.WithErrorUnlessStatusCode(http.StatusOK), 1221 autorest.ByUnmarshallingJSON(&result), 1222 autorest.ByClosing()) 1223 result.Response = autorest.Response{Response: resp} 1224 return 1225} 1226 1227// List get all App Service Environments for a subscription. 1228func (client AppServiceEnvironmentsClient) List(ctx context.Context) (result AppServiceEnvironmentCollectionPage, err error) { 1229 if tracing.IsEnabled() { 1230 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.List") 1231 defer func() { 1232 sc := -1 1233 if result.asec.Response.Response != nil { 1234 sc = result.asec.Response.Response.StatusCode 1235 } 1236 tracing.EndSpan(ctx, sc, err) 1237 }() 1238 } 1239 result.fn = client.listNextResults 1240 req, err := client.ListPreparer(ctx) 1241 if err != nil { 1242 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "List", nil, "Failure preparing request") 1243 return 1244 } 1245 1246 resp, err := client.ListSender(req) 1247 if err != nil { 1248 result.asec.Response = autorest.Response{Response: resp} 1249 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "List", resp, "Failure sending request") 1250 return 1251 } 1252 1253 result.asec, err = client.ListResponder(resp) 1254 if err != nil { 1255 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "List", resp, "Failure responding to request") 1256 return 1257 } 1258 if result.asec.hasNextLink() && result.asec.IsEmpty() { 1259 err = result.NextWithContext(ctx) 1260 return 1261 } 1262 1263 return 1264} 1265 1266// ListPreparer prepares the List request. 1267func (client AppServiceEnvironmentsClient) ListPreparer(ctx context.Context) (*http.Request, error) { 1268 pathParameters := map[string]interface{}{ 1269 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1270 } 1271 1272 const APIVersion = "2018-02-01" 1273 queryParameters := map[string]interface{}{ 1274 "api-version": APIVersion, 1275 } 1276 1277 preparer := autorest.CreatePreparer( 1278 autorest.AsGet(), 1279 autorest.WithBaseURL(client.BaseURI), 1280 autorest.WithPathParameters("/subscriptions/{subscriptionId}/providers/Microsoft.Web/hostingEnvironments", pathParameters), 1281 autorest.WithQueryParameters(queryParameters)) 1282 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1283} 1284 1285// ListSender sends the List request. The method will close the 1286// http.Response Body if it receives an error. 1287func (client AppServiceEnvironmentsClient) ListSender(req *http.Request) (*http.Response, error) { 1288 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1289} 1290 1291// ListResponder handles the response to the List request. The method always 1292// closes the http.Response Body. 1293func (client AppServiceEnvironmentsClient) ListResponder(resp *http.Response) (result AppServiceEnvironmentCollection, err error) { 1294 err = autorest.Respond( 1295 resp, 1296 azure.WithErrorUnlessStatusCode(http.StatusOK), 1297 autorest.ByUnmarshallingJSON(&result), 1298 autorest.ByClosing()) 1299 result.Response = autorest.Response{Response: resp} 1300 return 1301} 1302 1303// listNextResults retrieves the next set of results, if any. 1304func (client AppServiceEnvironmentsClient) listNextResults(ctx context.Context, lastResults AppServiceEnvironmentCollection) (result AppServiceEnvironmentCollection, err error) { 1305 req, err := lastResults.appServiceEnvironmentCollectionPreparer(ctx) 1306 if err != nil { 1307 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listNextResults", nil, "Failure preparing next results request") 1308 } 1309 if req == nil { 1310 return 1311 } 1312 resp, err := client.ListSender(req) 1313 if err != nil { 1314 result.Response = autorest.Response{Response: resp} 1315 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listNextResults", resp, "Failure sending next results request") 1316 } 1317 result, err = client.ListResponder(resp) 1318 if err != nil { 1319 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listNextResults", resp, "Failure responding to next results request") 1320 } 1321 return 1322} 1323 1324// ListComplete enumerates all values, automatically crossing page boundaries as required. 1325func (client AppServiceEnvironmentsClient) ListComplete(ctx context.Context) (result AppServiceEnvironmentCollectionIterator, err error) { 1326 if tracing.IsEnabled() { 1327 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.List") 1328 defer func() { 1329 sc := -1 1330 if result.Response().Response.Response != nil { 1331 sc = result.page.Response().Response.Response.StatusCode 1332 } 1333 tracing.EndSpan(ctx, sc, err) 1334 }() 1335 } 1336 result.page, err = client.List(ctx) 1337 return 1338} 1339 1340// ListAppServicePlans get all App Service plans in an App Service Environment. 1341// Parameters: 1342// resourceGroupName - name of the resource group to which the resource belongs. 1343// name - name of the App Service Environment. 1344func (client AppServiceEnvironmentsClient) ListAppServicePlans(ctx context.Context, resourceGroupName string, name string) (result AppServicePlanCollectionPage, err error) { 1345 if tracing.IsEnabled() { 1346 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListAppServicePlans") 1347 defer func() { 1348 sc := -1 1349 if result.aspc.Response.Response != nil { 1350 sc = result.aspc.Response.Response.StatusCode 1351 } 1352 tracing.EndSpan(ctx, sc, err) 1353 }() 1354 } 1355 if err := validation.Validate([]validation.Validation{ 1356 {TargetValue: resourceGroupName, 1357 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1358 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1359 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 1360 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListAppServicePlans", err.Error()) 1361 } 1362 1363 result.fn = client.listAppServicePlansNextResults 1364 req, err := client.ListAppServicePlansPreparer(ctx, resourceGroupName, name) 1365 if err != nil { 1366 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListAppServicePlans", nil, "Failure preparing request") 1367 return 1368 } 1369 1370 resp, err := client.ListAppServicePlansSender(req) 1371 if err != nil { 1372 result.aspc.Response = autorest.Response{Response: resp} 1373 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListAppServicePlans", resp, "Failure sending request") 1374 return 1375 } 1376 1377 result.aspc, err = client.ListAppServicePlansResponder(resp) 1378 if err != nil { 1379 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListAppServicePlans", resp, "Failure responding to request") 1380 return 1381 } 1382 if result.aspc.hasNextLink() && result.aspc.IsEmpty() { 1383 err = result.NextWithContext(ctx) 1384 return 1385 } 1386 1387 return 1388} 1389 1390// ListAppServicePlansPreparer prepares the ListAppServicePlans request. 1391func (client AppServiceEnvironmentsClient) ListAppServicePlansPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 1392 pathParameters := map[string]interface{}{ 1393 "name": autorest.Encode("path", name), 1394 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1395 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1396 } 1397 1398 const APIVersion = "2018-02-01" 1399 queryParameters := map[string]interface{}{ 1400 "api-version": APIVersion, 1401 } 1402 1403 preparer := autorest.CreatePreparer( 1404 autorest.AsGet(), 1405 autorest.WithBaseURL(client.BaseURI), 1406 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/serverfarms", pathParameters), 1407 autorest.WithQueryParameters(queryParameters)) 1408 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1409} 1410 1411// ListAppServicePlansSender sends the ListAppServicePlans request. The method will close the 1412// http.Response Body if it receives an error. 1413func (client AppServiceEnvironmentsClient) ListAppServicePlansSender(req *http.Request) (*http.Response, error) { 1414 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1415} 1416 1417// ListAppServicePlansResponder handles the response to the ListAppServicePlans request. The method always 1418// closes the http.Response Body. 1419func (client AppServiceEnvironmentsClient) ListAppServicePlansResponder(resp *http.Response) (result AppServicePlanCollection, err error) { 1420 err = autorest.Respond( 1421 resp, 1422 azure.WithErrorUnlessStatusCode(http.StatusOK), 1423 autorest.ByUnmarshallingJSON(&result), 1424 autorest.ByClosing()) 1425 result.Response = autorest.Response{Response: resp} 1426 return 1427} 1428 1429// listAppServicePlansNextResults retrieves the next set of results, if any. 1430func (client AppServiceEnvironmentsClient) listAppServicePlansNextResults(ctx context.Context, lastResults AppServicePlanCollection) (result AppServicePlanCollection, err error) { 1431 req, err := lastResults.appServicePlanCollectionPreparer(ctx) 1432 if err != nil { 1433 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listAppServicePlansNextResults", nil, "Failure preparing next results request") 1434 } 1435 if req == nil { 1436 return 1437 } 1438 resp, err := client.ListAppServicePlansSender(req) 1439 if err != nil { 1440 result.Response = autorest.Response{Response: resp} 1441 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listAppServicePlansNextResults", resp, "Failure sending next results request") 1442 } 1443 result, err = client.ListAppServicePlansResponder(resp) 1444 if err != nil { 1445 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listAppServicePlansNextResults", resp, "Failure responding to next results request") 1446 } 1447 return 1448} 1449 1450// ListAppServicePlansComplete enumerates all values, automatically crossing page boundaries as required. 1451func (client AppServiceEnvironmentsClient) ListAppServicePlansComplete(ctx context.Context, resourceGroupName string, name string) (result AppServicePlanCollectionIterator, err error) { 1452 if tracing.IsEnabled() { 1453 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListAppServicePlans") 1454 defer func() { 1455 sc := -1 1456 if result.Response().Response.Response != nil { 1457 sc = result.page.Response().Response.Response.StatusCode 1458 } 1459 tracing.EndSpan(ctx, sc, err) 1460 }() 1461 } 1462 result.page, err = client.ListAppServicePlans(ctx, resourceGroupName, name) 1463 return 1464} 1465 1466// ListByResourceGroup get all App Service Environments in a resource group. 1467// Parameters: 1468// resourceGroupName - name of the resource group to which the resource belongs. 1469func (client AppServiceEnvironmentsClient) ListByResourceGroup(ctx context.Context, resourceGroupName string) (result AppServiceEnvironmentCollectionPage, err error) { 1470 if tracing.IsEnabled() { 1471 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListByResourceGroup") 1472 defer func() { 1473 sc := -1 1474 if result.asec.Response.Response != nil { 1475 sc = result.asec.Response.Response.StatusCode 1476 } 1477 tracing.EndSpan(ctx, sc, err) 1478 }() 1479 } 1480 if err := validation.Validate([]validation.Validation{ 1481 {TargetValue: resourceGroupName, 1482 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1483 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1484 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 1485 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListByResourceGroup", err.Error()) 1486 } 1487 1488 result.fn = client.listByResourceGroupNextResults 1489 req, err := client.ListByResourceGroupPreparer(ctx, resourceGroupName) 1490 if err != nil { 1491 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListByResourceGroup", nil, "Failure preparing request") 1492 return 1493 } 1494 1495 resp, err := client.ListByResourceGroupSender(req) 1496 if err != nil { 1497 result.asec.Response = autorest.Response{Response: resp} 1498 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListByResourceGroup", resp, "Failure sending request") 1499 return 1500 } 1501 1502 result.asec, err = client.ListByResourceGroupResponder(resp) 1503 if err != nil { 1504 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListByResourceGroup", resp, "Failure responding to request") 1505 return 1506 } 1507 if result.asec.hasNextLink() && result.asec.IsEmpty() { 1508 err = result.NextWithContext(ctx) 1509 return 1510 } 1511 1512 return 1513} 1514 1515// ListByResourceGroupPreparer prepares the ListByResourceGroup request. 1516func (client AppServiceEnvironmentsClient) ListByResourceGroupPreparer(ctx context.Context, resourceGroupName string) (*http.Request, error) { 1517 pathParameters := map[string]interface{}{ 1518 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1519 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1520 } 1521 1522 const APIVersion = "2018-02-01" 1523 queryParameters := map[string]interface{}{ 1524 "api-version": APIVersion, 1525 } 1526 1527 preparer := autorest.CreatePreparer( 1528 autorest.AsGet(), 1529 autorest.WithBaseURL(client.BaseURI), 1530 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments", pathParameters), 1531 autorest.WithQueryParameters(queryParameters)) 1532 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1533} 1534 1535// ListByResourceGroupSender sends the ListByResourceGroup request. The method will close the 1536// http.Response Body if it receives an error. 1537func (client AppServiceEnvironmentsClient) ListByResourceGroupSender(req *http.Request) (*http.Response, error) { 1538 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1539} 1540 1541// ListByResourceGroupResponder handles the response to the ListByResourceGroup request. The method always 1542// closes the http.Response Body. 1543func (client AppServiceEnvironmentsClient) ListByResourceGroupResponder(resp *http.Response) (result AppServiceEnvironmentCollection, err error) { 1544 err = autorest.Respond( 1545 resp, 1546 azure.WithErrorUnlessStatusCode(http.StatusOK), 1547 autorest.ByUnmarshallingJSON(&result), 1548 autorest.ByClosing()) 1549 result.Response = autorest.Response{Response: resp} 1550 return 1551} 1552 1553// listByResourceGroupNextResults retrieves the next set of results, if any. 1554func (client AppServiceEnvironmentsClient) listByResourceGroupNextResults(ctx context.Context, lastResults AppServiceEnvironmentCollection) (result AppServiceEnvironmentCollection, err error) { 1555 req, err := lastResults.appServiceEnvironmentCollectionPreparer(ctx) 1556 if err != nil { 1557 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listByResourceGroupNextResults", nil, "Failure preparing next results request") 1558 } 1559 if req == nil { 1560 return 1561 } 1562 resp, err := client.ListByResourceGroupSender(req) 1563 if err != nil { 1564 result.Response = autorest.Response{Response: resp} 1565 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listByResourceGroupNextResults", resp, "Failure sending next results request") 1566 } 1567 result, err = client.ListByResourceGroupResponder(resp) 1568 if err != nil { 1569 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listByResourceGroupNextResults", resp, "Failure responding to next results request") 1570 } 1571 return 1572} 1573 1574// ListByResourceGroupComplete enumerates all values, automatically crossing page boundaries as required. 1575func (client AppServiceEnvironmentsClient) ListByResourceGroupComplete(ctx context.Context, resourceGroupName string) (result AppServiceEnvironmentCollectionIterator, err error) { 1576 if tracing.IsEnabled() { 1577 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListByResourceGroup") 1578 defer func() { 1579 sc := -1 1580 if result.Response().Response.Response != nil { 1581 sc = result.page.Response().Response.Response.StatusCode 1582 } 1583 tracing.EndSpan(ctx, sc, err) 1584 }() 1585 } 1586 result.page, err = client.ListByResourceGroup(ctx, resourceGroupName) 1587 return 1588} 1589 1590// ListCapacities get the used, available, and total worker capacity an App Service Environment. 1591// Parameters: 1592// resourceGroupName - name of the resource group to which the resource belongs. 1593// name - name of the App Service Environment. 1594func (client AppServiceEnvironmentsClient) ListCapacities(ctx context.Context, resourceGroupName string, name string) (result StampCapacityCollectionPage, err error) { 1595 if tracing.IsEnabled() { 1596 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListCapacities") 1597 defer func() { 1598 sc := -1 1599 if result.scc.Response.Response != nil { 1600 sc = result.scc.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}}}}); err != nil { 1610 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListCapacities", err.Error()) 1611 } 1612 1613 result.fn = client.listCapacitiesNextResults 1614 req, err := client.ListCapacitiesPreparer(ctx, resourceGroupName, name) 1615 if err != nil { 1616 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListCapacities", nil, "Failure preparing request") 1617 return 1618 } 1619 1620 resp, err := client.ListCapacitiesSender(req) 1621 if err != nil { 1622 result.scc.Response = autorest.Response{Response: resp} 1623 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListCapacities", resp, "Failure sending request") 1624 return 1625 } 1626 1627 result.scc, err = client.ListCapacitiesResponder(resp) 1628 if err != nil { 1629 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListCapacities", resp, "Failure responding to request") 1630 return 1631 } 1632 if result.scc.hasNextLink() && result.scc.IsEmpty() { 1633 err = result.NextWithContext(ctx) 1634 return 1635 } 1636 1637 return 1638} 1639 1640// ListCapacitiesPreparer prepares the ListCapacities request. 1641func (client AppServiceEnvironmentsClient) ListCapacitiesPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 1642 pathParameters := map[string]interface{}{ 1643 "name": autorest.Encode("path", name), 1644 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1645 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1646 } 1647 1648 const APIVersion = "2018-02-01" 1649 queryParameters := map[string]interface{}{ 1650 "api-version": APIVersion, 1651 } 1652 1653 preparer := autorest.CreatePreparer( 1654 autorest.AsGet(), 1655 autorest.WithBaseURL(client.BaseURI), 1656 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/capacities/compute", pathParameters), 1657 autorest.WithQueryParameters(queryParameters)) 1658 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1659} 1660 1661// ListCapacitiesSender sends the ListCapacities request. The method will close the 1662// http.Response Body if it receives an error. 1663func (client AppServiceEnvironmentsClient) ListCapacitiesSender(req *http.Request) (*http.Response, error) { 1664 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1665} 1666 1667// ListCapacitiesResponder handles the response to the ListCapacities request. The method always 1668// closes the http.Response Body. 1669func (client AppServiceEnvironmentsClient) ListCapacitiesResponder(resp *http.Response) (result StampCapacityCollection, err error) { 1670 err = autorest.Respond( 1671 resp, 1672 azure.WithErrorUnlessStatusCode(http.StatusOK), 1673 autorest.ByUnmarshallingJSON(&result), 1674 autorest.ByClosing()) 1675 result.Response = autorest.Response{Response: resp} 1676 return 1677} 1678 1679// listCapacitiesNextResults retrieves the next set of results, if any. 1680func (client AppServiceEnvironmentsClient) listCapacitiesNextResults(ctx context.Context, lastResults StampCapacityCollection) (result StampCapacityCollection, err error) { 1681 req, err := lastResults.stampCapacityCollectionPreparer(ctx) 1682 if err != nil { 1683 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listCapacitiesNextResults", nil, "Failure preparing next results request") 1684 } 1685 if req == nil { 1686 return 1687 } 1688 resp, err := client.ListCapacitiesSender(req) 1689 if err != nil { 1690 result.Response = autorest.Response{Response: resp} 1691 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listCapacitiesNextResults", resp, "Failure sending next results request") 1692 } 1693 result, err = client.ListCapacitiesResponder(resp) 1694 if err != nil { 1695 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listCapacitiesNextResults", resp, "Failure responding to next results request") 1696 } 1697 return 1698} 1699 1700// ListCapacitiesComplete enumerates all values, automatically crossing page boundaries as required. 1701func (client AppServiceEnvironmentsClient) ListCapacitiesComplete(ctx context.Context, resourceGroupName string, name string) (result StampCapacityCollectionIterator, err error) { 1702 if tracing.IsEnabled() { 1703 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListCapacities") 1704 defer func() { 1705 sc := -1 1706 if result.Response().Response.Response != nil { 1707 sc = result.page.Response().Response.Response.StatusCode 1708 } 1709 tracing.EndSpan(ctx, sc, err) 1710 }() 1711 } 1712 result.page, err = client.ListCapacities(ctx, resourceGroupName, name) 1713 return 1714} 1715 1716// ListDiagnostics get diagnostic information for an App Service Environment. 1717// Parameters: 1718// resourceGroupName - name of the resource group to which the resource belongs. 1719// name - name of the App Service Environment. 1720func (client AppServiceEnvironmentsClient) ListDiagnostics(ctx context.Context, resourceGroupName string, name string) (result ListHostingEnvironmentDiagnostics, err error) { 1721 if tracing.IsEnabled() { 1722 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListDiagnostics") 1723 defer func() { 1724 sc := -1 1725 if result.Response.Response != nil { 1726 sc = result.Response.Response.StatusCode 1727 } 1728 tracing.EndSpan(ctx, sc, err) 1729 }() 1730 } 1731 if err := validation.Validate([]validation.Validation{ 1732 {TargetValue: resourceGroupName, 1733 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1734 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1735 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 1736 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListDiagnostics", err.Error()) 1737 } 1738 1739 req, err := client.ListDiagnosticsPreparer(ctx, resourceGroupName, name) 1740 if err != nil { 1741 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListDiagnostics", nil, "Failure preparing request") 1742 return 1743 } 1744 1745 resp, err := client.ListDiagnosticsSender(req) 1746 if err != nil { 1747 result.Response = autorest.Response{Response: resp} 1748 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListDiagnostics", resp, "Failure sending request") 1749 return 1750 } 1751 1752 result, err = client.ListDiagnosticsResponder(resp) 1753 if err != nil { 1754 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListDiagnostics", resp, "Failure responding to request") 1755 return 1756 } 1757 1758 return 1759} 1760 1761// ListDiagnosticsPreparer prepares the ListDiagnostics request. 1762func (client AppServiceEnvironmentsClient) ListDiagnosticsPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 1763 pathParameters := map[string]interface{}{ 1764 "name": autorest.Encode("path", name), 1765 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1766 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1767 } 1768 1769 const APIVersion = "2018-02-01" 1770 queryParameters := map[string]interface{}{ 1771 "api-version": APIVersion, 1772 } 1773 1774 preparer := autorest.CreatePreparer( 1775 autorest.AsGet(), 1776 autorest.WithBaseURL(client.BaseURI), 1777 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/diagnostics", pathParameters), 1778 autorest.WithQueryParameters(queryParameters)) 1779 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1780} 1781 1782// ListDiagnosticsSender sends the ListDiagnostics request. The method will close the 1783// http.Response Body if it receives an error. 1784func (client AppServiceEnvironmentsClient) ListDiagnosticsSender(req *http.Request) (*http.Response, error) { 1785 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1786} 1787 1788// ListDiagnosticsResponder handles the response to the ListDiagnostics request. The method always 1789// closes the http.Response Body. 1790func (client AppServiceEnvironmentsClient) ListDiagnosticsResponder(resp *http.Response) (result ListHostingEnvironmentDiagnostics, err error) { 1791 err = autorest.Respond( 1792 resp, 1793 azure.WithErrorUnlessStatusCode(http.StatusOK), 1794 autorest.ByUnmarshallingJSON(&result.Value), 1795 autorest.ByClosing()) 1796 result.Response = autorest.Response{Response: resp} 1797 return 1798} 1799 1800// ListMetricDefinitions get global metric definitions of an App Service Environment. 1801// Parameters: 1802// resourceGroupName - name of the resource group to which the resource belongs. 1803// name - name of the App Service Environment. 1804func (client AppServiceEnvironmentsClient) ListMetricDefinitions(ctx context.Context, resourceGroupName string, name string) (result MetricDefinition, err error) { 1805 if tracing.IsEnabled() { 1806 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMetricDefinitions") 1807 defer func() { 1808 sc := -1 1809 if result.Response.Response != nil { 1810 sc = result.Response.Response.StatusCode 1811 } 1812 tracing.EndSpan(ctx, sc, err) 1813 }() 1814 } 1815 if err := validation.Validate([]validation.Validation{ 1816 {TargetValue: resourceGroupName, 1817 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1818 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1819 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 1820 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListMetricDefinitions", err.Error()) 1821 } 1822 1823 req, err := client.ListMetricDefinitionsPreparer(ctx, resourceGroupName, name) 1824 if err != nil { 1825 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMetricDefinitions", nil, "Failure preparing request") 1826 return 1827 } 1828 1829 resp, err := client.ListMetricDefinitionsSender(req) 1830 if err != nil { 1831 result.Response = autorest.Response{Response: resp} 1832 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMetricDefinitions", resp, "Failure sending request") 1833 return 1834 } 1835 1836 result, err = client.ListMetricDefinitionsResponder(resp) 1837 if err != nil { 1838 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMetricDefinitions", resp, "Failure responding to request") 1839 return 1840 } 1841 1842 return 1843} 1844 1845// ListMetricDefinitionsPreparer prepares the ListMetricDefinitions request. 1846func (client AppServiceEnvironmentsClient) ListMetricDefinitionsPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 1847 pathParameters := map[string]interface{}{ 1848 "name": autorest.Encode("path", name), 1849 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1850 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1851 } 1852 1853 const APIVersion = "2018-02-01" 1854 queryParameters := map[string]interface{}{ 1855 "api-version": APIVersion, 1856 } 1857 1858 preparer := autorest.CreatePreparer( 1859 autorest.AsGet(), 1860 autorest.WithBaseURL(client.BaseURI), 1861 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/metricdefinitions", pathParameters), 1862 autorest.WithQueryParameters(queryParameters)) 1863 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1864} 1865 1866// ListMetricDefinitionsSender sends the ListMetricDefinitions request. The method will close the 1867// http.Response Body if it receives an error. 1868func (client AppServiceEnvironmentsClient) ListMetricDefinitionsSender(req *http.Request) (*http.Response, error) { 1869 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1870} 1871 1872// ListMetricDefinitionsResponder handles the response to the ListMetricDefinitions request. The method always 1873// closes the http.Response Body. 1874func (client AppServiceEnvironmentsClient) ListMetricDefinitionsResponder(resp *http.Response) (result MetricDefinition, err error) { 1875 err = autorest.Respond( 1876 resp, 1877 azure.WithErrorUnlessStatusCode(http.StatusOK), 1878 autorest.ByUnmarshallingJSON(&result), 1879 autorest.ByClosing()) 1880 result.Response = autorest.Response{Response: resp} 1881 return 1882} 1883 1884// ListMetrics get global metrics of an App Service Environment. 1885// Parameters: 1886// resourceGroupName - name of the resource group to which the resource belongs. 1887// name - name of the App Service Environment. 1888// details - specify <code>true</code> to include instance details. The default is <code>false</code>. 1889// filter - return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: 1890// $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and 1891// endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'. 1892func (client AppServiceEnvironmentsClient) ListMetrics(ctx context.Context, resourceGroupName string, name string, details *bool, filter string) (result ResourceMetricCollectionPage, err error) { 1893 if tracing.IsEnabled() { 1894 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMetrics") 1895 defer func() { 1896 sc := -1 1897 if result.rmc.Response.Response != nil { 1898 sc = result.rmc.Response.Response.StatusCode 1899 } 1900 tracing.EndSpan(ctx, sc, err) 1901 }() 1902 } 1903 if err := validation.Validate([]validation.Validation{ 1904 {TargetValue: resourceGroupName, 1905 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 1906 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 1907 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 1908 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListMetrics", err.Error()) 1909 } 1910 1911 result.fn = client.listMetricsNextResults 1912 req, err := client.ListMetricsPreparer(ctx, resourceGroupName, name, details, filter) 1913 if err != nil { 1914 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMetrics", nil, "Failure preparing request") 1915 return 1916 } 1917 1918 resp, err := client.ListMetricsSender(req) 1919 if err != nil { 1920 result.rmc.Response = autorest.Response{Response: resp} 1921 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMetrics", resp, "Failure sending request") 1922 return 1923 } 1924 1925 result.rmc, err = client.ListMetricsResponder(resp) 1926 if err != nil { 1927 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMetrics", resp, "Failure responding to request") 1928 return 1929 } 1930 if result.rmc.hasNextLink() && result.rmc.IsEmpty() { 1931 err = result.NextWithContext(ctx) 1932 return 1933 } 1934 1935 return 1936} 1937 1938// ListMetricsPreparer prepares the ListMetrics request. 1939func (client AppServiceEnvironmentsClient) ListMetricsPreparer(ctx context.Context, resourceGroupName string, name string, details *bool, filter string) (*http.Request, error) { 1940 pathParameters := map[string]interface{}{ 1941 "name": autorest.Encode("path", name), 1942 "resourceGroupName": autorest.Encode("path", resourceGroupName), 1943 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 1944 } 1945 1946 const APIVersion = "2018-02-01" 1947 queryParameters := map[string]interface{}{ 1948 "api-version": APIVersion, 1949 } 1950 if details != nil { 1951 queryParameters["details"] = autorest.Encode("query", *details) 1952 } 1953 if len(filter) > 0 { 1954 queryParameters["$filter"] = filter 1955 } 1956 1957 preparer := autorest.CreatePreparer( 1958 autorest.AsGet(), 1959 autorest.WithBaseURL(client.BaseURI), 1960 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/metrics", pathParameters), 1961 autorest.WithQueryParameters(queryParameters)) 1962 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 1963} 1964 1965// ListMetricsSender sends the ListMetrics request. The method will close the 1966// http.Response Body if it receives an error. 1967func (client AppServiceEnvironmentsClient) ListMetricsSender(req *http.Request) (*http.Response, error) { 1968 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 1969} 1970 1971// ListMetricsResponder handles the response to the ListMetrics request. The method always 1972// closes the http.Response Body. 1973func (client AppServiceEnvironmentsClient) ListMetricsResponder(resp *http.Response) (result ResourceMetricCollection, err error) { 1974 err = autorest.Respond( 1975 resp, 1976 azure.WithErrorUnlessStatusCode(http.StatusOK), 1977 autorest.ByUnmarshallingJSON(&result), 1978 autorest.ByClosing()) 1979 result.Response = autorest.Response{Response: resp} 1980 return 1981} 1982 1983// listMetricsNextResults retrieves the next set of results, if any. 1984func (client AppServiceEnvironmentsClient) listMetricsNextResults(ctx context.Context, lastResults ResourceMetricCollection) (result ResourceMetricCollection, err error) { 1985 req, err := lastResults.resourceMetricCollectionPreparer(ctx) 1986 if err != nil { 1987 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMetricsNextResults", nil, "Failure preparing next results request") 1988 } 1989 if req == nil { 1990 return 1991 } 1992 resp, err := client.ListMetricsSender(req) 1993 if err != nil { 1994 result.Response = autorest.Response{Response: resp} 1995 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMetricsNextResults", resp, "Failure sending next results request") 1996 } 1997 result, err = client.ListMetricsResponder(resp) 1998 if err != nil { 1999 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMetricsNextResults", resp, "Failure responding to next results request") 2000 } 2001 return 2002} 2003 2004// ListMetricsComplete enumerates all values, automatically crossing page boundaries as required. 2005func (client AppServiceEnvironmentsClient) ListMetricsComplete(ctx context.Context, resourceGroupName string, name string, details *bool, filter string) (result ResourceMetricCollectionIterator, err error) { 2006 if tracing.IsEnabled() { 2007 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMetrics") 2008 defer func() { 2009 sc := -1 2010 if result.Response().Response.Response != nil { 2011 sc = result.page.Response().Response.Response.StatusCode 2012 } 2013 tracing.EndSpan(ctx, sc, err) 2014 }() 2015 } 2016 result.page, err = client.ListMetrics(ctx, resourceGroupName, name, details, filter) 2017 return 2018} 2019 2020// ListMultiRoleMetricDefinitions get metric definitions for a multi-role pool of an App Service Environment. 2021// Parameters: 2022// resourceGroupName - name of the resource group to which the resource belongs. 2023// name - name of the App Service Environment. 2024func (client AppServiceEnvironmentsClient) ListMultiRoleMetricDefinitions(ctx context.Context, resourceGroupName string, name string) (result ResourceMetricDefinitionCollectionPage, err error) { 2025 if tracing.IsEnabled() { 2026 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMultiRoleMetricDefinitions") 2027 defer func() { 2028 sc := -1 2029 if result.rmdc.Response.Response != nil { 2030 sc = result.rmdc.Response.Response.StatusCode 2031 } 2032 tracing.EndSpan(ctx, sc, err) 2033 }() 2034 } 2035 if err := validation.Validate([]validation.Validation{ 2036 {TargetValue: resourceGroupName, 2037 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 2038 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 2039 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 2040 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListMultiRoleMetricDefinitions", err.Error()) 2041 } 2042 2043 result.fn = client.listMultiRoleMetricDefinitionsNextResults 2044 req, err := client.ListMultiRoleMetricDefinitionsPreparer(ctx, resourceGroupName, name) 2045 if err != nil { 2046 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRoleMetricDefinitions", nil, "Failure preparing request") 2047 return 2048 } 2049 2050 resp, err := client.ListMultiRoleMetricDefinitionsSender(req) 2051 if err != nil { 2052 result.rmdc.Response = autorest.Response{Response: resp} 2053 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRoleMetricDefinitions", resp, "Failure sending request") 2054 return 2055 } 2056 2057 result.rmdc, err = client.ListMultiRoleMetricDefinitionsResponder(resp) 2058 if err != nil { 2059 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRoleMetricDefinitions", resp, "Failure responding to request") 2060 return 2061 } 2062 if result.rmdc.hasNextLink() && result.rmdc.IsEmpty() { 2063 err = result.NextWithContext(ctx) 2064 return 2065 } 2066 2067 return 2068} 2069 2070// ListMultiRoleMetricDefinitionsPreparer prepares the ListMultiRoleMetricDefinitions request. 2071func (client AppServiceEnvironmentsClient) ListMultiRoleMetricDefinitionsPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 2072 pathParameters := map[string]interface{}{ 2073 "name": autorest.Encode("path", name), 2074 "resourceGroupName": autorest.Encode("path", resourceGroupName), 2075 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 2076 } 2077 2078 const APIVersion = "2018-02-01" 2079 queryParameters := map[string]interface{}{ 2080 "api-version": APIVersion, 2081 } 2082 2083 preparer := autorest.CreatePreparer( 2084 autorest.AsGet(), 2085 autorest.WithBaseURL(client.BaseURI), 2086 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/metricdefinitions", pathParameters), 2087 autorest.WithQueryParameters(queryParameters)) 2088 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 2089} 2090 2091// ListMultiRoleMetricDefinitionsSender sends the ListMultiRoleMetricDefinitions request. The method will close the 2092// http.Response Body if it receives an error. 2093func (client AppServiceEnvironmentsClient) ListMultiRoleMetricDefinitionsSender(req *http.Request) (*http.Response, error) { 2094 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 2095} 2096 2097// ListMultiRoleMetricDefinitionsResponder handles the response to the ListMultiRoleMetricDefinitions request. The method always 2098// closes the http.Response Body. 2099func (client AppServiceEnvironmentsClient) ListMultiRoleMetricDefinitionsResponder(resp *http.Response) (result ResourceMetricDefinitionCollection, err error) { 2100 err = autorest.Respond( 2101 resp, 2102 azure.WithErrorUnlessStatusCode(http.StatusOK), 2103 autorest.ByUnmarshallingJSON(&result), 2104 autorest.ByClosing()) 2105 result.Response = autorest.Response{Response: resp} 2106 return 2107} 2108 2109// listMultiRoleMetricDefinitionsNextResults retrieves the next set of results, if any. 2110func (client AppServiceEnvironmentsClient) listMultiRoleMetricDefinitionsNextResults(ctx context.Context, lastResults ResourceMetricDefinitionCollection) (result ResourceMetricDefinitionCollection, err error) { 2111 req, err := lastResults.resourceMetricDefinitionCollectionPreparer(ctx) 2112 if err != nil { 2113 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRoleMetricDefinitionsNextResults", nil, "Failure preparing next results request") 2114 } 2115 if req == nil { 2116 return 2117 } 2118 resp, err := client.ListMultiRoleMetricDefinitionsSender(req) 2119 if err != nil { 2120 result.Response = autorest.Response{Response: resp} 2121 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRoleMetricDefinitionsNextResults", resp, "Failure sending next results request") 2122 } 2123 result, err = client.ListMultiRoleMetricDefinitionsResponder(resp) 2124 if err != nil { 2125 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRoleMetricDefinitionsNextResults", resp, "Failure responding to next results request") 2126 } 2127 return 2128} 2129 2130// ListMultiRoleMetricDefinitionsComplete enumerates all values, automatically crossing page boundaries as required. 2131func (client AppServiceEnvironmentsClient) ListMultiRoleMetricDefinitionsComplete(ctx context.Context, resourceGroupName string, name string) (result ResourceMetricDefinitionCollectionIterator, err error) { 2132 if tracing.IsEnabled() { 2133 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMultiRoleMetricDefinitions") 2134 defer func() { 2135 sc := -1 2136 if result.Response().Response.Response != nil { 2137 sc = result.page.Response().Response.Response.StatusCode 2138 } 2139 tracing.EndSpan(ctx, sc, err) 2140 }() 2141 } 2142 result.page, err = client.ListMultiRoleMetricDefinitions(ctx, resourceGroupName, name) 2143 return 2144} 2145 2146// ListMultiRoleMetrics get metrics for a multi-role pool of an App Service Environment. 2147// Parameters: 2148// resourceGroupName - name of the resource group to which the resource belongs. 2149// name - name of the App Service Environment. 2150// startTime - beginning time of the metrics query. 2151// endTime - end time of the metrics query. 2152// timeGrain - time granularity of the metrics query. 2153// details - specify <code>true</code> to include instance details. The default is <code>false</code>. 2154// filter - return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: 2155// $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and 2156// endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'. 2157func (client AppServiceEnvironmentsClient) ListMultiRoleMetrics(ctx context.Context, resourceGroupName string, name string, startTime string, endTime string, timeGrain string, details *bool, filter string) (result ResourceMetricCollectionPage, err error) { 2158 if tracing.IsEnabled() { 2159 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMultiRoleMetrics") 2160 defer func() { 2161 sc := -1 2162 if result.rmc.Response.Response != nil { 2163 sc = result.rmc.Response.Response.StatusCode 2164 } 2165 tracing.EndSpan(ctx, sc, err) 2166 }() 2167 } 2168 if err := validation.Validate([]validation.Validation{ 2169 {TargetValue: resourceGroupName, 2170 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 2171 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 2172 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 2173 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListMultiRoleMetrics", err.Error()) 2174 } 2175 2176 result.fn = client.listMultiRoleMetricsNextResults 2177 req, err := client.ListMultiRoleMetricsPreparer(ctx, resourceGroupName, name, startTime, endTime, timeGrain, details, filter) 2178 if err != nil { 2179 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRoleMetrics", nil, "Failure preparing request") 2180 return 2181 } 2182 2183 resp, err := client.ListMultiRoleMetricsSender(req) 2184 if err != nil { 2185 result.rmc.Response = autorest.Response{Response: resp} 2186 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRoleMetrics", resp, "Failure sending request") 2187 return 2188 } 2189 2190 result.rmc, err = client.ListMultiRoleMetricsResponder(resp) 2191 if err != nil { 2192 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRoleMetrics", resp, "Failure responding to request") 2193 return 2194 } 2195 if result.rmc.hasNextLink() && result.rmc.IsEmpty() { 2196 err = result.NextWithContext(ctx) 2197 return 2198 } 2199 2200 return 2201} 2202 2203// ListMultiRoleMetricsPreparer prepares the ListMultiRoleMetrics request. 2204func (client AppServiceEnvironmentsClient) ListMultiRoleMetricsPreparer(ctx context.Context, resourceGroupName string, name string, startTime string, endTime string, timeGrain string, details *bool, filter string) (*http.Request, error) { 2205 pathParameters := map[string]interface{}{ 2206 "name": autorest.Encode("path", name), 2207 "resourceGroupName": autorest.Encode("path", resourceGroupName), 2208 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 2209 } 2210 2211 const APIVersion = "2018-02-01" 2212 queryParameters := map[string]interface{}{ 2213 "api-version": APIVersion, 2214 } 2215 if len(startTime) > 0 { 2216 queryParameters["startTime"] = autorest.Encode("query", startTime) 2217 } 2218 if len(endTime) > 0 { 2219 queryParameters["endTime"] = autorest.Encode("query", endTime) 2220 } 2221 if len(timeGrain) > 0 { 2222 queryParameters["timeGrain"] = autorest.Encode("query", timeGrain) 2223 } 2224 if details != nil { 2225 queryParameters["details"] = autorest.Encode("query", *details) 2226 } 2227 if len(filter) > 0 { 2228 queryParameters["$filter"] = filter 2229 } 2230 2231 preparer := autorest.CreatePreparer( 2232 autorest.AsGet(), 2233 autorest.WithBaseURL(client.BaseURI), 2234 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/metrics", pathParameters), 2235 autorest.WithQueryParameters(queryParameters)) 2236 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 2237} 2238 2239// ListMultiRoleMetricsSender sends the ListMultiRoleMetrics request. The method will close the 2240// http.Response Body if it receives an error. 2241func (client AppServiceEnvironmentsClient) ListMultiRoleMetricsSender(req *http.Request) (*http.Response, error) { 2242 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 2243} 2244 2245// ListMultiRoleMetricsResponder handles the response to the ListMultiRoleMetrics request. The method always 2246// closes the http.Response Body. 2247func (client AppServiceEnvironmentsClient) ListMultiRoleMetricsResponder(resp *http.Response) (result ResourceMetricCollection, err error) { 2248 err = autorest.Respond( 2249 resp, 2250 azure.WithErrorUnlessStatusCode(http.StatusOK), 2251 autorest.ByUnmarshallingJSON(&result), 2252 autorest.ByClosing()) 2253 result.Response = autorest.Response{Response: resp} 2254 return 2255} 2256 2257// listMultiRoleMetricsNextResults retrieves the next set of results, if any. 2258func (client AppServiceEnvironmentsClient) listMultiRoleMetricsNextResults(ctx context.Context, lastResults ResourceMetricCollection) (result ResourceMetricCollection, err error) { 2259 req, err := lastResults.resourceMetricCollectionPreparer(ctx) 2260 if err != nil { 2261 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRoleMetricsNextResults", nil, "Failure preparing next results request") 2262 } 2263 if req == nil { 2264 return 2265 } 2266 resp, err := client.ListMultiRoleMetricsSender(req) 2267 if err != nil { 2268 result.Response = autorest.Response{Response: resp} 2269 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRoleMetricsNextResults", resp, "Failure sending next results request") 2270 } 2271 result, err = client.ListMultiRoleMetricsResponder(resp) 2272 if err != nil { 2273 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRoleMetricsNextResults", resp, "Failure responding to next results request") 2274 } 2275 return 2276} 2277 2278// ListMultiRoleMetricsComplete enumerates all values, automatically crossing page boundaries as required. 2279func (client AppServiceEnvironmentsClient) ListMultiRoleMetricsComplete(ctx context.Context, resourceGroupName string, name string, startTime string, endTime string, timeGrain string, details *bool, filter string) (result ResourceMetricCollectionIterator, err error) { 2280 if tracing.IsEnabled() { 2281 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMultiRoleMetrics") 2282 defer func() { 2283 sc := -1 2284 if result.Response().Response.Response != nil { 2285 sc = result.page.Response().Response.Response.StatusCode 2286 } 2287 tracing.EndSpan(ctx, sc, err) 2288 }() 2289 } 2290 result.page, err = client.ListMultiRoleMetrics(ctx, resourceGroupName, name, startTime, endTime, timeGrain, details, filter) 2291 return 2292} 2293 2294// ListMultiRolePoolInstanceMetricDefinitions get metric definitions for a specific instance of a multi-role pool of an 2295// App Service Environment. 2296// Parameters: 2297// resourceGroupName - name of the resource group to which the resource belongs. 2298// name - name of the App Service Environment. 2299// instance - name of the instance in the multi-role pool. 2300func (client AppServiceEnvironmentsClient) ListMultiRolePoolInstanceMetricDefinitions(ctx context.Context, resourceGroupName string, name string, instance string) (result ResourceMetricDefinitionCollectionPage, err error) { 2301 if tracing.IsEnabled() { 2302 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMultiRolePoolInstanceMetricDefinitions") 2303 defer func() { 2304 sc := -1 2305 if result.rmdc.Response.Response != nil { 2306 sc = result.rmdc.Response.Response.StatusCode 2307 } 2308 tracing.EndSpan(ctx, sc, err) 2309 }() 2310 } 2311 if err := validation.Validate([]validation.Validation{ 2312 {TargetValue: resourceGroupName, 2313 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 2314 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 2315 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 2316 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListMultiRolePoolInstanceMetricDefinitions", err.Error()) 2317 } 2318 2319 result.fn = client.listMultiRolePoolInstanceMetricDefinitionsNextResults 2320 req, err := client.ListMultiRolePoolInstanceMetricDefinitionsPreparer(ctx, resourceGroupName, name, instance) 2321 if err != nil { 2322 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRolePoolInstanceMetricDefinitions", nil, "Failure preparing request") 2323 return 2324 } 2325 2326 resp, err := client.ListMultiRolePoolInstanceMetricDefinitionsSender(req) 2327 if err != nil { 2328 result.rmdc.Response = autorest.Response{Response: resp} 2329 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRolePoolInstanceMetricDefinitions", resp, "Failure sending request") 2330 return 2331 } 2332 2333 result.rmdc, err = client.ListMultiRolePoolInstanceMetricDefinitionsResponder(resp) 2334 if err != nil { 2335 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRolePoolInstanceMetricDefinitions", resp, "Failure responding to request") 2336 return 2337 } 2338 if result.rmdc.hasNextLink() && result.rmdc.IsEmpty() { 2339 err = result.NextWithContext(ctx) 2340 return 2341 } 2342 2343 return 2344} 2345 2346// ListMultiRolePoolInstanceMetricDefinitionsPreparer prepares the ListMultiRolePoolInstanceMetricDefinitions request. 2347func (client AppServiceEnvironmentsClient) ListMultiRolePoolInstanceMetricDefinitionsPreparer(ctx context.Context, resourceGroupName string, name string, instance string) (*http.Request, error) { 2348 pathParameters := map[string]interface{}{ 2349 "instance": autorest.Encode("path", instance), 2350 "name": autorest.Encode("path", name), 2351 "resourceGroupName": autorest.Encode("path", resourceGroupName), 2352 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 2353 } 2354 2355 const APIVersion = "2018-02-01" 2356 queryParameters := map[string]interface{}{ 2357 "api-version": APIVersion, 2358 } 2359 2360 preparer := autorest.CreatePreparer( 2361 autorest.AsGet(), 2362 autorest.WithBaseURL(client.BaseURI), 2363 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/instances/{instance}/metricdefinitions", pathParameters), 2364 autorest.WithQueryParameters(queryParameters)) 2365 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 2366} 2367 2368// ListMultiRolePoolInstanceMetricDefinitionsSender sends the ListMultiRolePoolInstanceMetricDefinitions request. The method will close the 2369// http.Response Body if it receives an error. 2370func (client AppServiceEnvironmentsClient) ListMultiRolePoolInstanceMetricDefinitionsSender(req *http.Request) (*http.Response, error) { 2371 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 2372} 2373 2374// ListMultiRolePoolInstanceMetricDefinitionsResponder handles the response to the ListMultiRolePoolInstanceMetricDefinitions request. The method always 2375// closes the http.Response Body. 2376func (client AppServiceEnvironmentsClient) ListMultiRolePoolInstanceMetricDefinitionsResponder(resp *http.Response) (result ResourceMetricDefinitionCollection, err error) { 2377 err = autorest.Respond( 2378 resp, 2379 azure.WithErrorUnlessStatusCode(http.StatusOK), 2380 autorest.ByUnmarshallingJSON(&result), 2381 autorest.ByClosing()) 2382 result.Response = autorest.Response{Response: resp} 2383 return 2384} 2385 2386// listMultiRolePoolInstanceMetricDefinitionsNextResults retrieves the next set of results, if any. 2387func (client AppServiceEnvironmentsClient) listMultiRolePoolInstanceMetricDefinitionsNextResults(ctx context.Context, lastResults ResourceMetricDefinitionCollection) (result ResourceMetricDefinitionCollection, err error) { 2388 req, err := lastResults.resourceMetricDefinitionCollectionPreparer(ctx) 2389 if err != nil { 2390 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRolePoolInstanceMetricDefinitionsNextResults", nil, "Failure preparing next results request") 2391 } 2392 if req == nil { 2393 return 2394 } 2395 resp, err := client.ListMultiRolePoolInstanceMetricDefinitionsSender(req) 2396 if err != nil { 2397 result.Response = autorest.Response{Response: resp} 2398 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRolePoolInstanceMetricDefinitionsNextResults", resp, "Failure sending next results request") 2399 } 2400 result, err = client.ListMultiRolePoolInstanceMetricDefinitionsResponder(resp) 2401 if err != nil { 2402 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRolePoolInstanceMetricDefinitionsNextResults", resp, "Failure responding to next results request") 2403 } 2404 return 2405} 2406 2407// ListMultiRolePoolInstanceMetricDefinitionsComplete enumerates all values, automatically crossing page boundaries as required. 2408func (client AppServiceEnvironmentsClient) ListMultiRolePoolInstanceMetricDefinitionsComplete(ctx context.Context, resourceGroupName string, name string, instance string) (result ResourceMetricDefinitionCollectionIterator, err error) { 2409 if tracing.IsEnabled() { 2410 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMultiRolePoolInstanceMetricDefinitions") 2411 defer func() { 2412 sc := -1 2413 if result.Response().Response.Response != nil { 2414 sc = result.page.Response().Response.Response.StatusCode 2415 } 2416 tracing.EndSpan(ctx, sc, err) 2417 }() 2418 } 2419 result.page, err = client.ListMultiRolePoolInstanceMetricDefinitions(ctx, resourceGroupName, name, instance) 2420 return 2421} 2422 2423// ListMultiRolePoolInstanceMetrics get metrics for a specific instance of a multi-role pool of an App Service 2424// Environment. 2425// Parameters: 2426// resourceGroupName - name of the resource group to which the resource belongs. 2427// name - name of the App Service Environment. 2428// instance - name of the instance in the multi-role pool. 2429// details - specify <code>true</code> to include instance details. The default is <code>false</code>. 2430func (client AppServiceEnvironmentsClient) ListMultiRolePoolInstanceMetrics(ctx context.Context, resourceGroupName string, name string, instance string, details *bool) (result ResourceMetricCollectionPage, err error) { 2431 if tracing.IsEnabled() { 2432 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMultiRolePoolInstanceMetrics") 2433 defer func() { 2434 sc := -1 2435 if result.rmc.Response.Response != nil { 2436 sc = result.rmc.Response.Response.StatusCode 2437 } 2438 tracing.EndSpan(ctx, sc, err) 2439 }() 2440 } 2441 if err := validation.Validate([]validation.Validation{ 2442 {TargetValue: resourceGroupName, 2443 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 2444 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 2445 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 2446 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListMultiRolePoolInstanceMetrics", err.Error()) 2447 } 2448 2449 result.fn = client.listMultiRolePoolInstanceMetricsNextResults 2450 req, err := client.ListMultiRolePoolInstanceMetricsPreparer(ctx, resourceGroupName, name, instance, details) 2451 if err != nil { 2452 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRolePoolInstanceMetrics", nil, "Failure preparing request") 2453 return 2454 } 2455 2456 resp, err := client.ListMultiRolePoolInstanceMetricsSender(req) 2457 if err != nil { 2458 result.rmc.Response = autorest.Response{Response: resp} 2459 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRolePoolInstanceMetrics", resp, "Failure sending request") 2460 return 2461 } 2462 2463 result.rmc, err = client.ListMultiRolePoolInstanceMetricsResponder(resp) 2464 if err != nil { 2465 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRolePoolInstanceMetrics", resp, "Failure responding to request") 2466 return 2467 } 2468 if result.rmc.hasNextLink() && result.rmc.IsEmpty() { 2469 err = result.NextWithContext(ctx) 2470 return 2471 } 2472 2473 return 2474} 2475 2476// ListMultiRolePoolInstanceMetricsPreparer prepares the ListMultiRolePoolInstanceMetrics request. 2477func (client AppServiceEnvironmentsClient) ListMultiRolePoolInstanceMetricsPreparer(ctx context.Context, resourceGroupName string, name string, instance string, details *bool) (*http.Request, error) { 2478 pathParameters := map[string]interface{}{ 2479 "instance": autorest.Encode("path", instance), 2480 "name": autorest.Encode("path", name), 2481 "resourceGroupName": autorest.Encode("path", resourceGroupName), 2482 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 2483 } 2484 2485 const APIVersion = "2018-02-01" 2486 queryParameters := map[string]interface{}{ 2487 "api-version": APIVersion, 2488 } 2489 if details != nil { 2490 queryParameters["details"] = autorest.Encode("query", *details) 2491 } 2492 2493 preparer := autorest.CreatePreparer( 2494 autorest.AsGet(), 2495 autorest.WithBaseURL(client.BaseURI), 2496 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/instances/{instance}/metrics", pathParameters), 2497 autorest.WithQueryParameters(queryParameters)) 2498 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 2499} 2500 2501// ListMultiRolePoolInstanceMetricsSender sends the ListMultiRolePoolInstanceMetrics request. The method will close the 2502// http.Response Body if it receives an error. 2503func (client AppServiceEnvironmentsClient) ListMultiRolePoolInstanceMetricsSender(req *http.Request) (*http.Response, error) { 2504 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 2505} 2506 2507// ListMultiRolePoolInstanceMetricsResponder handles the response to the ListMultiRolePoolInstanceMetrics request. The method always 2508// closes the http.Response Body. 2509func (client AppServiceEnvironmentsClient) ListMultiRolePoolInstanceMetricsResponder(resp *http.Response) (result ResourceMetricCollection, err error) { 2510 err = autorest.Respond( 2511 resp, 2512 azure.WithErrorUnlessStatusCode(http.StatusOK), 2513 autorest.ByUnmarshallingJSON(&result), 2514 autorest.ByClosing()) 2515 result.Response = autorest.Response{Response: resp} 2516 return 2517} 2518 2519// listMultiRolePoolInstanceMetricsNextResults retrieves the next set of results, if any. 2520func (client AppServiceEnvironmentsClient) listMultiRolePoolInstanceMetricsNextResults(ctx context.Context, lastResults ResourceMetricCollection) (result ResourceMetricCollection, err error) { 2521 req, err := lastResults.resourceMetricCollectionPreparer(ctx) 2522 if err != nil { 2523 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRolePoolInstanceMetricsNextResults", nil, "Failure preparing next results request") 2524 } 2525 if req == nil { 2526 return 2527 } 2528 resp, err := client.ListMultiRolePoolInstanceMetricsSender(req) 2529 if err != nil { 2530 result.Response = autorest.Response{Response: resp} 2531 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRolePoolInstanceMetricsNextResults", resp, "Failure sending next results request") 2532 } 2533 result, err = client.ListMultiRolePoolInstanceMetricsResponder(resp) 2534 if err != nil { 2535 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRolePoolInstanceMetricsNextResults", resp, "Failure responding to next results request") 2536 } 2537 return 2538} 2539 2540// ListMultiRolePoolInstanceMetricsComplete enumerates all values, automatically crossing page boundaries as required. 2541func (client AppServiceEnvironmentsClient) ListMultiRolePoolInstanceMetricsComplete(ctx context.Context, resourceGroupName string, name string, instance string, details *bool) (result ResourceMetricCollectionIterator, err error) { 2542 if tracing.IsEnabled() { 2543 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMultiRolePoolInstanceMetrics") 2544 defer func() { 2545 sc := -1 2546 if result.Response().Response.Response != nil { 2547 sc = result.page.Response().Response.Response.StatusCode 2548 } 2549 tracing.EndSpan(ctx, sc, err) 2550 }() 2551 } 2552 result.page, err = client.ListMultiRolePoolInstanceMetrics(ctx, resourceGroupName, name, instance, details) 2553 return 2554} 2555 2556// ListMultiRolePools get all multi-role pools. 2557// Parameters: 2558// resourceGroupName - name of the resource group to which the resource belongs. 2559// name - name of the App Service Environment. 2560func (client AppServiceEnvironmentsClient) ListMultiRolePools(ctx context.Context, resourceGroupName string, name string) (result WorkerPoolCollectionPage, err error) { 2561 if tracing.IsEnabled() { 2562 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMultiRolePools") 2563 defer func() { 2564 sc := -1 2565 if result.wpc.Response.Response != nil { 2566 sc = result.wpc.Response.Response.StatusCode 2567 } 2568 tracing.EndSpan(ctx, sc, err) 2569 }() 2570 } 2571 if err := validation.Validate([]validation.Validation{ 2572 {TargetValue: resourceGroupName, 2573 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 2574 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 2575 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 2576 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListMultiRolePools", err.Error()) 2577 } 2578 2579 result.fn = client.listMultiRolePoolsNextResults 2580 req, err := client.ListMultiRolePoolsPreparer(ctx, resourceGroupName, name) 2581 if err != nil { 2582 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRolePools", nil, "Failure preparing request") 2583 return 2584 } 2585 2586 resp, err := client.ListMultiRolePoolsSender(req) 2587 if err != nil { 2588 result.wpc.Response = autorest.Response{Response: resp} 2589 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRolePools", resp, "Failure sending request") 2590 return 2591 } 2592 2593 result.wpc, err = client.ListMultiRolePoolsResponder(resp) 2594 if err != nil { 2595 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRolePools", resp, "Failure responding to request") 2596 return 2597 } 2598 if result.wpc.hasNextLink() && result.wpc.IsEmpty() { 2599 err = result.NextWithContext(ctx) 2600 return 2601 } 2602 2603 return 2604} 2605 2606// ListMultiRolePoolsPreparer prepares the ListMultiRolePools request. 2607func (client AppServiceEnvironmentsClient) ListMultiRolePoolsPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 2608 pathParameters := map[string]interface{}{ 2609 "name": autorest.Encode("path", name), 2610 "resourceGroupName": autorest.Encode("path", resourceGroupName), 2611 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 2612 } 2613 2614 const APIVersion = "2018-02-01" 2615 queryParameters := map[string]interface{}{ 2616 "api-version": APIVersion, 2617 } 2618 2619 preparer := autorest.CreatePreparer( 2620 autorest.AsGet(), 2621 autorest.WithBaseURL(client.BaseURI), 2622 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools", pathParameters), 2623 autorest.WithQueryParameters(queryParameters)) 2624 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 2625} 2626 2627// ListMultiRolePoolsSender sends the ListMultiRolePools request. The method will close the 2628// http.Response Body if it receives an error. 2629func (client AppServiceEnvironmentsClient) ListMultiRolePoolsSender(req *http.Request) (*http.Response, error) { 2630 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 2631} 2632 2633// ListMultiRolePoolsResponder handles the response to the ListMultiRolePools request. The method always 2634// closes the http.Response Body. 2635func (client AppServiceEnvironmentsClient) ListMultiRolePoolsResponder(resp *http.Response) (result WorkerPoolCollection, err error) { 2636 err = autorest.Respond( 2637 resp, 2638 azure.WithErrorUnlessStatusCode(http.StatusOK), 2639 autorest.ByUnmarshallingJSON(&result), 2640 autorest.ByClosing()) 2641 result.Response = autorest.Response{Response: resp} 2642 return 2643} 2644 2645// listMultiRolePoolsNextResults retrieves the next set of results, if any. 2646func (client AppServiceEnvironmentsClient) listMultiRolePoolsNextResults(ctx context.Context, lastResults WorkerPoolCollection) (result WorkerPoolCollection, err error) { 2647 req, err := lastResults.workerPoolCollectionPreparer(ctx) 2648 if err != nil { 2649 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRolePoolsNextResults", nil, "Failure preparing next results request") 2650 } 2651 if req == nil { 2652 return 2653 } 2654 resp, err := client.ListMultiRolePoolsSender(req) 2655 if err != nil { 2656 result.Response = autorest.Response{Response: resp} 2657 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRolePoolsNextResults", resp, "Failure sending next results request") 2658 } 2659 result, err = client.ListMultiRolePoolsResponder(resp) 2660 if err != nil { 2661 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRolePoolsNextResults", resp, "Failure responding to next results request") 2662 } 2663 return 2664} 2665 2666// ListMultiRolePoolsComplete enumerates all values, automatically crossing page boundaries as required. 2667func (client AppServiceEnvironmentsClient) ListMultiRolePoolsComplete(ctx context.Context, resourceGroupName string, name string) (result WorkerPoolCollectionIterator, err error) { 2668 if tracing.IsEnabled() { 2669 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMultiRolePools") 2670 defer func() { 2671 sc := -1 2672 if result.Response().Response.Response != nil { 2673 sc = result.page.Response().Response.Response.StatusCode 2674 } 2675 tracing.EndSpan(ctx, sc, err) 2676 }() 2677 } 2678 result.page, err = client.ListMultiRolePools(ctx, resourceGroupName, name) 2679 return 2680} 2681 2682// ListMultiRolePoolSkus get available SKUs for scaling a multi-role pool. 2683// Parameters: 2684// resourceGroupName - name of the resource group to which the resource belongs. 2685// name - name of the App Service Environment. 2686func (client AppServiceEnvironmentsClient) ListMultiRolePoolSkus(ctx context.Context, resourceGroupName string, name string) (result SkuInfoCollectionPage, err error) { 2687 if tracing.IsEnabled() { 2688 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMultiRolePoolSkus") 2689 defer func() { 2690 sc := -1 2691 if result.sic.Response.Response != nil { 2692 sc = result.sic.Response.Response.StatusCode 2693 } 2694 tracing.EndSpan(ctx, sc, err) 2695 }() 2696 } 2697 if err := validation.Validate([]validation.Validation{ 2698 {TargetValue: resourceGroupName, 2699 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 2700 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 2701 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 2702 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListMultiRolePoolSkus", err.Error()) 2703 } 2704 2705 result.fn = client.listMultiRolePoolSkusNextResults 2706 req, err := client.ListMultiRolePoolSkusPreparer(ctx, resourceGroupName, name) 2707 if err != nil { 2708 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRolePoolSkus", nil, "Failure preparing request") 2709 return 2710 } 2711 2712 resp, err := client.ListMultiRolePoolSkusSender(req) 2713 if err != nil { 2714 result.sic.Response = autorest.Response{Response: resp} 2715 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRolePoolSkus", resp, "Failure sending request") 2716 return 2717 } 2718 2719 result.sic, err = client.ListMultiRolePoolSkusResponder(resp) 2720 if err != nil { 2721 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRolePoolSkus", resp, "Failure responding to request") 2722 return 2723 } 2724 if result.sic.hasNextLink() && result.sic.IsEmpty() { 2725 err = result.NextWithContext(ctx) 2726 return 2727 } 2728 2729 return 2730} 2731 2732// ListMultiRolePoolSkusPreparer prepares the ListMultiRolePoolSkus request. 2733func (client AppServiceEnvironmentsClient) ListMultiRolePoolSkusPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 2734 pathParameters := map[string]interface{}{ 2735 "name": autorest.Encode("path", name), 2736 "resourceGroupName": autorest.Encode("path", resourceGroupName), 2737 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 2738 } 2739 2740 const APIVersion = "2018-02-01" 2741 queryParameters := map[string]interface{}{ 2742 "api-version": APIVersion, 2743 } 2744 2745 preparer := autorest.CreatePreparer( 2746 autorest.AsGet(), 2747 autorest.WithBaseURL(client.BaseURI), 2748 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/skus", pathParameters), 2749 autorest.WithQueryParameters(queryParameters)) 2750 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 2751} 2752 2753// ListMultiRolePoolSkusSender sends the ListMultiRolePoolSkus request. The method will close the 2754// http.Response Body if it receives an error. 2755func (client AppServiceEnvironmentsClient) ListMultiRolePoolSkusSender(req *http.Request) (*http.Response, error) { 2756 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 2757} 2758 2759// ListMultiRolePoolSkusResponder handles the response to the ListMultiRolePoolSkus request. The method always 2760// closes the http.Response Body. 2761func (client AppServiceEnvironmentsClient) ListMultiRolePoolSkusResponder(resp *http.Response) (result SkuInfoCollection, err error) { 2762 err = autorest.Respond( 2763 resp, 2764 azure.WithErrorUnlessStatusCode(http.StatusOK), 2765 autorest.ByUnmarshallingJSON(&result), 2766 autorest.ByClosing()) 2767 result.Response = autorest.Response{Response: resp} 2768 return 2769} 2770 2771// listMultiRolePoolSkusNextResults retrieves the next set of results, if any. 2772func (client AppServiceEnvironmentsClient) listMultiRolePoolSkusNextResults(ctx context.Context, lastResults SkuInfoCollection) (result SkuInfoCollection, err error) { 2773 req, err := lastResults.skuInfoCollectionPreparer(ctx) 2774 if err != nil { 2775 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRolePoolSkusNextResults", nil, "Failure preparing next results request") 2776 } 2777 if req == nil { 2778 return 2779 } 2780 resp, err := client.ListMultiRolePoolSkusSender(req) 2781 if err != nil { 2782 result.Response = autorest.Response{Response: resp} 2783 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRolePoolSkusNextResults", resp, "Failure sending next results request") 2784 } 2785 result, err = client.ListMultiRolePoolSkusResponder(resp) 2786 if err != nil { 2787 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRolePoolSkusNextResults", resp, "Failure responding to next results request") 2788 } 2789 return 2790} 2791 2792// ListMultiRolePoolSkusComplete enumerates all values, automatically crossing page boundaries as required. 2793func (client AppServiceEnvironmentsClient) ListMultiRolePoolSkusComplete(ctx context.Context, resourceGroupName string, name string) (result SkuInfoCollectionIterator, err error) { 2794 if tracing.IsEnabled() { 2795 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMultiRolePoolSkus") 2796 defer func() { 2797 sc := -1 2798 if result.Response().Response.Response != nil { 2799 sc = result.page.Response().Response.Response.StatusCode 2800 } 2801 tracing.EndSpan(ctx, sc, err) 2802 }() 2803 } 2804 result.page, err = client.ListMultiRolePoolSkus(ctx, resourceGroupName, name) 2805 return 2806} 2807 2808// ListMultiRoleUsages get usage metrics for a multi-role pool of an App Service Environment. 2809// Parameters: 2810// resourceGroupName - name of the resource group to which the resource belongs. 2811// name - name of the App Service Environment. 2812func (client AppServiceEnvironmentsClient) ListMultiRoleUsages(ctx context.Context, resourceGroupName string, name string) (result UsageCollectionPage, err error) { 2813 if tracing.IsEnabled() { 2814 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMultiRoleUsages") 2815 defer func() { 2816 sc := -1 2817 if result.uc.Response.Response != nil { 2818 sc = result.uc.Response.Response.StatusCode 2819 } 2820 tracing.EndSpan(ctx, sc, err) 2821 }() 2822 } 2823 if err := validation.Validate([]validation.Validation{ 2824 {TargetValue: resourceGroupName, 2825 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 2826 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 2827 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 2828 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListMultiRoleUsages", err.Error()) 2829 } 2830 2831 result.fn = client.listMultiRoleUsagesNextResults 2832 req, err := client.ListMultiRoleUsagesPreparer(ctx, resourceGroupName, name) 2833 if err != nil { 2834 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRoleUsages", nil, "Failure preparing request") 2835 return 2836 } 2837 2838 resp, err := client.ListMultiRoleUsagesSender(req) 2839 if err != nil { 2840 result.uc.Response = autorest.Response{Response: resp} 2841 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRoleUsages", resp, "Failure sending request") 2842 return 2843 } 2844 2845 result.uc, err = client.ListMultiRoleUsagesResponder(resp) 2846 if err != nil { 2847 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListMultiRoleUsages", resp, "Failure responding to request") 2848 return 2849 } 2850 if result.uc.hasNextLink() && result.uc.IsEmpty() { 2851 err = result.NextWithContext(ctx) 2852 return 2853 } 2854 2855 return 2856} 2857 2858// ListMultiRoleUsagesPreparer prepares the ListMultiRoleUsages request. 2859func (client AppServiceEnvironmentsClient) ListMultiRoleUsagesPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 2860 pathParameters := map[string]interface{}{ 2861 "name": autorest.Encode("path", name), 2862 "resourceGroupName": autorest.Encode("path", resourceGroupName), 2863 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 2864 } 2865 2866 const APIVersion = "2018-02-01" 2867 queryParameters := map[string]interface{}{ 2868 "api-version": APIVersion, 2869 } 2870 2871 preparer := autorest.CreatePreparer( 2872 autorest.AsGet(), 2873 autorest.WithBaseURL(client.BaseURI), 2874 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/usages", pathParameters), 2875 autorest.WithQueryParameters(queryParameters)) 2876 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 2877} 2878 2879// ListMultiRoleUsagesSender sends the ListMultiRoleUsages request. The method will close the 2880// http.Response Body if it receives an error. 2881func (client AppServiceEnvironmentsClient) ListMultiRoleUsagesSender(req *http.Request) (*http.Response, error) { 2882 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 2883} 2884 2885// ListMultiRoleUsagesResponder handles the response to the ListMultiRoleUsages request. The method always 2886// closes the http.Response Body. 2887func (client AppServiceEnvironmentsClient) ListMultiRoleUsagesResponder(resp *http.Response) (result UsageCollection, err error) { 2888 err = autorest.Respond( 2889 resp, 2890 azure.WithErrorUnlessStatusCode(http.StatusOK), 2891 autorest.ByUnmarshallingJSON(&result), 2892 autorest.ByClosing()) 2893 result.Response = autorest.Response{Response: resp} 2894 return 2895} 2896 2897// listMultiRoleUsagesNextResults retrieves the next set of results, if any. 2898func (client AppServiceEnvironmentsClient) listMultiRoleUsagesNextResults(ctx context.Context, lastResults UsageCollection) (result UsageCollection, err error) { 2899 req, err := lastResults.usageCollectionPreparer(ctx) 2900 if err != nil { 2901 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRoleUsagesNextResults", nil, "Failure preparing next results request") 2902 } 2903 if req == nil { 2904 return 2905 } 2906 resp, err := client.ListMultiRoleUsagesSender(req) 2907 if err != nil { 2908 result.Response = autorest.Response{Response: resp} 2909 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRoleUsagesNextResults", resp, "Failure sending next results request") 2910 } 2911 result, err = client.ListMultiRoleUsagesResponder(resp) 2912 if err != nil { 2913 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listMultiRoleUsagesNextResults", resp, "Failure responding to next results request") 2914 } 2915 return 2916} 2917 2918// ListMultiRoleUsagesComplete enumerates all values, automatically crossing page boundaries as required. 2919func (client AppServiceEnvironmentsClient) ListMultiRoleUsagesComplete(ctx context.Context, resourceGroupName string, name string) (result UsageCollectionIterator, err error) { 2920 if tracing.IsEnabled() { 2921 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListMultiRoleUsages") 2922 defer func() { 2923 sc := -1 2924 if result.Response().Response.Response != nil { 2925 sc = result.page.Response().Response.Response.StatusCode 2926 } 2927 tracing.EndSpan(ctx, sc, err) 2928 }() 2929 } 2930 result.page, err = client.ListMultiRoleUsages(ctx, resourceGroupName, name) 2931 return 2932} 2933 2934// ListOperations list all currently running operations on the App Service Environment. 2935// Parameters: 2936// resourceGroupName - name of the resource group to which the resource belongs. 2937// name - name of the App Service Environment. 2938func (client AppServiceEnvironmentsClient) ListOperations(ctx context.Context, resourceGroupName string, name string) (result ListOperation, err error) { 2939 if tracing.IsEnabled() { 2940 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListOperations") 2941 defer func() { 2942 sc := -1 2943 if result.Response.Response != nil { 2944 sc = result.Response.Response.StatusCode 2945 } 2946 tracing.EndSpan(ctx, sc, err) 2947 }() 2948 } 2949 if err := validation.Validate([]validation.Validation{ 2950 {TargetValue: resourceGroupName, 2951 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 2952 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 2953 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 2954 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListOperations", err.Error()) 2955 } 2956 2957 req, err := client.ListOperationsPreparer(ctx, resourceGroupName, name) 2958 if err != nil { 2959 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListOperations", nil, "Failure preparing request") 2960 return 2961 } 2962 2963 resp, err := client.ListOperationsSender(req) 2964 if err != nil { 2965 result.Response = autorest.Response{Response: resp} 2966 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListOperations", resp, "Failure sending request") 2967 return 2968 } 2969 2970 result, err = client.ListOperationsResponder(resp) 2971 if err != nil { 2972 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListOperations", resp, "Failure responding to request") 2973 return 2974 } 2975 2976 return 2977} 2978 2979// ListOperationsPreparer prepares the ListOperations request. 2980func (client AppServiceEnvironmentsClient) ListOperationsPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 2981 pathParameters := map[string]interface{}{ 2982 "name": autorest.Encode("path", name), 2983 "resourceGroupName": autorest.Encode("path", resourceGroupName), 2984 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 2985 } 2986 2987 const APIVersion = "2018-02-01" 2988 queryParameters := map[string]interface{}{ 2989 "api-version": APIVersion, 2990 } 2991 2992 preparer := autorest.CreatePreparer( 2993 autorest.AsGet(), 2994 autorest.WithBaseURL(client.BaseURI), 2995 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/operations", pathParameters), 2996 autorest.WithQueryParameters(queryParameters)) 2997 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 2998} 2999 3000// ListOperationsSender sends the ListOperations request. The method will close the 3001// http.Response Body if it receives an error. 3002func (client AppServiceEnvironmentsClient) ListOperationsSender(req *http.Request) (*http.Response, error) { 3003 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 3004} 3005 3006// ListOperationsResponder handles the response to the ListOperations request. The method always 3007// closes the http.Response Body. 3008func (client AppServiceEnvironmentsClient) ListOperationsResponder(resp *http.Response) (result ListOperation, err error) { 3009 err = autorest.Respond( 3010 resp, 3011 azure.WithErrorUnlessStatusCode(http.StatusOK), 3012 autorest.ByUnmarshallingJSON(&result.Value), 3013 autorest.ByClosing()) 3014 result.Response = autorest.Response{Response: resp} 3015 return 3016} 3017 3018// ListUsages get global usage metrics of an App Service Environment. 3019// Parameters: 3020// resourceGroupName - name of the resource group to which the resource belongs. 3021// name - name of the App Service Environment. 3022// filter - return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: 3023// $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and 3024// endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'. 3025func (client AppServiceEnvironmentsClient) ListUsages(ctx context.Context, resourceGroupName string, name string, filter string) (result CsmUsageQuotaCollectionPage, err error) { 3026 if tracing.IsEnabled() { 3027 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListUsages") 3028 defer func() { 3029 sc := -1 3030 if result.cuqc.Response.Response != nil { 3031 sc = result.cuqc.Response.Response.StatusCode 3032 } 3033 tracing.EndSpan(ctx, sc, err) 3034 }() 3035 } 3036 if err := validation.Validate([]validation.Validation{ 3037 {TargetValue: resourceGroupName, 3038 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 3039 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 3040 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 3041 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListUsages", err.Error()) 3042 } 3043 3044 result.fn = client.listUsagesNextResults 3045 req, err := client.ListUsagesPreparer(ctx, resourceGroupName, name, filter) 3046 if err != nil { 3047 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListUsages", nil, "Failure preparing request") 3048 return 3049 } 3050 3051 resp, err := client.ListUsagesSender(req) 3052 if err != nil { 3053 result.cuqc.Response = autorest.Response{Response: resp} 3054 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListUsages", resp, "Failure sending request") 3055 return 3056 } 3057 3058 result.cuqc, err = client.ListUsagesResponder(resp) 3059 if err != nil { 3060 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListUsages", resp, "Failure responding to request") 3061 return 3062 } 3063 if result.cuqc.hasNextLink() && result.cuqc.IsEmpty() { 3064 err = result.NextWithContext(ctx) 3065 return 3066 } 3067 3068 return 3069} 3070 3071// ListUsagesPreparer prepares the ListUsages request. 3072func (client AppServiceEnvironmentsClient) ListUsagesPreparer(ctx context.Context, resourceGroupName string, name string, filter string) (*http.Request, error) { 3073 pathParameters := map[string]interface{}{ 3074 "name": autorest.Encode("path", name), 3075 "resourceGroupName": autorest.Encode("path", resourceGroupName), 3076 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 3077 } 3078 3079 const APIVersion = "2018-02-01" 3080 queryParameters := map[string]interface{}{ 3081 "api-version": APIVersion, 3082 } 3083 if len(filter) > 0 { 3084 queryParameters["$filter"] = filter 3085 } 3086 3087 preparer := autorest.CreatePreparer( 3088 autorest.AsGet(), 3089 autorest.WithBaseURL(client.BaseURI), 3090 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/usages", pathParameters), 3091 autorest.WithQueryParameters(queryParameters)) 3092 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 3093} 3094 3095// ListUsagesSender sends the ListUsages request. The method will close the 3096// http.Response Body if it receives an error. 3097func (client AppServiceEnvironmentsClient) ListUsagesSender(req *http.Request) (*http.Response, error) { 3098 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 3099} 3100 3101// ListUsagesResponder handles the response to the ListUsages request. The method always 3102// closes the http.Response Body. 3103func (client AppServiceEnvironmentsClient) ListUsagesResponder(resp *http.Response) (result CsmUsageQuotaCollection, err error) { 3104 err = autorest.Respond( 3105 resp, 3106 azure.WithErrorUnlessStatusCode(http.StatusOK), 3107 autorest.ByUnmarshallingJSON(&result), 3108 autorest.ByClosing()) 3109 result.Response = autorest.Response{Response: resp} 3110 return 3111} 3112 3113// listUsagesNextResults retrieves the next set of results, if any. 3114func (client AppServiceEnvironmentsClient) listUsagesNextResults(ctx context.Context, lastResults CsmUsageQuotaCollection) (result CsmUsageQuotaCollection, err error) { 3115 req, err := lastResults.csmUsageQuotaCollectionPreparer(ctx) 3116 if err != nil { 3117 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listUsagesNextResults", nil, "Failure preparing next results request") 3118 } 3119 if req == nil { 3120 return 3121 } 3122 resp, err := client.ListUsagesSender(req) 3123 if err != nil { 3124 result.Response = autorest.Response{Response: resp} 3125 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listUsagesNextResults", resp, "Failure sending next results request") 3126 } 3127 result, err = client.ListUsagesResponder(resp) 3128 if err != nil { 3129 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listUsagesNextResults", resp, "Failure responding to next results request") 3130 } 3131 return 3132} 3133 3134// ListUsagesComplete enumerates all values, automatically crossing page boundaries as required. 3135func (client AppServiceEnvironmentsClient) ListUsagesComplete(ctx context.Context, resourceGroupName string, name string, filter string) (result CsmUsageQuotaCollectionIterator, err error) { 3136 if tracing.IsEnabled() { 3137 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListUsages") 3138 defer func() { 3139 sc := -1 3140 if result.Response().Response.Response != nil { 3141 sc = result.page.Response().Response.Response.StatusCode 3142 } 3143 tracing.EndSpan(ctx, sc, err) 3144 }() 3145 } 3146 result.page, err = client.ListUsages(ctx, resourceGroupName, name, filter) 3147 return 3148} 3149 3150// ListVips get IP addresses assigned to an App Service Environment. 3151// Parameters: 3152// resourceGroupName - name of the resource group to which the resource belongs. 3153// name - name of the App Service Environment. 3154func (client AppServiceEnvironmentsClient) ListVips(ctx context.Context, resourceGroupName string, name string) (result AddressResponse, err error) { 3155 if tracing.IsEnabled() { 3156 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListVips") 3157 defer func() { 3158 sc := -1 3159 if result.Response.Response != nil { 3160 sc = result.Response.Response.StatusCode 3161 } 3162 tracing.EndSpan(ctx, sc, err) 3163 }() 3164 } 3165 if err := validation.Validate([]validation.Validation{ 3166 {TargetValue: resourceGroupName, 3167 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 3168 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 3169 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 3170 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListVips", err.Error()) 3171 } 3172 3173 req, err := client.ListVipsPreparer(ctx, resourceGroupName, name) 3174 if err != nil { 3175 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListVips", nil, "Failure preparing request") 3176 return 3177 } 3178 3179 resp, err := client.ListVipsSender(req) 3180 if err != nil { 3181 result.Response = autorest.Response{Response: resp} 3182 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListVips", resp, "Failure sending request") 3183 return 3184 } 3185 3186 result, err = client.ListVipsResponder(resp) 3187 if err != nil { 3188 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListVips", resp, "Failure responding to request") 3189 return 3190 } 3191 3192 return 3193} 3194 3195// ListVipsPreparer prepares the ListVips request. 3196func (client AppServiceEnvironmentsClient) ListVipsPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 3197 pathParameters := map[string]interface{}{ 3198 "name": autorest.Encode("path", name), 3199 "resourceGroupName": autorest.Encode("path", resourceGroupName), 3200 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 3201 } 3202 3203 const APIVersion = "2018-02-01" 3204 queryParameters := map[string]interface{}{ 3205 "api-version": APIVersion, 3206 } 3207 3208 preparer := autorest.CreatePreparer( 3209 autorest.AsGet(), 3210 autorest.WithBaseURL(client.BaseURI), 3211 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/capacities/virtualip", pathParameters), 3212 autorest.WithQueryParameters(queryParameters)) 3213 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 3214} 3215 3216// ListVipsSender sends the ListVips request. The method will close the 3217// http.Response Body if it receives an error. 3218func (client AppServiceEnvironmentsClient) ListVipsSender(req *http.Request) (*http.Response, error) { 3219 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 3220} 3221 3222// ListVipsResponder handles the response to the ListVips request. The method always 3223// closes the http.Response Body. 3224func (client AppServiceEnvironmentsClient) ListVipsResponder(resp *http.Response) (result AddressResponse, err error) { 3225 err = autorest.Respond( 3226 resp, 3227 azure.WithErrorUnlessStatusCode(http.StatusOK), 3228 autorest.ByUnmarshallingJSON(&result), 3229 autorest.ByClosing()) 3230 result.Response = autorest.Response{Response: resp} 3231 return 3232} 3233 3234// ListWebApps get all apps in an App Service Environment. 3235// Parameters: 3236// resourceGroupName - name of the resource group to which the resource belongs. 3237// name - name of the App Service Environment. 3238// propertiesToInclude - comma separated list of app properties to include. 3239func (client AppServiceEnvironmentsClient) ListWebApps(ctx context.Context, resourceGroupName string, name string, propertiesToInclude string) (result AppCollectionPage, err error) { 3240 if tracing.IsEnabled() { 3241 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWebApps") 3242 defer func() { 3243 sc := -1 3244 if result.ac.Response.Response != nil { 3245 sc = result.ac.Response.Response.StatusCode 3246 } 3247 tracing.EndSpan(ctx, sc, err) 3248 }() 3249 } 3250 if err := validation.Validate([]validation.Validation{ 3251 {TargetValue: resourceGroupName, 3252 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 3253 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 3254 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 3255 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListWebApps", err.Error()) 3256 } 3257 3258 result.fn = client.listWebAppsNextResults 3259 req, err := client.ListWebAppsPreparer(ctx, resourceGroupName, name, propertiesToInclude) 3260 if err != nil { 3261 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWebApps", nil, "Failure preparing request") 3262 return 3263 } 3264 3265 resp, err := client.ListWebAppsSender(req) 3266 if err != nil { 3267 result.ac.Response = autorest.Response{Response: resp} 3268 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWebApps", resp, "Failure sending request") 3269 return 3270 } 3271 3272 result.ac, err = client.ListWebAppsResponder(resp) 3273 if err != nil { 3274 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWebApps", resp, "Failure responding to request") 3275 return 3276 } 3277 if result.ac.hasNextLink() && result.ac.IsEmpty() { 3278 err = result.NextWithContext(ctx) 3279 return 3280 } 3281 3282 return 3283} 3284 3285// ListWebAppsPreparer prepares the ListWebApps request. 3286func (client AppServiceEnvironmentsClient) ListWebAppsPreparer(ctx context.Context, resourceGroupName string, name string, propertiesToInclude string) (*http.Request, error) { 3287 pathParameters := map[string]interface{}{ 3288 "name": autorest.Encode("path", name), 3289 "resourceGroupName": autorest.Encode("path", resourceGroupName), 3290 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 3291 } 3292 3293 const APIVersion = "2018-02-01" 3294 queryParameters := map[string]interface{}{ 3295 "api-version": APIVersion, 3296 } 3297 if len(propertiesToInclude) > 0 { 3298 queryParameters["propertiesToInclude"] = autorest.Encode("query", propertiesToInclude) 3299 } 3300 3301 preparer := autorest.CreatePreparer( 3302 autorest.AsGet(), 3303 autorest.WithBaseURL(client.BaseURI), 3304 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/sites", pathParameters), 3305 autorest.WithQueryParameters(queryParameters)) 3306 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 3307} 3308 3309// ListWebAppsSender sends the ListWebApps request. The method will close the 3310// http.Response Body if it receives an error. 3311func (client AppServiceEnvironmentsClient) ListWebAppsSender(req *http.Request) (*http.Response, error) { 3312 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 3313} 3314 3315// ListWebAppsResponder handles the response to the ListWebApps request. The method always 3316// closes the http.Response Body. 3317func (client AppServiceEnvironmentsClient) ListWebAppsResponder(resp *http.Response) (result AppCollection, err error) { 3318 err = autorest.Respond( 3319 resp, 3320 azure.WithErrorUnlessStatusCode(http.StatusOK), 3321 autorest.ByUnmarshallingJSON(&result), 3322 autorest.ByClosing()) 3323 result.Response = autorest.Response{Response: resp} 3324 return 3325} 3326 3327// listWebAppsNextResults retrieves the next set of results, if any. 3328func (client AppServiceEnvironmentsClient) listWebAppsNextResults(ctx context.Context, lastResults AppCollection) (result AppCollection, err error) { 3329 req, err := lastResults.appCollectionPreparer(ctx) 3330 if err != nil { 3331 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWebAppsNextResults", nil, "Failure preparing next results request") 3332 } 3333 if req == nil { 3334 return 3335 } 3336 resp, err := client.ListWebAppsSender(req) 3337 if err != nil { 3338 result.Response = autorest.Response{Response: resp} 3339 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWebAppsNextResults", resp, "Failure sending next results request") 3340 } 3341 result, err = client.ListWebAppsResponder(resp) 3342 if err != nil { 3343 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWebAppsNextResults", resp, "Failure responding to next results request") 3344 } 3345 return 3346} 3347 3348// ListWebAppsComplete enumerates all values, automatically crossing page boundaries as required. 3349func (client AppServiceEnvironmentsClient) ListWebAppsComplete(ctx context.Context, resourceGroupName string, name string, propertiesToInclude string) (result AppCollectionIterator, err error) { 3350 if tracing.IsEnabled() { 3351 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWebApps") 3352 defer func() { 3353 sc := -1 3354 if result.Response().Response.Response != nil { 3355 sc = result.page.Response().Response.Response.StatusCode 3356 } 3357 tracing.EndSpan(ctx, sc, err) 3358 }() 3359 } 3360 result.page, err = client.ListWebApps(ctx, resourceGroupName, name, propertiesToInclude) 3361 return 3362} 3363 3364// ListWebWorkerMetricDefinitions get metric definitions for a worker pool of an App Service Environment. 3365// Parameters: 3366// resourceGroupName - name of the resource group to which the resource belongs. 3367// name - name of the App Service Environment. 3368// workerPoolName - name of the worker pool. 3369func (client AppServiceEnvironmentsClient) ListWebWorkerMetricDefinitions(ctx context.Context, resourceGroupName string, name string, workerPoolName string) (result ResourceMetricDefinitionCollectionPage, err error) { 3370 if tracing.IsEnabled() { 3371 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWebWorkerMetricDefinitions") 3372 defer func() { 3373 sc := -1 3374 if result.rmdc.Response.Response != nil { 3375 sc = result.rmdc.Response.Response.StatusCode 3376 } 3377 tracing.EndSpan(ctx, sc, err) 3378 }() 3379 } 3380 if err := validation.Validate([]validation.Validation{ 3381 {TargetValue: resourceGroupName, 3382 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 3383 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 3384 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 3385 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListWebWorkerMetricDefinitions", err.Error()) 3386 } 3387 3388 result.fn = client.listWebWorkerMetricDefinitionsNextResults 3389 req, err := client.ListWebWorkerMetricDefinitionsPreparer(ctx, resourceGroupName, name, workerPoolName) 3390 if err != nil { 3391 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWebWorkerMetricDefinitions", nil, "Failure preparing request") 3392 return 3393 } 3394 3395 resp, err := client.ListWebWorkerMetricDefinitionsSender(req) 3396 if err != nil { 3397 result.rmdc.Response = autorest.Response{Response: resp} 3398 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWebWorkerMetricDefinitions", resp, "Failure sending request") 3399 return 3400 } 3401 3402 result.rmdc, err = client.ListWebWorkerMetricDefinitionsResponder(resp) 3403 if err != nil { 3404 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWebWorkerMetricDefinitions", resp, "Failure responding to request") 3405 return 3406 } 3407 if result.rmdc.hasNextLink() && result.rmdc.IsEmpty() { 3408 err = result.NextWithContext(ctx) 3409 return 3410 } 3411 3412 return 3413} 3414 3415// ListWebWorkerMetricDefinitionsPreparer prepares the ListWebWorkerMetricDefinitions request. 3416func (client AppServiceEnvironmentsClient) ListWebWorkerMetricDefinitionsPreparer(ctx context.Context, resourceGroupName string, name string, workerPoolName string) (*http.Request, error) { 3417 pathParameters := map[string]interface{}{ 3418 "name": autorest.Encode("path", name), 3419 "resourceGroupName": autorest.Encode("path", resourceGroupName), 3420 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 3421 "workerPoolName": autorest.Encode("path", workerPoolName), 3422 } 3423 3424 const APIVersion = "2018-02-01" 3425 queryParameters := map[string]interface{}{ 3426 "api-version": APIVersion, 3427 } 3428 3429 preparer := autorest.CreatePreparer( 3430 autorest.AsGet(), 3431 autorest.WithBaseURL(client.BaseURI), 3432 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/metricdefinitions", pathParameters), 3433 autorest.WithQueryParameters(queryParameters)) 3434 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 3435} 3436 3437// ListWebWorkerMetricDefinitionsSender sends the ListWebWorkerMetricDefinitions request. The method will close the 3438// http.Response Body if it receives an error. 3439func (client AppServiceEnvironmentsClient) ListWebWorkerMetricDefinitionsSender(req *http.Request) (*http.Response, error) { 3440 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 3441} 3442 3443// ListWebWorkerMetricDefinitionsResponder handles the response to the ListWebWorkerMetricDefinitions request. The method always 3444// closes the http.Response Body. 3445func (client AppServiceEnvironmentsClient) ListWebWorkerMetricDefinitionsResponder(resp *http.Response) (result ResourceMetricDefinitionCollection, err error) { 3446 err = autorest.Respond( 3447 resp, 3448 azure.WithErrorUnlessStatusCode(http.StatusOK), 3449 autorest.ByUnmarshallingJSON(&result), 3450 autorest.ByClosing()) 3451 result.Response = autorest.Response{Response: resp} 3452 return 3453} 3454 3455// listWebWorkerMetricDefinitionsNextResults retrieves the next set of results, if any. 3456func (client AppServiceEnvironmentsClient) listWebWorkerMetricDefinitionsNextResults(ctx context.Context, lastResults ResourceMetricDefinitionCollection) (result ResourceMetricDefinitionCollection, err error) { 3457 req, err := lastResults.resourceMetricDefinitionCollectionPreparer(ctx) 3458 if err != nil { 3459 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWebWorkerMetricDefinitionsNextResults", nil, "Failure preparing next results request") 3460 } 3461 if req == nil { 3462 return 3463 } 3464 resp, err := client.ListWebWorkerMetricDefinitionsSender(req) 3465 if err != nil { 3466 result.Response = autorest.Response{Response: resp} 3467 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWebWorkerMetricDefinitionsNextResults", resp, "Failure sending next results request") 3468 } 3469 result, err = client.ListWebWorkerMetricDefinitionsResponder(resp) 3470 if err != nil { 3471 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWebWorkerMetricDefinitionsNextResults", resp, "Failure responding to next results request") 3472 } 3473 return 3474} 3475 3476// ListWebWorkerMetricDefinitionsComplete enumerates all values, automatically crossing page boundaries as required. 3477func (client AppServiceEnvironmentsClient) ListWebWorkerMetricDefinitionsComplete(ctx context.Context, resourceGroupName string, name string, workerPoolName string) (result ResourceMetricDefinitionCollectionIterator, err error) { 3478 if tracing.IsEnabled() { 3479 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWebWorkerMetricDefinitions") 3480 defer func() { 3481 sc := -1 3482 if result.Response().Response.Response != nil { 3483 sc = result.page.Response().Response.Response.StatusCode 3484 } 3485 tracing.EndSpan(ctx, sc, err) 3486 }() 3487 } 3488 result.page, err = client.ListWebWorkerMetricDefinitions(ctx, resourceGroupName, name, workerPoolName) 3489 return 3490} 3491 3492// ListWebWorkerMetrics get metrics for a worker pool of a AppServiceEnvironment (App Service Environment). 3493// Parameters: 3494// resourceGroupName - name of the resource group to which the resource belongs. 3495// name - name of the App Service Environment. 3496// workerPoolName - name of worker pool 3497// details - specify <code>true</code> to include instance details. The default is <code>false</code>. 3498// filter - return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: 3499// $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and 3500// endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'. 3501func (client AppServiceEnvironmentsClient) ListWebWorkerMetrics(ctx context.Context, resourceGroupName string, name string, workerPoolName string, details *bool, filter string) (result ResourceMetricCollectionPage, err error) { 3502 if tracing.IsEnabled() { 3503 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWebWorkerMetrics") 3504 defer func() { 3505 sc := -1 3506 if result.rmc.Response.Response != nil { 3507 sc = result.rmc.Response.Response.StatusCode 3508 } 3509 tracing.EndSpan(ctx, sc, err) 3510 }() 3511 } 3512 if err := validation.Validate([]validation.Validation{ 3513 {TargetValue: resourceGroupName, 3514 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 3515 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 3516 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 3517 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListWebWorkerMetrics", err.Error()) 3518 } 3519 3520 result.fn = client.listWebWorkerMetricsNextResults 3521 req, err := client.ListWebWorkerMetricsPreparer(ctx, resourceGroupName, name, workerPoolName, details, filter) 3522 if err != nil { 3523 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWebWorkerMetrics", nil, "Failure preparing request") 3524 return 3525 } 3526 3527 resp, err := client.ListWebWorkerMetricsSender(req) 3528 if err != nil { 3529 result.rmc.Response = autorest.Response{Response: resp} 3530 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWebWorkerMetrics", resp, "Failure sending request") 3531 return 3532 } 3533 3534 result.rmc, err = client.ListWebWorkerMetricsResponder(resp) 3535 if err != nil { 3536 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWebWorkerMetrics", resp, "Failure responding to request") 3537 return 3538 } 3539 if result.rmc.hasNextLink() && result.rmc.IsEmpty() { 3540 err = result.NextWithContext(ctx) 3541 return 3542 } 3543 3544 return 3545} 3546 3547// ListWebWorkerMetricsPreparer prepares the ListWebWorkerMetrics request. 3548func (client AppServiceEnvironmentsClient) ListWebWorkerMetricsPreparer(ctx context.Context, resourceGroupName string, name string, workerPoolName string, details *bool, filter string) (*http.Request, error) { 3549 pathParameters := map[string]interface{}{ 3550 "name": autorest.Encode("path", name), 3551 "resourceGroupName": autorest.Encode("path", resourceGroupName), 3552 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 3553 "workerPoolName": autorest.Encode("path", workerPoolName), 3554 } 3555 3556 const APIVersion = "2018-02-01" 3557 queryParameters := map[string]interface{}{ 3558 "api-version": APIVersion, 3559 } 3560 if details != nil { 3561 queryParameters["details"] = autorest.Encode("query", *details) 3562 } 3563 if len(filter) > 0 { 3564 queryParameters["$filter"] = filter 3565 } 3566 3567 preparer := autorest.CreatePreparer( 3568 autorest.AsGet(), 3569 autorest.WithBaseURL(client.BaseURI), 3570 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/metrics", pathParameters), 3571 autorest.WithQueryParameters(queryParameters)) 3572 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 3573} 3574 3575// ListWebWorkerMetricsSender sends the ListWebWorkerMetrics request. The method will close the 3576// http.Response Body if it receives an error. 3577func (client AppServiceEnvironmentsClient) ListWebWorkerMetricsSender(req *http.Request) (*http.Response, error) { 3578 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 3579} 3580 3581// ListWebWorkerMetricsResponder handles the response to the ListWebWorkerMetrics request. The method always 3582// closes the http.Response Body. 3583func (client AppServiceEnvironmentsClient) ListWebWorkerMetricsResponder(resp *http.Response) (result ResourceMetricCollection, err error) { 3584 err = autorest.Respond( 3585 resp, 3586 azure.WithErrorUnlessStatusCode(http.StatusOK), 3587 autorest.ByUnmarshallingJSON(&result), 3588 autorest.ByClosing()) 3589 result.Response = autorest.Response{Response: resp} 3590 return 3591} 3592 3593// listWebWorkerMetricsNextResults retrieves the next set of results, if any. 3594func (client AppServiceEnvironmentsClient) listWebWorkerMetricsNextResults(ctx context.Context, lastResults ResourceMetricCollection) (result ResourceMetricCollection, err error) { 3595 req, err := lastResults.resourceMetricCollectionPreparer(ctx) 3596 if err != nil { 3597 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWebWorkerMetricsNextResults", nil, "Failure preparing next results request") 3598 } 3599 if req == nil { 3600 return 3601 } 3602 resp, err := client.ListWebWorkerMetricsSender(req) 3603 if err != nil { 3604 result.Response = autorest.Response{Response: resp} 3605 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWebWorkerMetricsNextResults", resp, "Failure sending next results request") 3606 } 3607 result, err = client.ListWebWorkerMetricsResponder(resp) 3608 if err != nil { 3609 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWebWorkerMetricsNextResults", resp, "Failure responding to next results request") 3610 } 3611 return 3612} 3613 3614// ListWebWorkerMetricsComplete enumerates all values, automatically crossing page boundaries as required. 3615func (client AppServiceEnvironmentsClient) ListWebWorkerMetricsComplete(ctx context.Context, resourceGroupName string, name string, workerPoolName string, details *bool, filter string) (result ResourceMetricCollectionIterator, err error) { 3616 if tracing.IsEnabled() { 3617 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWebWorkerMetrics") 3618 defer func() { 3619 sc := -1 3620 if result.Response().Response.Response != nil { 3621 sc = result.page.Response().Response.Response.StatusCode 3622 } 3623 tracing.EndSpan(ctx, sc, err) 3624 }() 3625 } 3626 result.page, err = client.ListWebWorkerMetrics(ctx, resourceGroupName, name, workerPoolName, details, filter) 3627 return 3628} 3629 3630// ListWebWorkerUsages get usage metrics for a worker pool of an App Service Environment. 3631// Parameters: 3632// resourceGroupName - name of the resource group to which the resource belongs. 3633// name - name of the App Service Environment. 3634// workerPoolName - name of the worker pool. 3635func (client AppServiceEnvironmentsClient) ListWebWorkerUsages(ctx context.Context, resourceGroupName string, name string, workerPoolName string) (result UsageCollectionPage, err error) { 3636 if tracing.IsEnabled() { 3637 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWebWorkerUsages") 3638 defer func() { 3639 sc := -1 3640 if result.uc.Response.Response != nil { 3641 sc = result.uc.Response.Response.StatusCode 3642 } 3643 tracing.EndSpan(ctx, sc, err) 3644 }() 3645 } 3646 if err := validation.Validate([]validation.Validation{ 3647 {TargetValue: resourceGroupName, 3648 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 3649 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 3650 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 3651 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListWebWorkerUsages", err.Error()) 3652 } 3653 3654 result.fn = client.listWebWorkerUsagesNextResults 3655 req, err := client.ListWebWorkerUsagesPreparer(ctx, resourceGroupName, name, workerPoolName) 3656 if err != nil { 3657 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWebWorkerUsages", nil, "Failure preparing request") 3658 return 3659 } 3660 3661 resp, err := client.ListWebWorkerUsagesSender(req) 3662 if err != nil { 3663 result.uc.Response = autorest.Response{Response: resp} 3664 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWebWorkerUsages", resp, "Failure sending request") 3665 return 3666 } 3667 3668 result.uc, err = client.ListWebWorkerUsagesResponder(resp) 3669 if err != nil { 3670 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWebWorkerUsages", resp, "Failure responding to request") 3671 return 3672 } 3673 if result.uc.hasNextLink() && result.uc.IsEmpty() { 3674 err = result.NextWithContext(ctx) 3675 return 3676 } 3677 3678 return 3679} 3680 3681// ListWebWorkerUsagesPreparer prepares the ListWebWorkerUsages request. 3682func (client AppServiceEnvironmentsClient) ListWebWorkerUsagesPreparer(ctx context.Context, resourceGroupName string, name string, workerPoolName string) (*http.Request, error) { 3683 pathParameters := map[string]interface{}{ 3684 "name": autorest.Encode("path", name), 3685 "resourceGroupName": autorest.Encode("path", resourceGroupName), 3686 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 3687 "workerPoolName": autorest.Encode("path", workerPoolName), 3688 } 3689 3690 const APIVersion = "2018-02-01" 3691 queryParameters := map[string]interface{}{ 3692 "api-version": APIVersion, 3693 } 3694 3695 preparer := autorest.CreatePreparer( 3696 autorest.AsGet(), 3697 autorest.WithBaseURL(client.BaseURI), 3698 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/usages", pathParameters), 3699 autorest.WithQueryParameters(queryParameters)) 3700 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 3701} 3702 3703// ListWebWorkerUsagesSender sends the ListWebWorkerUsages request. The method will close the 3704// http.Response Body if it receives an error. 3705func (client AppServiceEnvironmentsClient) ListWebWorkerUsagesSender(req *http.Request) (*http.Response, error) { 3706 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 3707} 3708 3709// ListWebWorkerUsagesResponder handles the response to the ListWebWorkerUsages request. The method always 3710// closes the http.Response Body. 3711func (client AppServiceEnvironmentsClient) ListWebWorkerUsagesResponder(resp *http.Response) (result UsageCollection, err error) { 3712 err = autorest.Respond( 3713 resp, 3714 azure.WithErrorUnlessStatusCode(http.StatusOK), 3715 autorest.ByUnmarshallingJSON(&result), 3716 autorest.ByClosing()) 3717 result.Response = autorest.Response{Response: resp} 3718 return 3719} 3720 3721// listWebWorkerUsagesNextResults retrieves the next set of results, if any. 3722func (client AppServiceEnvironmentsClient) listWebWorkerUsagesNextResults(ctx context.Context, lastResults UsageCollection) (result UsageCollection, err error) { 3723 req, err := lastResults.usageCollectionPreparer(ctx) 3724 if err != nil { 3725 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWebWorkerUsagesNextResults", nil, "Failure preparing next results request") 3726 } 3727 if req == nil { 3728 return 3729 } 3730 resp, err := client.ListWebWorkerUsagesSender(req) 3731 if err != nil { 3732 result.Response = autorest.Response{Response: resp} 3733 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWebWorkerUsagesNextResults", resp, "Failure sending next results request") 3734 } 3735 result, err = client.ListWebWorkerUsagesResponder(resp) 3736 if err != nil { 3737 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWebWorkerUsagesNextResults", resp, "Failure responding to next results request") 3738 } 3739 return 3740} 3741 3742// ListWebWorkerUsagesComplete enumerates all values, automatically crossing page boundaries as required. 3743func (client AppServiceEnvironmentsClient) ListWebWorkerUsagesComplete(ctx context.Context, resourceGroupName string, name string, workerPoolName string) (result UsageCollectionIterator, err error) { 3744 if tracing.IsEnabled() { 3745 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWebWorkerUsages") 3746 defer func() { 3747 sc := -1 3748 if result.Response().Response.Response != nil { 3749 sc = result.page.Response().Response.Response.StatusCode 3750 } 3751 tracing.EndSpan(ctx, sc, err) 3752 }() 3753 } 3754 result.page, err = client.ListWebWorkerUsages(ctx, resourceGroupName, name, workerPoolName) 3755 return 3756} 3757 3758// ListWorkerPoolInstanceMetricDefinitions get metric definitions for a specific instance of a worker pool of an App 3759// Service Environment. 3760// Parameters: 3761// resourceGroupName - name of the resource group to which the resource belongs. 3762// name - name of the App Service Environment. 3763// workerPoolName - name of the worker pool. 3764// instance - name of the instance in the worker pool. 3765func (client AppServiceEnvironmentsClient) ListWorkerPoolInstanceMetricDefinitions(ctx context.Context, resourceGroupName string, name string, workerPoolName string, instance string) (result ResourceMetricDefinitionCollectionPage, err error) { 3766 if tracing.IsEnabled() { 3767 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWorkerPoolInstanceMetricDefinitions") 3768 defer func() { 3769 sc := -1 3770 if result.rmdc.Response.Response != nil { 3771 sc = result.rmdc.Response.Response.StatusCode 3772 } 3773 tracing.EndSpan(ctx, sc, err) 3774 }() 3775 } 3776 if err := validation.Validate([]validation.Validation{ 3777 {TargetValue: resourceGroupName, 3778 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 3779 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 3780 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 3781 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListWorkerPoolInstanceMetricDefinitions", err.Error()) 3782 } 3783 3784 result.fn = client.listWorkerPoolInstanceMetricDefinitionsNextResults 3785 req, err := client.ListWorkerPoolInstanceMetricDefinitionsPreparer(ctx, resourceGroupName, name, workerPoolName, instance) 3786 if err != nil { 3787 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWorkerPoolInstanceMetricDefinitions", nil, "Failure preparing request") 3788 return 3789 } 3790 3791 resp, err := client.ListWorkerPoolInstanceMetricDefinitionsSender(req) 3792 if err != nil { 3793 result.rmdc.Response = autorest.Response{Response: resp} 3794 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWorkerPoolInstanceMetricDefinitions", resp, "Failure sending request") 3795 return 3796 } 3797 3798 result.rmdc, err = client.ListWorkerPoolInstanceMetricDefinitionsResponder(resp) 3799 if err != nil { 3800 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWorkerPoolInstanceMetricDefinitions", resp, "Failure responding to request") 3801 return 3802 } 3803 if result.rmdc.hasNextLink() && result.rmdc.IsEmpty() { 3804 err = result.NextWithContext(ctx) 3805 return 3806 } 3807 3808 return 3809} 3810 3811// ListWorkerPoolInstanceMetricDefinitionsPreparer prepares the ListWorkerPoolInstanceMetricDefinitions request. 3812func (client AppServiceEnvironmentsClient) ListWorkerPoolInstanceMetricDefinitionsPreparer(ctx context.Context, resourceGroupName string, name string, workerPoolName string, instance string) (*http.Request, error) { 3813 pathParameters := map[string]interface{}{ 3814 "instance": autorest.Encode("path", instance), 3815 "name": autorest.Encode("path", name), 3816 "resourceGroupName": autorest.Encode("path", resourceGroupName), 3817 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 3818 "workerPoolName": autorest.Encode("path", workerPoolName), 3819 } 3820 3821 const APIVersion = "2018-02-01" 3822 queryParameters := map[string]interface{}{ 3823 "api-version": APIVersion, 3824 } 3825 3826 preparer := autorest.CreatePreparer( 3827 autorest.AsGet(), 3828 autorest.WithBaseURL(client.BaseURI), 3829 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/instances/{instance}/metricdefinitions", pathParameters), 3830 autorest.WithQueryParameters(queryParameters)) 3831 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 3832} 3833 3834// ListWorkerPoolInstanceMetricDefinitionsSender sends the ListWorkerPoolInstanceMetricDefinitions request. The method will close the 3835// http.Response Body if it receives an error. 3836func (client AppServiceEnvironmentsClient) ListWorkerPoolInstanceMetricDefinitionsSender(req *http.Request) (*http.Response, error) { 3837 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 3838} 3839 3840// ListWorkerPoolInstanceMetricDefinitionsResponder handles the response to the ListWorkerPoolInstanceMetricDefinitions request. The method always 3841// closes the http.Response Body. 3842func (client AppServiceEnvironmentsClient) ListWorkerPoolInstanceMetricDefinitionsResponder(resp *http.Response) (result ResourceMetricDefinitionCollection, err error) { 3843 err = autorest.Respond( 3844 resp, 3845 azure.WithErrorUnlessStatusCode(http.StatusOK), 3846 autorest.ByUnmarshallingJSON(&result), 3847 autorest.ByClosing()) 3848 result.Response = autorest.Response{Response: resp} 3849 return 3850} 3851 3852// listWorkerPoolInstanceMetricDefinitionsNextResults retrieves the next set of results, if any. 3853func (client AppServiceEnvironmentsClient) listWorkerPoolInstanceMetricDefinitionsNextResults(ctx context.Context, lastResults ResourceMetricDefinitionCollection) (result ResourceMetricDefinitionCollection, err error) { 3854 req, err := lastResults.resourceMetricDefinitionCollectionPreparer(ctx) 3855 if err != nil { 3856 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWorkerPoolInstanceMetricDefinitionsNextResults", nil, "Failure preparing next results request") 3857 } 3858 if req == nil { 3859 return 3860 } 3861 resp, err := client.ListWorkerPoolInstanceMetricDefinitionsSender(req) 3862 if err != nil { 3863 result.Response = autorest.Response{Response: resp} 3864 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWorkerPoolInstanceMetricDefinitionsNextResults", resp, "Failure sending next results request") 3865 } 3866 result, err = client.ListWorkerPoolInstanceMetricDefinitionsResponder(resp) 3867 if err != nil { 3868 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWorkerPoolInstanceMetricDefinitionsNextResults", resp, "Failure responding to next results request") 3869 } 3870 return 3871} 3872 3873// ListWorkerPoolInstanceMetricDefinitionsComplete enumerates all values, automatically crossing page boundaries as required. 3874func (client AppServiceEnvironmentsClient) ListWorkerPoolInstanceMetricDefinitionsComplete(ctx context.Context, resourceGroupName string, name string, workerPoolName string, instance string) (result ResourceMetricDefinitionCollectionIterator, err error) { 3875 if tracing.IsEnabled() { 3876 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWorkerPoolInstanceMetricDefinitions") 3877 defer func() { 3878 sc := -1 3879 if result.Response().Response.Response != nil { 3880 sc = result.page.Response().Response.Response.StatusCode 3881 } 3882 tracing.EndSpan(ctx, sc, err) 3883 }() 3884 } 3885 result.page, err = client.ListWorkerPoolInstanceMetricDefinitions(ctx, resourceGroupName, name, workerPoolName, instance) 3886 return 3887} 3888 3889// ListWorkerPoolInstanceMetrics get metrics for a specific instance of a worker pool of an App Service Environment. 3890// Parameters: 3891// resourceGroupName - name of the resource group to which the resource belongs. 3892// name - name of the App Service Environment. 3893// workerPoolName - name of the worker pool. 3894// instance - name of the instance in the worker pool. 3895// details - specify <code>true</code> to include instance details. The default is <code>false</code>. 3896// filter - return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: 3897// $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and 3898// endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'. 3899func (client AppServiceEnvironmentsClient) ListWorkerPoolInstanceMetrics(ctx context.Context, resourceGroupName string, name string, workerPoolName string, instance string, details *bool, filter string) (result ResourceMetricCollectionPage, err error) { 3900 if tracing.IsEnabled() { 3901 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWorkerPoolInstanceMetrics") 3902 defer func() { 3903 sc := -1 3904 if result.rmc.Response.Response != nil { 3905 sc = result.rmc.Response.Response.StatusCode 3906 } 3907 tracing.EndSpan(ctx, sc, err) 3908 }() 3909 } 3910 if err := validation.Validate([]validation.Validation{ 3911 {TargetValue: resourceGroupName, 3912 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 3913 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 3914 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 3915 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListWorkerPoolInstanceMetrics", err.Error()) 3916 } 3917 3918 result.fn = client.listWorkerPoolInstanceMetricsNextResults 3919 req, err := client.ListWorkerPoolInstanceMetricsPreparer(ctx, resourceGroupName, name, workerPoolName, instance, details, filter) 3920 if err != nil { 3921 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWorkerPoolInstanceMetrics", nil, "Failure preparing request") 3922 return 3923 } 3924 3925 resp, err := client.ListWorkerPoolInstanceMetricsSender(req) 3926 if err != nil { 3927 result.rmc.Response = autorest.Response{Response: resp} 3928 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWorkerPoolInstanceMetrics", resp, "Failure sending request") 3929 return 3930 } 3931 3932 result.rmc, err = client.ListWorkerPoolInstanceMetricsResponder(resp) 3933 if err != nil { 3934 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWorkerPoolInstanceMetrics", resp, "Failure responding to request") 3935 return 3936 } 3937 if result.rmc.hasNextLink() && result.rmc.IsEmpty() { 3938 err = result.NextWithContext(ctx) 3939 return 3940 } 3941 3942 return 3943} 3944 3945// ListWorkerPoolInstanceMetricsPreparer prepares the ListWorkerPoolInstanceMetrics request. 3946func (client AppServiceEnvironmentsClient) ListWorkerPoolInstanceMetricsPreparer(ctx context.Context, resourceGroupName string, name string, workerPoolName string, instance string, details *bool, filter string) (*http.Request, error) { 3947 pathParameters := map[string]interface{}{ 3948 "instance": autorest.Encode("path", instance), 3949 "name": autorest.Encode("path", name), 3950 "resourceGroupName": autorest.Encode("path", resourceGroupName), 3951 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 3952 "workerPoolName": autorest.Encode("path", workerPoolName), 3953 } 3954 3955 const APIVersion = "2018-02-01" 3956 queryParameters := map[string]interface{}{ 3957 "api-version": APIVersion, 3958 } 3959 if details != nil { 3960 queryParameters["details"] = autorest.Encode("query", *details) 3961 } 3962 if len(filter) > 0 { 3963 queryParameters["$filter"] = filter 3964 } 3965 3966 preparer := autorest.CreatePreparer( 3967 autorest.AsGet(), 3968 autorest.WithBaseURL(client.BaseURI), 3969 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/instances/{instance}/metrics", pathParameters), 3970 autorest.WithQueryParameters(queryParameters)) 3971 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 3972} 3973 3974// ListWorkerPoolInstanceMetricsSender sends the ListWorkerPoolInstanceMetrics request. The method will close the 3975// http.Response Body if it receives an error. 3976func (client AppServiceEnvironmentsClient) ListWorkerPoolInstanceMetricsSender(req *http.Request) (*http.Response, error) { 3977 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 3978} 3979 3980// ListWorkerPoolInstanceMetricsResponder handles the response to the ListWorkerPoolInstanceMetrics request. The method always 3981// closes the http.Response Body. 3982func (client AppServiceEnvironmentsClient) ListWorkerPoolInstanceMetricsResponder(resp *http.Response) (result ResourceMetricCollection, err error) { 3983 err = autorest.Respond( 3984 resp, 3985 azure.WithErrorUnlessStatusCode(http.StatusOK), 3986 autorest.ByUnmarshallingJSON(&result), 3987 autorest.ByClosing()) 3988 result.Response = autorest.Response{Response: resp} 3989 return 3990} 3991 3992// listWorkerPoolInstanceMetricsNextResults retrieves the next set of results, if any. 3993func (client AppServiceEnvironmentsClient) listWorkerPoolInstanceMetricsNextResults(ctx context.Context, lastResults ResourceMetricCollection) (result ResourceMetricCollection, err error) { 3994 req, err := lastResults.resourceMetricCollectionPreparer(ctx) 3995 if err != nil { 3996 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWorkerPoolInstanceMetricsNextResults", nil, "Failure preparing next results request") 3997 } 3998 if req == nil { 3999 return 4000 } 4001 resp, err := client.ListWorkerPoolInstanceMetricsSender(req) 4002 if err != nil { 4003 result.Response = autorest.Response{Response: resp} 4004 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWorkerPoolInstanceMetricsNextResults", resp, "Failure sending next results request") 4005 } 4006 result, err = client.ListWorkerPoolInstanceMetricsResponder(resp) 4007 if err != nil { 4008 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWorkerPoolInstanceMetricsNextResults", resp, "Failure responding to next results request") 4009 } 4010 return 4011} 4012 4013// ListWorkerPoolInstanceMetricsComplete enumerates all values, automatically crossing page boundaries as required. 4014func (client AppServiceEnvironmentsClient) ListWorkerPoolInstanceMetricsComplete(ctx context.Context, resourceGroupName string, name string, workerPoolName string, instance string, details *bool, filter string) (result ResourceMetricCollectionIterator, err error) { 4015 if tracing.IsEnabled() { 4016 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWorkerPoolInstanceMetrics") 4017 defer func() { 4018 sc := -1 4019 if result.Response().Response.Response != nil { 4020 sc = result.page.Response().Response.Response.StatusCode 4021 } 4022 tracing.EndSpan(ctx, sc, err) 4023 }() 4024 } 4025 result.page, err = client.ListWorkerPoolInstanceMetrics(ctx, resourceGroupName, name, workerPoolName, instance, details, filter) 4026 return 4027} 4028 4029// ListWorkerPools get all worker pools of an App Service Environment. 4030// Parameters: 4031// resourceGroupName - name of the resource group to which the resource belongs. 4032// name - name of the App Service Environment. 4033func (client AppServiceEnvironmentsClient) ListWorkerPools(ctx context.Context, resourceGroupName string, name string) (result WorkerPoolCollectionPage, err error) { 4034 if tracing.IsEnabled() { 4035 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWorkerPools") 4036 defer func() { 4037 sc := -1 4038 if result.wpc.Response.Response != nil { 4039 sc = result.wpc.Response.Response.StatusCode 4040 } 4041 tracing.EndSpan(ctx, sc, err) 4042 }() 4043 } 4044 if err := validation.Validate([]validation.Validation{ 4045 {TargetValue: resourceGroupName, 4046 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 4047 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 4048 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 4049 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListWorkerPools", err.Error()) 4050 } 4051 4052 result.fn = client.listWorkerPoolsNextResults 4053 req, err := client.ListWorkerPoolsPreparer(ctx, resourceGroupName, name) 4054 if err != nil { 4055 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWorkerPools", nil, "Failure preparing request") 4056 return 4057 } 4058 4059 resp, err := client.ListWorkerPoolsSender(req) 4060 if err != nil { 4061 result.wpc.Response = autorest.Response{Response: resp} 4062 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWorkerPools", resp, "Failure sending request") 4063 return 4064 } 4065 4066 result.wpc, err = client.ListWorkerPoolsResponder(resp) 4067 if err != nil { 4068 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWorkerPools", resp, "Failure responding to request") 4069 return 4070 } 4071 if result.wpc.hasNextLink() && result.wpc.IsEmpty() { 4072 err = result.NextWithContext(ctx) 4073 return 4074 } 4075 4076 return 4077} 4078 4079// ListWorkerPoolsPreparer prepares the ListWorkerPools request. 4080func (client AppServiceEnvironmentsClient) ListWorkerPoolsPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 4081 pathParameters := map[string]interface{}{ 4082 "name": autorest.Encode("path", name), 4083 "resourceGroupName": autorest.Encode("path", resourceGroupName), 4084 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 4085 } 4086 4087 const APIVersion = "2018-02-01" 4088 queryParameters := map[string]interface{}{ 4089 "api-version": APIVersion, 4090 } 4091 4092 preparer := autorest.CreatePreparer( 4093 autorest.AsGet(), 4094 autorest.WithBaseURL(client.BaseURI), 4095 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools", pathParameters), 4096 autorest.WithQueryParameters(queryParameters)) 4097 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 4098} 4099 4100// ListWorkerPoolsSender sends the ListWorkerPools request. The method will close the 4101// http.Response Body if it receives an error. 4102func (client AppServiceEnvironmentsClient) ListWorkerPoolsSender(req *http.Request) (*http.Response, error) { 4103 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 4104} 4105 4106// ListWorkerPoolsResponder handles the response to the ListWorkerPools request. The method always 4107// closes the http.Response Body. 4108func (client AppServiceEnvironmentsClient) ListWorkerPoolsResponder(resp *http.Response) (result WorkerPoolCollection, err error) { 4109 err = autorest.Respond( 4110 resp, 4111 azure.WithErrorUnlessStatusCode(http.StatusOK), 4112 autorest.ByUnmarshallingJSON(&result), 4113 autorest.ByClosing()) 4114 result.Response = autorest.Response{Response: resp} 4115 return 4116} 4117 4118// listWorkerPoolsNextResults retrieves the next set of results, if any. 4119func (client AppServiceEnvironmentsClient) listWorkerPoolsNextResults(ctx context.Context, lastResults WorkerPoolCollection) (result WorkerPoolCollection, err error) { 4120 req, err := lastResults.workerPoolCollectionPreparer(ctx) 4121 if err != nil { 4122 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWorkerPoolsNextResults", nil, "Failure preparing next results request") 4123 } 4124 if req == nil { 4125 return 4126 } 4127 resp, err := client.ListWorkerPoolsSender(req) 4128 if err != nil { 4129 result.Response = autorest.Response{Response: resp} 4130 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWorkerPoolsNextResults", resp, "Failure sending next results request") 4131 } 4132 result, err = client.ListWorkerPoolsResponder(resp) 4133 if err != nil { 4134 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWorkerPoolsNextResults", resp, "Failure responding to next results request") 4135 } 4136 return 4137} 4138 4139// ListWorkerPoolsComplete enumerates all values, automatically crossing page boundaries as required. 4140func (client AppServiceEnvironmentsClient) ListWorkerPoolsComplete(ctx context.Context, resourceGroupName string, name string) (result WorkerPoolCollectionIterator, err error) { 4141 if tracing.IsEnabled() { 4142 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWorkerPools") 4143 defer func() { 4144 sc := -1 4145 if result.Response().Response.Response != nil { 4146 sc = result.page.Response().Response.Response.StatusCode 4147 } 4148 tracing.EndSpan(ctx, sc, err) 4149 }() 4150 } 4151 result.page, err = client.ListWorkerPools(ctx, resourceGroupName, name) 4152 return 4153} 4154 4155// ListWorkerPoolSkus get available SKUs for scaling a worker pool. 4156// Parameters: 4157// resourceGroupName - name of the resource group to which the resource belongs. 4158// name - name of the App Service Environment. 4159// workerPoolName - name of the worker pool. 4160func (client AppServiceEnvironmentsClient) ListWorkerPoolSkus(ctx context.Context, resourceGroupName string, name string, workerPoolName string) (result SkuInfoCollectionPage, err error) { 4161 if tracing.IsEnabled() { 4162 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWorkerPoolSkus") 4163 defer func() { 4164 sc := -1 4165 if result.sic.Response.Response != nil { 4166 sc = result.sic.Response.Response.StatusCode 4167 } 4168 tracing.EndSpan(ctx, sc, err) 4169 }() 4170 } 4171 if err := validation.Validate([]validation.Validation{ 4172 {TargetValue: resourceGroupName, 4173 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 4174 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 4175 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 4176 return result, validation.NewError("web.AppServiceEnvironmentsClient", "ListWorkerPoolSkus", err.Error()) 4177 } 4178 4179 result.fn = client.listWorkerPoolSkusNextResults 4180 req, err := client.ListWorkerPoolSkusPreparer(ctx, resourceGroupName, name, workerPoolName) 4181 if err != nil { 4182 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWorkerPoolSkus", nil, "Failure preparing request") 4183 return 4184 } 4185 4186 resp, err := client.ListWorkerPoolSkusSender(req) 4187 if err != nil { 4188 result.sic.Response = autorest.Response{Response: resp} 4189 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWorkerPoolSkus", resp, "Failure sending request") 4190 return 4191 } 4192 4193 result.sic, err = client.ListWorkerPoolSkusResponder(resp) 4194 if err != nil { 4195 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "ListWorkerPoolSkus", resp, "Failure responding to request") 4196 return 4197 } 4198 if result.sic.hasNextLink() && result.sic.IsEmpty() { 4199 err = result.NextWithContext(ctx) 4200 return 4201 } 4202 4203 return 4204} 4205 4206// ListWorkerPoolSkusPreparer prepares the ListWorkerPoolSkus request. 4207func (client AppServiceEnvironmentsClient) ListWorkerPoolSkusPreparer(ctx context.Context, resourceGroupName string, name string, workerPoolName string) (*http.Request, error) { 4208 pathParameters := map[string]interface{}{ 4209 "name": autorest.Encode("path", name), 4210 "resourceGroupName": autorest.Encode("path", resourceGroupName), 4211 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 4212 "workerPoolName": autorest.Encode("path", workerPoolName), 4213 } 4214 4215 const APIVersion = "2018-02-01" 4216 queryParameters := map[string]interface{}{ 4217 "api-version": APIVersion, 4218 } 4219 4220 preparer := autorest.CreatePreparer( 4221 autorest.AsGet(), 4222 autorest.WithBaseURL(client.BaseURI), 4223 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/skus", pathParameters), 4224 autorest.WithQueryParameters(queryParameters)) 4225 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 4226} 4227 4228// ListWorkerPoolSkusSender sends the ListWorkerPoolSkus request. The method will close the 4229// http.Response Body if it receives an error. 4230func (client AppServiceEnvironmentsClient) ListWorkerPoolSkusSender(req *http.Request) (*http.Response, error) { 4231 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 4232} 4233 4234// ListWorkerPoolSkusResponder handles the response to the ListWorkerPoolSkus request. The method always 4235// closes the http.Response Body. 4236func (client AppServiceEnvironmentsClient) ListWorkerPoolSkusResponder(resp *http.Response) (result SkuInfoCollection, err error) { 4237 err = autorest.Respond( 4238 resp, 4239 azure.WithErrorUnlessStatusCode(http.StatusOK), 4240 autorest.ByUnmarshallingJSON(&result), 4241 autorest.ByClosing()) 4242 result.Response = autorest.Response{Response: resp} 4243 return 4244} 4245 4246// listWorkerPoolSkusNextResults retrieves the next set of results, if any. 4247func (client AppServiceEnvironmentsClient) listWorkerPoolSkusNextResults(ctx context.Context, lastResults SkuInfoCollection) (result SkuInfoCollection, err error) { 4248 req, err := lastResults.skuInfoCollectionPreparer(ctx) 4249 if err != nil { 4250 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWorkerPoolSkusNextResults", nil, "Failure preparing next results request") 4251 } 4252 if req == nil { 4253 return 4254 } 4255 resp, err := client.ListWorkerPoolSkusSender(req) 4256 if err != nil { 4257 result.Response = autorest.Response{Response: resp} 4258 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWorkerPoolSkusNextResults", resp, "Failure sending next results request") 4259 } 4260 result, err = client.ListWorkerPoolSkusResponder(resp) 4261 if err != nil { 4262 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "listWorkerPoolSkusNextResults", resp, "Failure responding to next results request") 4263 } 4264 return 4265} 4266 4267// ListWorkerPoolSkusComplete enumerates all values, automatically crossing page boundaries as required. 4268func (client AppServiceEnvironmentsClient) ListWorkerPoolSkusComplete(ctx context.Context, resourceGroupName string, name string, workerPoolName string) (result SkuInfoCollectionIterator, err error) { 4269 if tracing.IsEnabled() { 4270 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.ListWorkerPoolSkus") 4271 defer func() { 4272 sc := -1 4273 if result.Response().Response.Response != nil { 4274 sc = result.page.Response().Response.Response.StatusCode 4275 } 4276 tracing.EndSpan(ctx, sc, err) 4277 }() 4278 } 4279 result.page, err = client.ListWorkerPoolSkus(ctx, resourceGroupName, name, workerPoolName) 4280 return 4281} 4282 4283// Reboot reboot all machines in an App Service Environment. 4284// Parameters: 4285// resourceGroupName - name of the resource group to which the resource belongs. 4286// name - name of the App Service Environment. 4287func (client AppServiceEnvironmentsClient) Reboot(ctx context.Context, resourceGroupName string, name string) (result autorest.Response, err error) { 4288 if tracing.IsEnabled() { 4289 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.Reboot") 4290 defer func() { 4291 sc := -1 4292 if result.Response != nil { 4293 sc = result.Response.StatusCode 4294 } 4295 tracing.EndSpan(ctx, sc, err) 4296 }() 4297 } 4298 if err := validation.Validate([]validation.Validation{ 4299 {TargetValue: resourceGroupName, 4300 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 4301 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 4302 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 4303 return result, validation.NewError("web.AppServiceEnvironmentsClient", "Reboot", err.Error()) 4304 } 4305 4306 req, err := client.RebootPreparer(ctx, resourceGroupName, name) 4307 if err != nil { 4308 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Reboot", nil, "Failure preparing request") 4309 return 4310 } 4311 4312 resp, err := client.RebootSender(req) 4313 if err != nil { 4314 result.Response = resp 4315 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Reboot", resp, "Failure sending request") 4316 return 4317 } 4318 4319 result, err = client.RebootResponder(resp) 4320 if err != nil { 4321 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Reboot", resp, "Failure responding to request") 4322 return 4323 } 4324 4325 return 4326} 4327 4328// RebootPreparer prepares the Reboot request. 4329func (client AppServiceEnvironmentsClient) RebootPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 4330 pathParameters := map[string]interface{}{ 4331 "name": autorest.Encode("path", name), 4332 "resourceGroupName": autorest.Encode("path", resourceGroupName), 4333 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 4334 } 4335 4336 const APIVersion = "2018-02-01" 4337 queryParameters := map[string]interface{}{ 4338 "api-version": APIVersion, 4339 } 4340 4341 preparer := autorest.CreatePreparer( 4342 autorest.AsPost(), 4343 autorest.WithBaseURL(client.BaseURI), 4344 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/reboot", pathParameters), 4345 autorest.WithQueryParameters(queryParameters)) 4346 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 4347} 4348 4349// RebootSender sends the Reboot request. The method will close the 4350// http.Response Body if it receives an error. 4351func (client AppServiceEnvironmentsClient) RebootSender(req *http.Request) (*http.Response, error) { 4352 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 4353} 4354 4355// RebootResponder handles the response to the Reboot request. The method always 4356// closes the http.Response Body. 4357func (client AppServiceEnvironmentsClient) RebootResponder(resp *http.Response) (result autorest.Response, err error) { 4358 err = autorest.Respond( 4359 resp, 4360 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusBadRequest, http.StatusNotFound, http.StatusConflict), 4361 autorest.ByClosing()) 4362 result.Response = resp 4363 return 4364} 4365 4366// Resume resume an App Service Environment. 4367// Parameters: 4368// resourceGroupName - name of the resource group to which the resource belongs. 4369// name - name of the App Service Environment. 4370func (client AppServiceEnvironmentsClient) Resume(ctx context.Context, resourceGroupName string, name string) (result AppServiceEnvironmentsResumeFuture, err error) { 4371 if tracing.IsEnabled() { 4372 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.Resume") 4373 defer func() { 4374 sc := -1 4375 if result.Response() != nil { 4376 sc = result.Response().StatusCode 4377 } 4378 tracing.EndSpan(ctx, sc, err) 4379 }() 4380 } 4381 if err := validation.Validate([]validation.Validation{ 4382 {TargetValue: resourceGroupName, 4383 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 4384 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 4385 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 4386 return result, validation.NewError("web.AppServiceEnvironmentsClient", "Resume", err.Error()) 4387 } 4388 4389 req, err := client.ResumePreparer(ctx, resourceGroupName, name) 4390 if err != nil { 4391 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Resume", nil, "Failure preparing request") 4392 return 4393 } 4394 4395 result, err = client.ResumeSender(req) 4396 if err != nil { 4397 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Resume", nil, "Failure sending request") 4398 return 4399 } 4400 4401 return 4402} 4403 4404// ResumePreparer prepares the Resume request. 4405func (client AppServiceEnvironmentsClient) ResumePreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 4406 pathParameters := map[string]interface{}{ 4407 "name": autorest.Encode("path", name), 4408 "resourceGroupName": autorest.Encode("path", resourceGroupName), 4409 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 4410 } 4411 4412 const APIVersion = "2018-02-01" 4413 queryParameters := map[string]interface{}{ 4414 "api-version": APIVersion, 4415 } 4416 4417 preparer := autorest.CreatePreparer( 4418 autorest.AsPost(), 4419 autorest.WithBaseURL(client.BaseURI), 4420 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/resume", pathParameters), 4421 autorest.WithQueryParameters(queryParameters)) 4422 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 4423} 4424 4425// ResumeSender sends the Resume request. The method will close the 4426// http.Response Body if it receives an error. 4427func (client AppServiceEnvironmentsClient) ResumeSender(req *http.Request) (future AppServiceEnvironmentsResumeFuture, err error) { 4428 var resp *http.Response 4429 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 4430 if err != nil { 4431 return 4432 } 4433 var azf azure.Future 4434 azf, err = azure.NewFutureFromResponse(resp) 4435 future.FutureAPI = &azf 4436 future.Result = func(client AppServiceEnvironmentsClient) (acp AppCollectionPage, err error) { 4437 var done bool 4438 done, err = future.DoneWithContext(context.Background(), client) 4439 if err != nil { 4440 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsResumeFuture", "Result", future.Response(), "Polling failure") 4441 return 4442 } 4443 if !done { 4444 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsResumeFuture") 4445 return 4446 } 4447 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4448 if acp.ac.Response.Response, err = future.GetResult(sender); err == nil && acp.ac.Response.Response.StatusCode != http.StatusNoContent { 4449 acp, err = client.ResumeResponder(acp.ac.Response.Response) 4450 if err != nil { 4451 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsResumeFuture", "Result", acp.ac.Response.Response, "Failure responding to request") 4452 } 4453 } 4454 return 4455 } 4456 return 4457} 4458 4459// ResumeResponder handles the response to the Resume request. The method always 4460// closes the http.Response Body. 4461func (client AppServiceEnvironmentsClient) ResumeResponder(resp *http.Response) (result AppCollectionPage, err error) { 4462 result.ac, err = client.resumeResponder(resp) 4463 result.fn = client.resumeNextResults 4464 return 4465} 4466 4467func (client AppServiceEnvironmentsClient) resumeResponder(resp *http.Response) (result AppCollection, err error) { 4468 err = autorest.Respond( 4469 resp, 4470 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted), 4471 autorest.ByUnmarshallingJSON(&result), 4472 autorest.ByClosing()) 4473 result.Response = autorest.Response{Response: resp} 4474 return 4475} 4476 4477// resumeNextResults retrieves the next set of results, if any. 4478func (client AppServiceEnvironmentsClient) resumeNextResults(ctx context.Context, lastResults AppCollection) (result AppCollection, err error) { 4479 req, err := lastResults.appCollectionPreparer(ctx) 4480 if err != nil { 4481 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "resumeNextResults", nil, "Failure preparing next results request") 4482 } 4483 if req == nil { 4484 return 4485 } 4486 var resp *http.Response 4487 resp, err = client.Send(req, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4488 if err != nil { 4489 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "resumeNextResults", resp, "Failure sending next results request") 4490 } 4491 return client.resumeResponder(resp) 4492} 4493 4494// ResumeComplete enumerates all values, automatically crossing page boundaries as required. 4495func (client AppServiceEnvironmentsClient) ResumeComplete(ctx context.Context, resourceGroupName string, name string) (result AppServiceEnvironmentsResumeAllFuture, err error) { 4496 if tracing.IsEnabled() { 4497 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.Resume") 4498 defer func() { 4499 sc := -1 4500 if result.Response() != nil { 4501 sc = result.Response().StatusCode 4502 } 4503 tracing.EndSpan(ctx, sc, err) 4504 }() 4505 } 4506 var future AppServiceEnvironmentsResumeFuture 4507 future, err = client.Resume(ctx, resourceGroupName, name) 4508 result.FutureAPI = future.FutureAPI 4509 return 4510} 4511 4512// Suspend suspend an App Service Environment. 4513// Parameters: 4514// resourceGroupName - name of the resource group to which the resource belongs. 4515// name - name of the App Service Environment. 4516func (client AppServiceEnvironmentsClient) Suspend(ctx context.Context, resourceGroupName string, name string) (result AppServiceEnvironmentsSuspendFuture, err error) { 4517 if tracing.IsEnabled() { 4518 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.Suspend") 4519 defer func() { 4520 sc := -1 4521 if result.Response() != nil { 4522 sc = result.Response().StatusCode 4523 } 4524 tracing.EndSpan(ctx, sc, err) 4525 }() 4526 } 4527 if err := validation.Validate([]validation.Validation{ 4528 {TargetValue: resourceGroupName, 4529 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 4530 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 4531 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 4532 return result, validation.NewError("web.AppServiceEnvironmentsClient", "Suspend", err.Error()) 4533 } 4534 4535 req, err := client.SuspendPreparer(ctx, resourceGroupName, name) 4536 if err != nil { 4537 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Suspend", nil, "Failure preparing request") 4538 return 4539 } 4540 4541 result, err = client.SuspendSender(req) 4542 if err != nil { 4543 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Suspend", nil, "Failure sending request") 4544 return 4545 } 4546 4547 return 4548} 4549 4550// SuspendPreparer prepares the Suspend request. 4551func (client AppServiceEnvironmentsClient) SuspendPreparer(ctx context.Context, resourceGroupName string, name string) (*http.Request, error) { 4552 pathParameters := map[string]interface{}{ 4553 "name": autorest.Encode("path", name), 4554 "resourceGroupName": autorest.Encode("path", resourceGroupName), 4555 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 4556 } 4557 4558 const APIVersion = "2018-02-01" 4559 queryParameters := map[string]interface{}{ 4560 "api-version": APIVersion, 4561 } 4562 4563 preparer := autorest.CreatePreparer( 4564 autorest.AsPost(), 4565 autorest.WithBaseURL(client.BaseURI), 4566 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/suspend", pathParameters), 4567 autorest.WithQueryParameters(queryParameters)) 4568 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 4569} 4570 4571// SuspendSender sends the Suspend request. The method will close the 4572// http.Response Body if it receives an error. 4573func (client AppServiceEnvironmentsClient) SuspendSender(req *http.Request) (future AppServiceEnvironmentsSuspendFuture, err error) { 4574 var resp *http.Response 4575 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client)) 4576 if err != nil { 4577 return 4578 } 4579 var azf azure.Future 4580 azf, err = azure.NewFutureFromResponse(resp) 4581 future.FutureAPI = &azf 4582 future.Result = func(client AppServiceEnvironmentsClient) (acp AppCollectionPage, err error) { 4583 var done bool 4584 done, err = future.DoneWithContext(context.Background(), client) 4585 if err != nil { 4586 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsSuspendFuture", "Result", future.Response(), "Polling failure") 4587 return 4588 } 4589 if !done { 4590 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsSuspendFuture") 4591 return 4592 } 4593 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4594 if acp.ac.Response.Response, err = future.GetResult(sender); err == nil && acp.ac.Response.Response.StatusCode != http.StatusNoContent { 4595 acp, err = client.SuspendResponder(acp.ac.Response.Response) 4596 if err != nil { 4597 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsSuspendFuture", "Result", acp.ac.Response.Response, "Failure responding to request") 4598 } 4599 } 4600 return 4601 } 4602 return 4603} 4604 4605// SuspendResponder handles the response to the Suspend request. The method always 4606// closes the http.Response Body. 4607func (client AppServiceEnvironmentsClient) SuspendResponder(resp *http.Response) (result AppCollectionPage, err error) { 4608 result.ac, err = client.suspendResponder(resp) 4609 result.fn = client.suspendNextResults 4610 return 4611} 4612 4613func (client AppServiceEnvironmentsClient) suspendResponder(resp *http.Response) (result AppCollection, err error) { 4614 err = autorest.Respond( 4615 resp, 4616 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted), 4617 autorest.ByUnmarshallingJSON(&result), 4618 autorest.ByClosing()) 4619 result.Response = autorest.Response{Response: resp} 4620 return 4621} 4622 4623// suspendNextResults retrieves the next set of results, if any. 4624func (client AppServiceEnvironmentsClient) suspendNextResults(ctx context.Context, lastResults AppCollection) (result AppCollection, err error) { 4625 req, err := lastResults.appCollectionPreparer(ctx) 4626 if err != nil { 4627 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "suspendNextResults", nil, "Failure preparing next results request") 4628 } 4629 if req == nil { 4630 return 4631 } 4632 var resp *http.Response 4633 resp, err = client.Send(req, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4634 if err != nil { 4635 return result, autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "suspendNextResults", resp, "Failure sending next results request") 4636 } 4637 return client.suspendResponder(resp) 4638} 4639 4640// SuspendComplete enumerates all values, automatically crossing page boundaries as required. 4641func (client AppServiceEnvironmentsClient) SuspendComplete(ctx context.Context, resourceGroupName string, name string) (result AppServiceEnvironmentsSuspendAllFuture, err error) { 4642 if tracing.IsEnabled() { 4643 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.Suspend") 4644 defer func() { 4645 sc := -1 4646 if result.Response() != nil { 4647 sc = result.Response().StatusCode 4648 } 4649 tracing.EndSpan(ctx, sc, err) 4650 }() 4651 } 4652 var future AppServiceEnvironmentsSuspendFuture 4653 future, err = client.Suspend(ctx, resourceGroupName, name) 4654 result.FutureAPI = future.FutureAPI 4655 return 4656} 4657 4658// Update create or update an App Service Environment. 4659// Parameters: 4660// resourceGroupName - name of the resource group to which the resource belongs. 4661// name - name of the App Service Environment. 4662// hostingEnvironmentEnvelope - configuration details of the App Service Environment. 4663func (client AppServiceEnvironmentsClient) Update(ctx context.Context, resourceGroupName string, name string, hostingEnvironmentEnvelope AppServiceEnvironmentPatchResource) (result AppServiceEnvironmentResource, err error) { 4664 if tracing.IsEnabled() { 4665 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.Update") 4666 defer func() { 4667 sc := -1 4668 if result.Response.Response != nil { 4669 sc = result.Response.Response.StatusCode 4670 } 4671 tracing.EndSpan(ctx, sc, err) 4672 }() 4673 } 4674 if err := validation.Validate([]validation.Validation{ 4675 {TargetValue: resourceGroupName, 4676 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 4677 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 4678 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 4679 return result, validation.NewError("web.AppServiceEnvironmentsClient", "Update", err.Error()) 4680 } 4681 4682 req, err := client.UpdatePreparer(ctx, resourceGroupName, name, hostingEnvironmentEnvelope) 4683 if err != nil { 4684 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Update", nil, "Failure preparing request") 4685 return 4686 } 4687 4688 resp, err := client.UpdateSender(req) 4689 if err != nil { 4690 result.Response = autorest.Response{Response: resp} 4691 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Update", resp, "Failure sending request") 4692 return 4693 } 4694 4695 result, err = client.UpdateResponder(resp) 4696 if err != nil { 4697 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "Update", resp, "Failure responding to request") 4698 return 4699 } 4700 4701 return 4702} 4703 4704// UpdatePreparer prepares the Update request. 4705func (client AppServiceEnvironmentsClient) UpdatePreparer(ctx context.Context, resourceGroupName string, name string, hostingEnvironmentEnvelope AppServiceEnvironmentPatchResource) (*http.Request, error) { 4706 pathParameters := map[string]interface{}{ 4707 "name": autorest.Encode("path", name), 4708 "resourceGroupName": autorest.Encode("path", resourceGroupName), 4709 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 4710 } 4711 4712 const APIVersion = "2018-02-01" 4713 queryParameters := map[string]interface{}{ 4714 "api-version": APIVersion, 4715 } 4716 4717 preparer := autorest.CreatePreparer( 4718 autorest.AsContentType("application/json; charset=utf-8"), 4719 autorest.AsPatch(), 4720 autorest.WithBaseURL(client.BaseURI), 4721 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}", pathParameters), 4722 autorest.WithJSON(hostingEnvironmentEnvelope), 4723 autorest.WithQueryParameters(queryParameters)) 4724 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 4725} 4726 4727// UpdateSender sends the Update request. The method will close the 4728// http.Response Body if it receives an error. 4729func (client AppServiceEnvironmentsClient) UpdateSender(req *http.Request) (*http.Response, error) { 4730 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 4731} 4732 4733// UpdateResponder handles the response to the Update request. The method always 4734// closes the http.Response Body. 4735func (client AppServiceEnvironmentsClient) UpdateResponder(resp *http.Response) (result AppServiceEnvironmentResource, err error) { 4736 err = autorest.Respond( 4737 resp, 4738 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusBadRequest, http.StatusNotFound, http.StatusConflict), 4739 autorest.ByUnmarshallingJSON(&result), 4740 autorest.ByClosing()) 4741 result.Response = autorest.Response{Response: resp} 4742 return 4743} 4744 4745// UpdateMultiRolePool create or update a multi-role pool. 4746// Parameters: 4747// resourceGroupName - name of the resource group to which the resource belongs. 4748// name - name of the App Service Environment. 4749// multiRolePoolEnvelope - properties of the multi-role pool. 4750func (client AppServiceEnvironmentsClient) UpdateMultiRolePool(ctx context.Context, resourceGroupName string, name string, multiRolePoolEnvelope WorkerPoolResource) (result WorkerPoolResource, err error) { 4751 if tracing.IsEnabled() { 4752 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.UpdateMultiRolePool") 4753 defer func() { 4754 sc := -1 4755 if result.Response.Response != nil { 4756 sc = result.Response.Response.StatusCode 4757 } 4758 tracing.EndSpan(ctx, sc, err) 4759 }() 4760 } 4761 if err := validation.Validate([]validation.Validation{ 4762 {TargetValue: resourceGroupName, 4763 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 4764 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 4765 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 4766 return result, validation.NewError("web.AppServiceEnvironmentsClient", "UpdateMultiRolePool", err.Error()) 4767 } 4768 4769 req, err := client.UpdateMultiRolePoolPreparer(ctx, resourceGroupName, name, multiRolePoolEnvelope) 4770 if err != nil { 4771 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "UpdateMultiRolePool", nil, "Failure preparing request") 4772 return 4773 } 4774 4775 resp, err := client.UpdateMultiRolePoolSender(req) 4776 if err != nil { 4777 result.Response = autorest.Response{Response: resp} 4778 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "UpdateMultiRolePool", resp, "Failure sending request") 4779 return 4780 } 4781 4782 result, err = client.UpdateMultiRolePoolResponder(resp) 4783 if err != nil { 4784 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "UpdateMultiRolePool", resp, "Failure responding to request") 4785 return 4786 } 4787 4788 return 4789} 4790 4791// UpdateMultiRolePoolPreparer prepares the UpdateMultiRolePool request. 4792func (client AppServiceEnvironmentsClient) UpdateMultiRolePoolPreparer(ctx context.Context, resourceGroupName string, name string, multiRolePoolEnvelope WorkerPoolResource) (*http.Request, error) { 4793 pathParameters := map[string]interface{}{ 4794 "name": autorest.Encode("path", name), 4795 "resourceGroupName": autorest.Encode("path", resourceGroupName), 4796 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 4797 } 4798 4799 const APIVersion = "2018-02-01" 4800 queryParameters := map[string]interface{}{ 4801 "api-version": APIVersion, 4802 } 4803 4804 preparer := autorest.CreatePreparer( 4805 autorest.AsContentType("application/json; charset=utf-8"), 4806 autorest.AsPatch(), 4807 autorest.WithBaseURL(client.BaseURI), 4808 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default", pathParameters), 4809 autorest.WithJSON(multiRolePoolEnvelope), 4810 autorest.WithQueryParameters(queryParameters)) 4811 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 4812} 4813 4814// UpdateMultiRolePoolSender sends the UpdateMultiRolePool request. The method will close the 4815// http.Response Body if it receives an error. 4816func (client AppServiceEnvironmentsClient) UpdateMultiRolePoolSender(req *http.Request) (*http.Response, error) { 4817 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 4818} 4819 4820// UpdateMultiRolePoolResponder handles the response to the UpdateMultiRolePool request. The method always 4821// closes the http.Response Body. 4822func (client AppServiceEnvironmentsClient) UpdateMultiRolePoolResponder(resp *http.Response) (result WorkerPoolResource, err error) { 4823 err = autorest.Respond( 4824 resp, 4825 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusBadRequest, http.StatusNotFound, http.StatusConflict), 4826 autorest.ByUnmarshallingJSON(&result), 4827 autorest.ByClosing()) 4828 result.Response = autorest.Response{Response: resp} 4829 return 4830} 4831 4832// UpdateWorkerPool create or update a worker pool. 4833// Parameters: 4834// resourceGroupName - name of the resource group to which the resource belongs. 4835// name - name of the App Service Environment. 4836// workerPoolName - name of the worker pool. 4837// workerPoolEnvelope - properties of the worker pool. 4838func (client AppServiceEnvironmentsClient) UpdateWorkerPool(ctx context.Context, resourceGroupName string, name string, workerPoolName string, workerPoolEnvelope WorkerPoolResource) (result WorkerPoolResource, err error) { 4839 if tracing.IsEnabled() { 4840 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentsClient.UpdateWorkerPool") 4841 defer func() { 4842 sc := -1 4843 if result.Response.Response != nil { 4844 sc = result.Response.Response.StatusCode 4845 } 4846 tracing.EndSpan(ctx, sc, err) 4847 }() 4848 } 4849 if err := validation.Validate([]validation.Validation{ 4850 {TargetValue: resourceGroupName, 4851 Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil}, 4852 {Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil}, 4853 {Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+[^\.]$`, Chain: nil}}}}); err != nil { 4854 return result, validation.NewError("web.AppServiceEnvironmentsClient", "UpdateWorkerPool", err.Error()) 4855 } 4856 4857 req, err := client.UpdateWorkerPoolPreparer(ctx, resourceGroupName, name, workerPoolName, workerPoolEnvelope) 4858 if err != nil { 4859 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "UpdateWorkerPool", nil, "Failure preparing request") 4860 return 4861 } 4862 4863 resp, err := client.UpdateWorkerPoolSender(req) 4864 if err != nil { 4865 result.Response = autorest.Response{Response: resp} 4866 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "UpdateWorkerPool", resp, "Failure sending request") 4867 return 4868 } 4869 4870 result, err = client.UpdateWorkerPoolResponder(resp) 4871 if err != nil { 4872 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsClient", "UpdateWorkerPool", resp, "Failure responding to request") 4873 return 4874 } 4875 4876 return 4877} 4878 4879// UpdateWorkerPoolPreparer prepares the UpdateWorkerPool request. 4880func (client AppServiceEnvironmentsClient) UpdateWorkerPoolPreparer(ctx context.Context, resourceGroupName string, name string, workerPoolName string, workerPoolEnvelope WorkerPoolResource) (*http.Request, error) { 4881 pathParameters := map[string]interface{}{ 4882 "name": autorest.Encode("path", name), 4883 "resourceGroupName": autorest.Encode("path", resourceGroupName), 4884 "subscriptionId": autorest.Encode("path", client.SubscriptionID), 4885 "workerPoolName": autorest.Encode("path", workerPoolName), 4886 } 4887 4888 const APIVersion = "2018-02-01" 4889 queryParameters := map[string]interface{}{ 4890 "api-version": APIVersion, 4891 } 4892 4893 preparer := autorest.CreatePreparer( 4894 autorest.AsContentType("application/json; charset=utf-8"), 4895 autorest.AsPatch(), 4896 autorest.WithBaseURL(client.BaseURI), 4897 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}", pathParameters), 4898 autorest.WithJSON(workerPoolEnvelope), 4899 autorest.WithQueryParameters(queryParameters)) 4900 return preparer.Prepare((&http.Request{}).WithContext(ctx)) 4901} 4902 4903// UpdateWorkerPoolSender sends the UpdateWorkerPool request. The method will close the 4904// http.Response Body if it receives an error. 4905func (client AppServiceEnvironmentsClient) UpdateWorkerPoolSender(req *http.Request) (*http.Response, error) { 4906 return client.Send(req, azure.DoRetryWithRegistration(client.Client)) 4907} 4908 4909// UpdateWorkerPoolResponder handles the response to the UpdateWorkerPool request. The method always 4910// closes the http.Response Body. 4911func (client AppServiceEnvironmentsClient) UpdateWorkerPoolResponder(resp *http.Response) (result WorkerPoolResource, err error) { 4912 err = autorest.Respond( 4913 resp, 4914 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusBadRequest, http.StatusNotFound, http.StatusConflict), 4915 autorest.ByUnmarshallingJSON(&result), 4916 autorest.ByClosing()) 4917 result.Response = autorest.Response{Response: resp} 4918 return 4919} 4920