From 35b8a665075db48b671ca45cfcf2e78bb9afcc88 Mon Sep 17 00:00:00 2001 From: Azure SDK for Python bot Date: Mon, 20 Aug 2018 11:23:11 -0700 Subject: [PATCH] Generated from ba98b1262b156cb13781c7a16967eab618d869e4 (#2428) fix brackets --- .../mgmt/powerbidedicated/models.go | 2 + .../mgmt/powerbidedicated/models.go | 2 + .../2017-10-01/powerbidedicated/capacities.go | 78 +++++++++++++++++++ .../2017-10-01/powerbidedicated/models.go | 19 +++++ 4 files changed, 101 insertions(+) diff --git a/profiles/latest/powerbidedicated/mgmt/powerbidedicated/models.go b/profiles/latest/powerbidedicated/mgmt/powerbidedicated/models.go index 08c38c6848d1..6af38bfbf192 100644 --- a/profiles/latest/powerbidedicated/mgmt/powerbidedicated/models.go +++ b/profiles/latest/powerbidedicated/mgmt/powerbidedicated/models.go @@ -73,6 +73,8 @@ type CapacitiesDeleteFuture = original.CapacitiesDeleteFuture type CapacitiesResumeFuture = original.CapacitiesResumeFuture type CapacitiesSuspendFuture = original.CapacitiesSuspendFuture type CapacitiesUpdateFuture = original.CapacitiesUpdateFuture +type CheckCapacityNameAvailabilityParameters = original.CheckCapacityNameAvailabilityParameters +type CheckCapacityNameAvailabilityResult = original.CheckCapacityNameAvailabilityResult type DedicatedCapacities = original.DedicatedCapacities type DedicatedCapacity = original.DedicatedCapacity type DedicatedCapacityAdministrators = original.DedicatedCapacityAdministrators diff --git a/profiles/preview/powerbidedicated/mgmt/powerbidedicated/models.go b/profiles/preview/powerbidedicated/mgmt/powerbidedicated/models.go index dc46f44957b1..edc919b09bfa 100644 --- a/profiles/preview/powerbidedicated/mgmt/powerbidedicated/models.go +++ b/profiles/preview/powerbidedicated/mgmt/powerbidedicated/models.go @@ -73,6 +73,8 @@ type CapacitiesDeleteFuture = original.CapacitiesDeleteFuture type CapacitiesResumeFuture = original.CapacitiesResumeFuture type CapacitiesSuspendFuture = original.CapacitiesSuspendFuture type CapacitiesUpdateFuture = original.CapacitiesUpdateFuture +type CheckCapacityNameAvailabilityParameters = original.CheckCapacityNameAvailabilityParameters +type CheckCapacityNameAvailabilityResult = original.CheckCapacityNameAvailabilityResult type DedicatedCapacities = original.DedicatedCapacities type DedicatedCapacity = original.DedicatedCapacity type DedicatedCapacityAdministrators = original.DedicatedCapacityAdministrators diff --git a/services/powerbidedicated/mgmt/2017-10-01/powerbidedicated/capacities.go b/services/powerbidedicated/mgmt/2017-10-01/powerbidedicated/capacities.go index b45c0b067b9e..e922266fe72c 100644 --- a/services/powerbidedicated/mgmt/2017-10-01/powerbidedicated/capacities.go +++ b/services/powerbidedicated/mgmt/2017-10-01/powerbidedicated/capacities.go @@ -41,6 +41,84 @@ func NewCapacitiesClientWithBaseURI(baseURI string, subscriptionID string) Capac return CapacitiesClient{NewWithBaseURI(baseURI, subscriptionID)} } +// CheckNameAvailability check the name availability in the target location. +// Parameters: +// location - the region name which the operation will lookup into. +// capacityParameters - the name of the capacity. +func (client CapacitiesClient) CheckNameAvailability(ctx context.Context, location string, capacityParameters CheckCapacityNameAvailabilityParameters) (result CheckCapacityNameAvailabilityResult, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: capacityParameters, + Constraints: []validation.Constraint{{Target: "capacityParameters.Name", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "capacityParameters.Name", Name: validation.MaxLength, Rule: 63, Chain: nil}, + {Target: "capacityParameters.Name", Name: validation.MinLength, Rule: 3, Chain: nil}, + {Target: "capacityParameters.Name", Name: validation.Pattern, Rule: `^[a-z][a-z0-9]*$`, Chain: nil}, + }}}}}); err != nil { + return result, validation.NewError("powerbidedicated.CapacitiesClient", "CheckNameAvailability", err.Error()) + } + + req, err := client.CheckNameAvailabilityPreparer(ctx, location, capacityParameters) + if err != nil { + err = autorest.NewErrorWithError(err, "powerbidedicated.CapacitiesClient", "CheckNameAvailability", nil, "Failure preparing request") + return + } + + resp, err := client.CheckNameAvailabilitySender(req) + if err != nil { + result.Response = autorest.Response{Response: resp} + err = autorest.NewErrorWithError(err, "powerbidedicated.CapacitiesClient", "CheckNameAvailability", resp, "Failure sending request") + return + } + + result, err = client.CheckNameAvailabilityResponder(resp) + if err != nil { + err = autorest.NewErrorWithError(err, "powerbidedicated.CapacitiesClient", "CheckNameAvailability", resp, "Failure responding to request") + } + + return +} + +// CheckNameAvailabilityPreparer prepares the CheckNameAvailability request. +func (client CapacitiesClient) CheckNameAvailabilityPreparer(ctx context.Context, location string, capacityParameters CheckCapacityNameAvailabilityParameters) (*http.Request, error) { + pathParameters := map[string]interface{}{ + "location": autorest.Encode("path", location), + "subscriptionId": autorest.Encode("path", client.SubscriptionID), + } + + const APIVersion = "2017-10-01" + queryParameters := map[string]interface{}{ + "api-version": APIVersion, + } + + preparer := autorest.CreatePreparer( + autorest.AsContentType("application/json; charset=utf-8"), + autorest.AsPost(), + autorest.WithBaseURL(client.BaseURI), + autorest.WithPathParameters("/subscriptions/{subscriptionId}/providers/Microsoft.PowerBIDedicated/locations/{location}/checkNameAvailability", pathParameters), + autorest.WithJSON(capacityParameters), + autorest.WithQueryParameters(queryParameters)) + return preparer.Prepare((&http.Request{}).WithContext(ctx)) +} + +// CheckNameAvailabilitySender sends the CheckNameAvailability request. The method will close the +// http.Response Body if it receives an error. +func (client CapacitiesClient) CheckNameAvailabilitySender(req *http.Request) (*http.Response, error) { + return autorest.SendWithSender(client, req, + azure.DoRetryWithRegistration(client.Client)) +} + +// CheckNameAvailabilityResponder handles the response to the CheckNameAvailability request. The method always +// closes the http.Response Body. +func (client CapacitiesClient) CheckNameAvailabilityResponder(resp *http.Response) (result CheckCapacityNameAvailabilityResult, err error) { + err = autorest.Respond( + resp, + client.ByInspecting(), + azure.WithErrorUnlessStatusCode(http.StatusOK), + autorest.ByUnmarshallingJSON(&result), + autorest.ByClosing()) + result.Response = autorest.Response{Response: resp} + return +} + // Create provisions the specified Dedicated capacity based on the configuration specified in the request. // Parameters: // resourceGroupName - the name of the Azure Resource group of which a given PowerBIDedicated capacity is part. diff --git a/services/powerbidedicated/mgmt/2017-10-01/powerbidedicated/models.go b/services/powerbidedicated/mgmt/2017-10-01/powerbidedicated/models.go index 701bc7fe1bb8..9ddb0841baa7 100644 --- a/services/powerbidedicated/mgmt/2017-10-01/powerbidedicated/models.go +++ b/services/powerbidedicated/mgmt/2017-10-01/powerbidedicated/models.go @@ -230,6 +230,25 @@ func (future *CapacitiesUpdateFuture) Result(client CapacitiesClient) (dc Dedica return } +// CheckCapacityNameAvailabilityParameters details of capacity name request body. +type CheckCapacityNameAvailabilityParameters struct { + // Name - Name for checking availability. + Name *string `json:"name,omitempty"` + // Type - The resource type of powerbi dedicated. + Type *string `json:"type,omitempty"` +} + +// CheckCapacityNameAvailabilityResult the checking result of capacity name availibility. +type CheckCapacityNameAvailabilityResult struct { + autorest.Response `json:"-"` + // NameAvailable - Indicator of availablity of the capacity name. + NameAvailable *bool `json:"nameAvailable,omitempty"` + // Reason - The reason of unavailability. + Reason *string `json:"reason,omitempty"` + // Message - The detailed message of the request unavailability. + Message *string `json:"message,omitempty"` +} + // DedicatedCapacities an array of Dedicated capacities resources. type DedicatedCapacities struct { autorest.Response `json:"-"`