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