2017-08-05 18:30:20 +00:00
|
|
|
package notificationhubs
|
|
|
|
|
|
|
|
// Copyright (c) Microsoft and contributors. All rights reserved.
|
|
|
|
//
|
|
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
// you may not use this file except in compliance with the License.
|
|
|
|
// You may obtain a copy of the License at
|
|
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
//
|
|
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
//
|
|
|
|
// See the License for the specific language governing permissions and
|
|
|
|
// limitations under the License.
|
|
|
|
//
|
2017-10-01 08:13:39 +00:00
|
|
|
// Code generated by Microsoft (R) AutoRest Code Generator.
|
|
|
|
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
2017-08-05 18:30:20 +00:00
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/Azure/go-autorest/autorest"
|
|
|
|
"github.com/Azure/go-autorest/autorest/date"
|
|
|
|
"github.com/Azure/go-autorest/autorest/to"
|
|
|
|
"net/http"
|
|
|
|
)
|
|
|
|
|
|
|
|
// AccessRights enumerates the values for access rights.
|
|
|
|
type AccessRights string
|
|
|
|
|
|
|
|
const (
|
|
|
|
// Listen specifies the listen state for access rights.
|
|
|
|
Listen AccessRights = "Listen"
|
|
|
|
// Manage specifies the manage state for access rights.
|
|
|
|
Manage AccessRights = "Manage"
|
|
|
|
// Send specifies the send state for access rights.
|
|
|
|
Send AccessRights = "Send"
|
|
|
|
)
|
|
|
|
|
|
|
|
// NamespaceType enumerates the values for namespace type.
|
|
|
|
type NamespaceType string
|
|
|
|
|
|
|
|
const (
|
|
|
|
// Messaging specifies the messaging state for namespace type.
|
|
|
|
Messaging NamespaceType = "Messaging"
|
|
|
|
// NotificationHub specifies the notification hub state for namespace type.
|
|
|
|
NotificationHub NamespaceType = "NotificationHub"
|
|
|
|
)
|
|
|
|
|
|
|
|
// SkuName enumerates the values for sku name.
|
|
|
|
type SkuName string
|
|
|
|
|
|
|
|
const (
|
|
|
|
// Basic specifies the basic state for sku name.
|
|
|
|
Basic SkuName = "Basic"
|
|
|
|
// Free specifies the free state for sku name.
|
|
|
|
Free SkuName = "Free"
|
|
|
|
// Standard specifies the standard state for sku name.
|
|
|
|
Standard SkuName = "Standard"
|
|
|
|
)
|
|
|
|
|
|
|
|
// AdmCredential is description of a NotificationHub AdmCredential.
|
|
|
|
type AdmCredential struct {
|
|
|
|
*AdmCredentialProperties `json:"properties,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// AdmCredentialProperties is description of a NotificationHub AdmCredential.
|
|
|
|
type AdmCredentialProperties struct {
|
|
|
|
ClientID *string `json:"clientId,omitempty"`
|
|
|
|
ClientSecret *string `json:"clientSecret,omitempty"`
|
|
|
|
AuthTokenURL *string `json:"authTokenUrl,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// ApnsCredential is description of a NotificationHub ApnsCredential.
|
|
|
|
type ApnsCredential struct {
|
|
|
|
*ApnsCredentialProperties `json:"properties,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// ApnsCredentialProperties is description of a NotificationHub ApnsCredential.
|
|
|
|
type ApnsCredentialProperties struct {
|
|
|
|
ApnsCertificate *string `json:"apnsCertificate,omitempty"`
|
|
|
|
CertificateKey *string `json:"certificateKey,omitempty"`
|
|
|
|
Endpoint *string `json:"endpoint,omitempty"`
|
|
|
|
Thumbprint *string `json:"thumbprint,omitempty"`
|
|
|
|
KeyID *string `json:"keyId,omitempty"`
|
|
|
|
AppName *string `json:"appName,omitempty"`
|
|
|
|
AppID *string `json:"appId,omitempty"`
|
|
|
|
Token *string `json:"token,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// BaiduCredential is description of a NotificationHub BaiduCredential.
|
|
|
|
type BaiduCredential struct {
|
|
|
|
*BaiduCredentialProperties `json:"properties,omitempty"`
|
|
|
|
}
|
|
|
|
|
2017-10-01 08:13:39 +00:00
|
|
|
// BaiduCredentialProperties is description of a NotificationHub BaiduCredential.
|
2017-08-05 18:30:20 +00:00
|
|
|
type BaiduCredentialProperties struct {
|
|
|
|
BaiduAPIKey *string `json:"baiduApiKey,omitempty"`
|
|
|
|
BaiduEndPoint *string `json:"baiduEndPoint,omitempty"`
|
|
|
|
BaiduSecretKey *string `json:"baiduSecretKey,omitempty"`
|
|
|
|
}
|
|
|
|
|
2017-10-01 08:13:39 +00:00
|
|
|
// CheckAvailabilityParameters is parameters supplied to the Check Name Availability for Namespace and
|
|
|
|
// NotificationHubs.
|
2017-08-05 18:30:20 +00:00
|
|
|
type CheckAvailabilityParameters struct {
|
|
|
|
ID *string `json:"id,omitempty"`
|
|
|
|
Name *string `json:"name,omitempty"`
|
|
|
|
Type *string `json:"type,omitempty"`
|
|
|
|
Location *string `json:"location,omitempty"`
|
|
|
|
Tags *map[string]*string `json:"tags,omitempty"`
|
|
|
|
Sku *Sku `json:"sku,omitempty"`
|
|
|
|
IsAvailiable *bool `json:"isAvailiable,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// CheckAvailabilityResult is description of a CheckAvailibility resource.
|
|
|
|
type CheckAvailabilityResult struct {
|
|
|
|
autorest.Response `json:"-"`
|
|
|
|
ID *string `json:"id,omitempty"`
|
|
|
|
Name *string `json:"name,omitempty"`
|
|
|
|
Type *string `json:"type,omitempty"`
|
|
|
|
Location *string `json:"location,omitempty"`
|
|
|
|
Tags *map[string]*string `json:"tags,omitempty"`
|
|
|
|
Sku *Sku `json:"sku,omitempty"`
|
|
|
|
IsAvailiable *bool `json:"isAvailiable,omitempty"`
|
|
|
|
}
|
|
|
|
|
2017-10-01 08:13:39 +00:00
|
|
|
// CheckNameAvailabilityRequestParameters is parameters supplied to the Check Name Availability for Namespace and
|
|
|
|
// NotificationHubs.
|
|
|
|
type CheckNameAvailabilityRequestParameters struct {
|
|
|
|
Name *string `json:"Name,omitempty"`
|
|
|
|
Type *string `json:"Type,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// CheckNameAvailabilityResponse is
|
|
|
|
type CheckNameAvailabilityResponse struct {
|
|
|
|
autorest.Response `json:"-"`
|
|
|
|
NameAvailable *bool `json:"NameAvailable,omitempty"`
|
|
|
|
Reason *string `json:"Reason,omitempty"`
|
|
|
|
Message *string `json:"Message,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// CreateOrUpdateParameters is parameters supplied to the CreateOrUpdate NotificationHub operation.
|
2017-08-05 18:30:20 +00:00
|
|
|
type CreateOrUpdateParameters struct {
|
|
|
|
ID *string `json:"id,omitempty"`
|
|
|
|
Name *string `json:"name,omitempty"`
|
|
|
|
Type *string `json:"type,omitempty"`
|
|
|
|
Location *string `json:"location,omitempty"`
|
|
|
|
Tags *map[string]*string `json:"tags,omitempty"`
|
|
|
|
Sku *Sku `json:"sku,omitempty"`
|
|
|
|
*Properties `json:"properties,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// GcmCredential is description of a NotificationHub GcmCredential.
|
|
|
|
type GcmCredential struct {
|
|
|
|
*GcmCredentialProperties `json:"properties,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// GcmCredentialProperties is description of a NotificationHub GcmCredential.
|
|
|
|
type GcmCredentialProperties struct {
|
|
|
|
GcmEndpoint *string `json:"gcmEndpoint,omitempty"`
|
|
|
|
GoogleAPIKey *string `json:"googleApiKey,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// ListResult is the response of the List NotificationHub operation.
|
|
|
|
type ListResult struct {
|
|
|
|
autorest.Response `json:"-"`
|
|
|
|
Value *[]ResourceType `json:"value,omitempty"`
|
|
|
|
NextLink *string `json:"nextLink,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// ListResultPreparer prepares a request to retrieve the next set of results. It returns
|
|
|
|
// nil if no more results exist.
|
|
|
|
func (client ListResult) ListResultPreparer() (*http.Request, error) {
|
|
|
|
if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 {
|
|
|
|
return nil, nil
|
|
|
|
}
|
|
|
|
return autorest.Prepare(&http.Request{},
|
|
|
|
autorest.AsJSON(),
|
|
|
|
autorest.AsGet(),
|
|
|
|
autorest.WithBaseURL(to.String(client.NextLink)))
|
|
|
|
}
|
|
|
|
|
|
|
|
// MpnsCredential is description of a NotificationHub MpnsCredential.
|
|
|
|
type MpnsCredential struct {
|
|
|
|
*MpnsCredentialProperties `json:"properties,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// MpnsCredentialProperties is description of a NotificationHub MpnsCredential.
|
|
|
|
type MpnsCredentialProperties struct {
|
|
|
|
MpnsCertificate *string `json:"mpnsCertificate,omitempty"`
|
|
|
|
CertificateKey *string `json:"certificateKey,omitempty"`
|
|
|
|
Thumbprint *string `json:"thumbprint,omitempty"`
|
|
|
|
}
|
|
|
|
|
2017-10-01 08:13:39 +00:00
|
|
|
// NamespaceCreateOrUpdateParameters is parameters supplied to the CreateOrUpdate Namespace operation.
|
2017-08-05 18:30:20 +00:00
|
|
|
type NamespaceCreateOrUpdateParameters struct {
|
|
|
|
ID *string `json:"id,omitempty"`
|
|
|
|
Name *string `json:"name,omitempty"`
|
|
|
|
Type *string `json:"type,omitempty"`
|
|
|
|
Location *string `json:"location,omitempty"`
|
|
|
|
Tags *map[string]*string `json:"tags,omitempty"`
|
|
|
|
Sku *Sku `json:"sku,omitempty"`
|
|
|
|
*NamespaceProperties `json:"properties,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// NamespaceListResult is the response of the List Namespace operation.
|
|
|
|
type NamespaceListResult struct {
|
|
|
|
autorest.Response `json:"-"`
|
|
|
|
Value *[]NamespaceResource `json:"value,omitempty"`
|
|
|
|
NextLink *string `json:"nextLink,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// NamespaceListResultPreparer prepares a request to retrieve the next set of results. It returns
|
|
|
|
// nil if no more results exist.
|
|
|
|
func (client NamespaceListResult) NamespaceListResultPreparer() (*http.Request, error) {
|
|
|
|
if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 {
|
|
|
|
return nil, nil
|
|
|
|
}
|
|
|
|
return autorest.Prepare(&http.Request{},
|
|
|
|
autorest.AsJSON(),
|
|
|
|
autorest.AsGet(),
|
|
|
|
autorest.WithBaseURL(to.String(client.NextLink)))
|
|
|
|
}
|
|
|
|
|
2017-10-01 08:13:39 +00:00
|
|
|
// NamespacePatchParameters is parameters supplied to the Patch Namespace operation.
|
2017-08-05 18:30:20 +00:00
|
|
|
type NamespacePatchParameters struct {
|
|
|
|
Tags *map[string]*string `json:"tags,omitempty"`
|
|
|
|
Sku *Sku `json:"sku,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// NamespaceProperties is namespace properties.
|
|
|
|
type NamespaceProperties struct {
|
|
|
|
Name *string `json:"name,omitempty"`
|
|
|
|
ProvisioningState *string `json:"provisioningState,omitempty"`
|
|
|
|
Region *string `json:"region,omitempty"`
|
|
|
|
Status *string `json:"status,omitempty"`
|
|
|
|
CreatedAt *date.Time `json:"createdAt,omitempty"`
|
|
|
|
ServiceBusEndpoint *string `json:"serviceBusEndpoint,omitempty"`
|
|
|
|
SubscriptionID *string `json:"subscriptionId,omitempty"`
|
|
|
|
ScaleUnit *string `json:"scaleUnit,omitempty"`
|
|
|
|
Enabled *bool `json:"enabled,omitempty"`
|
|
|
|
Critical *bool `json:"critical,omitempty"`
|
|
|
|
NamespaceType NamespaceType `json:"namespaceType,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// NamespaceResource is description of a Namespace resource.
|
|
|
|
type NamespaceResource struct {
|
|
|
|
autorest.Response `json:"-"`
|
|
|
|
ID *string `json:"id,omitempty"`
|
|
|
|
Name *string `json:"name,omitempty"`
|
|
|
|
Type *string `json:"type,omitempty"`
|
|
|
|
Location *string `json:"location,omitempty"`
|
|
|
|
Tags *map[string]*string `json:"tags,omitempty"`
|
|
|
|
Sku *Sku `json:"sku,omitempty"`
|
|
|
|
*NamespaceProperties `json:"properties,omitempty"`
|
|
|
|
}
|
|
|
|
|
2017-10-01 08:13:39 +00:00
|
|
|
// PnsCredentialsProperties is description of a NotificationHub PNS Credentials.
|
2017-08-05 18:30:20 +00:00
|
|
|
type PnsCredentialsProperties struct {
|
|
|
|
ApnsCredential *ApnsCredential `json:"apnsCredential,omitempty"`
|
|
|
|
WnsCredential *WnsCredential `json:"wnsCredential,omitempty"`
|
|
|
|
GcmCredential *GcmCredential `json:"gcmCredential,omitempty"`
|
|
|
|
MpnsCredential *MpnsCredential `json:"mpnsCredential,omitempty"`
|
|
|
|
AdmCredential *AdmCredential `json:"admCredential,omitempty"`
|
|
|
|
BaiduCredential *BaiduCredential `json:"baiduCredential,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// PnsCredentialsResource is description of a NotificationHub PNS Credentials.
|
|
|
|
type PnsCredentialsResource struct {
|
|
|
|
autorest.Response `json:"-"`
|
|
|
|
ID *string `json:"id,omitempty"`
|
|
|
|
Name *string `json:"name,omitempty"`
|
|
|
|
Type *string `json:"type,omitempty"`
|
|
|
|
Location *string `json:"location,omitempty"`
|
|
|
|
Tags *map[string]*string `json:"tags,omitempty"`
|
|
|
|
Sku *Sku `json:"sku,omitempty"`
|
|
|
|
*PnsCredentialsProperties `json:"properties,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// PolicykeyResource is namespace/NotificationHub Regenerate Keys
|
|
|
|
type PolicykeyResource struct {
|
|
|
|
PolicyKey *string `json:"policyKey,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// Properties is notificationHub properties.
|
|
|
|
type Properties struct {
|
|
|
|
Name *string `json:"name,omitempty"`
|
|
|
|
RegistrationTTL *string `json:"registrationTtl,omitempty"`
|
|
|
|
AuthorizationRules *[]SharedAccessAuthorizationRuleProperties `json:"authorizationRules,omitempty"`
|
|
|
|
ApnsCredential *ApnsCredential `json:"apnsCredential,omitempty"`
|
|
|
|
WnsCredential *WnsCredential `json:"wnsCredential,omitempty"`
|
|
|
|
GcmCredential *GcmCredential `json:"gcmCredential,omitempty"`
|
|
|
|
MpnsCredential *MpnsCredential `json:"mpnsCredential,omitempty"`
|
|
|
|
AdmCredential *AdmCredential `json:"admCredential,omitempty"`
|
|
|
|
BaiduCredential *BaiduCredential `json:"baiduCredential,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// Resource is
|
|
|
|
type Resource struct {
|
|
|
|
ID *string `json:"id,omitempty"`
|
|
|
|
Name *string `json:"name,omitempty"`
|
|
|
|
Type *string `json:"type,omitempty"`
|
|
|
|
Location *string `json:"location,omitempty"`
|
|
|
|
Tags *map[string]*string `json:"tags,omitempty"`
|
|
|
|
Sku *Sku `json:"sku,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// ResourceListKeys is namespace/NotificationHub Connection String
|
|
|
|
type ResourceListKeys struct {
|
|
|
|
autorest.Response `json:"-"`
|
|
|
|
PrimaryConnectionString *string `json:"primaryConnectionString,omitempty"`
|
|
|
|
SecondaryConnectionString *string `json:"secondaryConnectionString,omitempty"`
|
|
|
|
PrimaryKey *string `json:"primaryKey,omitempty"`
|
|
|
|
SecondaryKey *string `json:"secondaryKey,omitempty"`
|
|
|
|
KeyName *string `json:"keyName,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// ResourceType is description of a NotificationHub Resource.
|
|
|
|
type ResourceType struct {
|
|
|
|
autorest.Response `json:"-"`
|
|
|
|
ID *string `json:"id,omitempty"`
|
|
|
|
Name *string `json:"name,omitempty"`
|
|
|
|
Type *string `json:"type,omitempty"`
|
|
|
|
Location *string `json:"location,omitempty"`
|
|
|
|
Tags *map[string]*string `json:"tags,omitempty"`
|
|
|
|
Sku *Sku `json:"sku,omitempty"`
|
|
|
|
*Properties `json:"properties,omitempty"`
|
|
|
|
}
|
|
|
|
|
2017-10-01 08:13:39 +00:00
|
|
|
// SharedAccessAuthorizationRuleCreateOrUpdateParameters is parameters supplied to the CreateOrUpdate Namespace
|
|
|
|
// AuthorizationRules.
|
2017-08-05 18:30:20 +00:00
|
|
|
type SharedAccessAuthorizationRuleCreateOrUpdateParameters struct {
|
|
|
|
ID *string `json:"id,omitempty"`
|
|
|
|
Name *string `json:"name,omitempty"`
|
|
|
|
Type *string `json:"type,omitempty"`
|
|
|
|
Location *string `json:"location,omitempty"`
|
|
|
|
Tags *map[string]*string `json:"tags,omitempty"`
|
|
|
|
Sku *Sku `json:"sku,omitempty"`
|
|
|
|
Properties *SharedAccessAuthorizationRuleProperties `json:"properties,omitempty"`
|
|
|
|
}
|
|
|
|
|
2017-10-01 08:13:39 +00:00
|
|
|
// SharedAccessAuthorizationRuleListResult is the response of the List Namespace operation.
|
2017-08-05 18:30:20 +00:00
|
|
|
type SharedAccessAuthorizationRuleListResult struct {
|
|
|
|
autorest.Response `json:"-"`
|
|
|
|
Value *[]SharedAccessAuthorizationRuleResource `json:"value,omitempty"`
|
|
|
|
NextLink *string `json:"nextLink,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// SharedAccessAuthorizationRuleListResultPreparer prepares a request to retrieve the next set of results. It returns
|
|
|
|
// nil if no more results exist.
|
|
|
|
func (client SharedAccessAuthorizationRuleListResult) SharedAccessAuthorizationRuleListResultPreparer() (*http.Request, error) {
|
|
|
|
if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 {
|
|
|
|
return nil, nil
|
|
|
|
}
|
|
|
|
return autorest.Prepare(&http.Request{},
|
|
|
|
autorest.AsJSON(),
|
|
|
|
autorest.AsGet(),
|
|
|
|
autorest.WithBaseURL(to.String(client.NextLink)))
|
|
|
|
}
|
|
|
|
|
2017-10-01 08:13:39 +00:00
|
|
|
// SharedAccessAuthorizationRuleProperties is sharedAccessAuthorizationRule properties.
|
2017-08-05 18:30:20 +00:00
|
|
|
type SharedAccessAuthorizationRuleProperties struct {
|
|
|
|
Rights *[]AccessRights `json:"rights,omitempty"`
|
|
|
|
}
|
|
|
|
|
2017-10-01 08:13:39 +00:00
|
|
|
// SharedAccessAuthorizationRuleResource is description of a Namespace AuthorizationRules.
|
2017-08-05 18:30:20 +00:00
|
|
|
type SharedAccessAuthorizationRuleResource struct {
|
|
|
|
autorest.Response `json:"-"`
|
|
|
|
ID *string `json:"id,omitempty"`
|
|
|
|
Name *string `json:"name,omitempty"`
|
|
|
|
Type *string `json:"type,omitempty"`
|
|
|
|
Location *string `json:"location,omitempty"`
|
|
|
|
Tags *map[string]*string `json:"tags,omitempty"`
|
|
|
|
Sku *Sku `json:"sku,omitempty"`
|
|
|
|
*SharedAccessAuthorizationRuleProperties `json:"properties,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// Sku is the Sku description for a namespace
|
|
|
|
type Sku struct {
|
|
|
|
Name SkuName `json:"name,omitempty"`
|
|
|
|
Tier *string `json:"tier,omitempty"`
|
|
|
|
Size *string `json:"size,omitempty"`
|
|
|
|
Family *string `json:"family,omitempty"`
|
|
|
|
Capacity *int32 `json:"capacity,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// SubResource is
|
|
|
|
type SubResource struct {
|
|
|
|
ID *string `json:"id,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// WnsCredential is description of a NotificationHub WnsCredential.
|
|
|
|
type WnsCredential struct {
|
|
|
|
*WnsCredentialProperties `json:"properties,omitempty"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// WnsCredentialProperties is description of a NotificationHub WnsCredential.
|
|
|
|
type WnsCredentialProperties struct {
|
|
|
|
PackageSid *string `json:"packageSid,omitempty"`
|
|
|
|
SecretKey *string `json:"secretKey,omitempty"`
|
|
|
|
WindowsLiveEndpoint *string `json:"windowsLiveEndpoint,omitempty"`
|
|
|
|
}
|