rclone/vendor/github.com/Azure/azure-sdk-for-go/arm/iothub/models.go

540 lines
22 KiB
Go
Raw Normal View History

package iothub
// 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.
//
// Code generated by Microsoft (R) AutoRest Code Generator 1.0.1.0
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
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 (
// DeviceConnect specifies the device connect state for access rights.
DeviceConnect AccessRights = "DeviceConnect"
// RegistryRead specifies the registry read state for access rights.
RegistryRead AccessRights = "RegistryRead"
// RegistryReadDeviceConnect specifies the registry read device connect
// state for access rights.
RegistryReadDeviceConnect AccessRights = "RegistryRead, DeviceConnect"
// RegistryReadRegistryWrite specifies the registry read registry write
// state for access rights.
RegistryReadRegistryWrite AccessRights = "RegistryRead, RegistryWrite"
// RegistryReadRegistryWriteDeviceConnect specifies the registry read
// registry write device connect state for access rights.
RegistryReadRegistryWriteDeviceConnect AccessRights = "RegistryRead, RegistryWrite, DeviceConnect"
// RegistryReadRegistryWriteServiceConnect specifies the registry read
// registry write service connect state for access rights.
RegistryReadRegistryWriteServiceConnect AccessRights = "RegistryRead, RegistryWrite, ServiceConnect"
// RegistryReadRegistryWriteServiceConnectDeviceConnect specifies the
// registry read registry write service connect device connect state for
// access rights.
RegistryReadRegistryWriteServiceConnectDeviceConnect AccessRights = "RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect"
// RegistryReadServiceConnect specifies the registry read service connect
// state for access rights.
RegistryReadServiceConnect AccessRights = "RegistryRead, ServiceConnect"
// RegistryReadServiceConnectDeviceConnect specifies the registry read
// service connect device connect state for access rights.
RegistryReadServiceConnectDeviceConnect AccessRights = "RegistryRead, ServiceConnect, DeviceConnect"
// RegistryWrite specifies the registry write state for access rights.
RegistryWrite AccessRights = "RegistryWrite"
// RegistryWriteDeviceConnect specifies the registry write device connect
// state for access rights.
RegistryWriteDeviceConnect AccessRights = "RegistryWrite, DeviceConnect"
// RegistryWriteServiceConnect specifies the registry write service connect
// state for access rights.
RegistryWriteServiceConnect AccessRights = "RegistryWrite, ServiceConnect"
// RegistryWriteServiceConnectDeviceConnect specifies the registry write
// service connect device connect state for access rights.
RegistryWriteServiceConnectDeviceConnect AccessRights = "RegistryWrite, ServiceConnect, DeviceConnect"
// ServiceConnect specifies the service connect state for access rights.
ServiceConnect AccessRights = "ServiceConnect"
// ServiceConnectDeviceConnect specifies the service connect device connect
// state for access rights.
ServiceConnectDeviceConnect AccessRights = "ServiceConnect, DeviceConnect"
)
// Capabilities enumerates the values for capabilities.
type Capabilities string
const (
// DeviceManagement specifies the device management state for capabilities.
DeviceManagement Capabilities = "DeviceManagement"
// None specifies the none state for capabilities.
None Capabilities = "None"
)
// IPFilterActionType enumerates the values for ip filter action type.
type IPFilterActionType string
const (
// Accept specifies the accept state for ip filter action type.
Accept IPFilterActionType = "Accept"
// Reject specifies the reject state for ip filter action type.
Reject IPFilterActionType = "Reject"
)
// JobStatus enumerates the values for job status.
type JobStatus string
const (
// Cancelled specifies the cancelled state for job status.
Cancelled JobStatus = "cancelled"
// Completed specifies the completed state for job status.
Completed JobStatus = "completed"
// Enqueued specifies the enqueued state for job status.
Enqueued JobStatus = "enqueued"
// Failed specifies the failed state for job status.
Failed JobStatus = "failed"
// Running specifies the running state for job status.
Running JobStatus = "running"
// Unknown specifies the unknown state for job status.
Unknown JobStatus = "unknown"
)
// JobType enumerates the values for job type.
type JobType string
const (
// JobTypeBackup specifies the job type backup state for job type.
JobTypeBackup JobType = "backup"
// JobTypeExport specifies the job type export state for job type.
JobTypeExport JobType = "export"
// JobTypeFactoryResetDevice specifies the job type factory reset device
// state for job type.
JobTypeFactoryResetDevice JobType = "factoryResetDevice"
// JobTypeFirmwareUpdate specifies the job type firmware update state for
// job type.
JobTypeFirmwareUpdate JobType = "firmwareUpdate"
// JobTypeImport specifies the job type import state for job type.
JobTypeImport JobType = "import"
// JobTypeReadDeviceProperties specifies the job type read device
// properties state for job type.
JobTypeReadDeviceProperties JobType = "readDeviceProperties"
// JobTypeRebootDevice specifies the job type reboot device state for job
// type.
JobTypeRebootDevice JobType = "rebootDevice"
// JobTypeUnknown specifies the job type unknown state for job type.
JobTypeUnknown JobType = "unknown"
// JobTypeUpdateDeviceConfiguration specifies the job type update device
// configuration state for job type.
JobTypeUpdateDeviceConfiguration JobType = "updateDeviceConfiguration"
// JobTypeWriteDeviceProperties specifies the job type write device
// properties state for job type.
JobTypeWriteDeviceProperties JobType = "writeDeviceProperties"
)
// NameUnavailabilityReason enumerates the values for name unavailability
// reason.
type NameUnavailabilityReason string
const (
// AlreadyExists specifies the already exists state for name unavailability
// reason.
AlreadyExists NameUnavailabilityReason = "AlreadyExists"
// Invalid specifies the invalid state for name unavailability reason.
Invalid NameUnavailabilityReason = "Invalid"
)
// OperationMonitoringLevel enumerates the values for operation monitoring
// level.
type OperationMonitoringLevel string
const (
// OperationMonitoringLevelError specifies the operation monitoring level
// error state for operation monitoring level.
OperationMonitoringLevelError OperationMonitoringLevel = "Error"
// OperationMonitoringLevelErrorInformation specifies the operation
// monitoring level error information state for operation monitoring level.
OperationMonitoringLevelErrorInformation OperationMonitoringLevel = "Error, Information"
// OperationMonitoringLevelInformation specifies the operation monitoring
// level information state for operation monitoring level.
OperationMonitoringLevelInformation OperationMonitoringLevel = "Information"
// OperationMonitoringLevelNone specifies the operation monitoring level
// none state for operation monitoring level.
OperationMonitoringLevelNone OperationMonitoringLevel = "None"
)
// ScaleType enumerates the values for scale type.
type ScaleType string
const (
// ScaleTypeAutomatic specifies the scale type automatic state for scale
// type.
ScaleTypeAutomatic ScaleType = "Automatic"
// ScaleTypeManual specifies the scale type manual state for scale type.
ScaleTypeManual ScaleType = "Manual"
// ScaleTypeNone specifies the scale type none state for scale type.
ScaleTypeNone ScaleType = "None"
)
// Sku enumerates the values for sku.
type Sku string
const (
// F1 specifies the f1 state for sku.
F1 Sku = "F1"
// S1 specifies the s1 state for sku.
S1 Sku = "S1"
// S2 specifies the s2 state for sku.
S2 Sku = "S2"
// S3 specifies the s3 state for sku.
S3 Sku = "S3"
)
// SkuTier enumerates the values for sku tier.
type SkuTier string
const (
// Free specifies the free state for sku tier.
Free SkuTier = "Free"
// Standard specifies the standard state for sku tier.
Standard SkuTier = "Standard"
)
// Capacity is ioT Hub capacity information.
type Capacity struct {
Minimum *int64 `json:"minimum,omitempty"`
Maximum *int64 `json:"maximum,omitempty"`
Default *int64 `json:"default,omitempty"`
ScaleType ScaleType `json:"scaleType,omitempty"`
}
// CloudToDeviceProperties is the IoT hub cloud-to-device messaging properties.
type CloudToDeviceProperties struct {
MaxDeliveryCount *int32 `json:"maxDeliveryCount,omitempty"`
DefaultTTLAsIso8601 *string `json:"defaultTtlAsIso8601,omitempty"`
Feedback *FeedbackProperties `json:"feedback,omitempty"`
}
// Description is the description of the IoT hub.
type Description 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"`
Subscriptionid *string `json:"subscriptionid,omitempty"`
Resourcegroup *string `json:"resourcegroup,omitempty"`
Etag *string `json:"etag,omitempty"`
Properties *Properties `json:"properties,omitempty"`
Sku *SkuInfo `json:"sku,omitempty"`
}
// DescriptionListResult is the JSON-serialized array of IotHubDescription
// objects with a next link.
type DescriptionListResult struct {
autorest.Response `json:"-"`
Value *[]Description `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// DescriptionListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client DescriptionListResult) DescriptionListResultPreparer() (*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)))
}
// ErrorDetails is error details.
type ErrorDetails struct {
Code *string `json:"Code,omitempty"`
HTTPStatusCode *string `json:"HttpStatusCode,omitempty"`
Message *string `json:"Message,omitempty"`
Details *string `json:"Details,omitempty"`
}
// EventHubConsumerGroupInfo is the properties of the EventHubConsumerGroupInfo
// object.
type EventHubConsumerGroupInfo struct {
autorest.Response `json:"-"`
Tags *map[string]*string `json:"tags,omitempty"`
ID *string `json:"id,omitempty"`
Name *string `json:"name,omitempty"`
}
// EventHubConsumerGroupsListResult is the JSON-serialized array of Event
// Hub-compatible consumer group names with a next link.
type EventHubConsumerGroupsListResult struct {
autorest.Response `json:"-"`
Value *[]string `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// EventHubConsumerGroupsListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client EventHubConsumerGroupsListResult) EventHubConsumerGroupsListResultPreparer() (*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)))
}
// EventHubProperties is the properties of the provisioned Event Hub-compatible
// endpoint used by the IoT hub.
type EventHubProperties struct {
RetentionTimeInDays *int64 `json:"retentionTimeInDays,omitempty"`
PartitionCount *int32 `json:"partitionCount,omitempty"`
PartitionIds *[]string `json:"partitionIds,omitempty"`
Path *string `json:"path,omitempty"`
Endpoint *string `json:"endpoint,omitempty"`
}
// ExportDevicesRequest is use to provide parameters when requesting an export
// of all devices in the IoT hub.
type ExportDevicesRequest struct {
ExportBlobContainerURI *string `json:"ExportBlobContainerUri,omitempty"`
ExcludeKeys *bool `json:"ExcludeKeys,omitempty"`
}
// FeedbackProperties is the properties of the feedback queue for
// cloud-to-device messages.
type FeedbackProperties struct {
LockDurationAsIso8601 *string `json:"lockDurationAsIso8601,omitempty"`
TTLAsIso8601 *string `json:"ttlAsIso8601,omitempty"`
MaxDeliveryCount *int32 `json:"maxDeliveryCount,omitempty"`
}
// ImportDevicesRequest is use to provide parameters when requesting an import
// of all devices in the hub.
type ImportDevicesRequest struct {
InputBlobContainerURI *string `json:"InputBlobContainerUri,omitempty"`
OutputBlobContainerURI *string `json:"OutputBlobContainerUri,omitempty"`
}
// IPFilterRule is the IP filter rules for the IoT hub.
type IPFilterRule struct {
FilterName *string `json:"filterName,omitempty"`
Action IPFilterActionType `json:"action,omitempty"`
IPMask *string `json:"ipMask,omitempty"`
}
// JobResponse is the properties of the Job Response object.
type JobResponse struct {
autorest.Response `json:"-"`
JobID *string `json:"jobId,omitempty"`
StartTimeUtc *date.TimeRFC1123 `json:"startTimeUtc,omitempty"`
EndTimeUtc *date.TimeRFC1123 `json:"endTimeUtc,omitempty"`
Type JobType `json:"type,omitempty"`
Status JobStatus `json:"status,omitempty"`
FailureReason *string `json:"failureReason,omitempty"`
StatusMessage *string `json:"statusMessage,omitempty"`
ParentJobID *string `json:"parentJobId,omitempty"`
}
// JobResponseListResult is the JSON-serialized array of JobResponse objects
// with a next link.
type JobResponseListResult struct {
autorest.Response `json:"-"`
Value *[]JobResponse `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// JobResponseListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client JobResponseListResult) JobResponseListResultPreparer() (*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)))
}
// MessagingEndpointProperties is the properties of the messaging endpoints
// used by this IoT hub.
type MessagingEndpointProperties struct {
LockDurationAsIso8601 *string `json:"lockDurationAsIso8601,omitempty"`
TTLAsIso8601 *string `json:"ttlAsIso8601,omitempty"`
MaxDeliveryCount *int32 `json:"maxDeliveryCount,omitempty"`
}
// NameAvailabilityInfo is the properties indicating whether a given IoT hub
// name is available.
type NameAvailabilityInfo struct {
autorest.Response `json:"-"`
NameAvailable *bool `json:"nameAvailable,omitempty"`
Reason NameUnavailabilityReason `json:"reason,omitempty"`
Message *string `json:"message,omitempty"`
}
// OperationInputs is input values.
type OperationInputs struct {
Name *string `json:"Name,omitempty"`
}
// OperationsMonitoringProperties is the operations monitoring properties for
// the IoT hub. The possible keys to the dictionary are Connections,
// DeviceTelemetry, C2DCommands, DeviceIdentityOperations,
// FileUploadOperations.
type OperationsMonitoringProperties struct {
Events *map[string]*OperationMonitoringLevel `json:"events,omitempty"`
}
// Properties is the properties of an IoT hub.
type Properties struct {
AuthorizationPolicies *[]SharedAccessSignatureAuthorizationRule `json:"authorizationPolicies,omitempty"`
IPFilterRules *[]IPFilterRule `json:"ipFilterRules,omitempty"`
ProvisioningState *string `json:"provisioningState,omitempty"`
HostName *string `json:"hostName,omitempty"`
EventHubEndpoints *map[string]*EventHubProperties `json:"eventHubEndpoints,omitempty"`
StorageEndpoints *map[string]*StorageEndpointProperties `json:"storageEndpoints,omitempty"`
MessagingEndpoints *map[string]*MessagingEndpointProperties `json:"messagingEndpoints,omitempty"`
EnableFileUploadNotifications *bool `json:"enableFileUploadNotifications,omitempty"`
CloudToDevice *CloudToDeviceProperties `json:"cloudToDevice,omitempty"`
Comments *string `json:"comments,omitempty"`
OperationsMonitoringProperties *OperationsMonitoringProperties `json:"operationsMonitoringProperties,omitempty"`
Features Capabilities `json:"features,omitempty"`
}
// QuotaMetricInfo is quota metrics properties.
type QuotaMetricInfo struct {
Name *string `json:"Name,omitempty"`
CurrentValue *int64 `json:"CurrentValue,omitempty"`
MaxValue *int64 `json:"MaxValue,omitempty"`
}
// QuotaMetricInfoListResult is the JSON-serialized array of
// IotHubQuotaMetricInfo objects with a next link.
type QuotaMetricInfoListResult struct {
autorest.Response `json:"-"`
Value *[]QuotaMetricInfo `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// QuotaMetricInfoListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client QuotaMetricInfoListResult) QuotaMetricInfoListResultPreparer() (*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)))
}
// RegistryStatistics is identity registry statistics.
type RegistryStatistics struct {
autorest.Response `json:"-"`
TotalDeviceCount *int64 `json:"totalDeviceCount,omitempty"`
EnabledDeviceCount *int64 `json:"enabledDeviceCount,omitempty"`
DisabledDeviceCount *int64 `json:"disabledDeviceCount,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"`
}
// SetObject is
type SetObject struct {
autorest.Response `json:"-"`
Value *map[string]interface{} `json:"value,omitempty"`
}
// SharedAccessSignatureAuthorizationRule is the properties of an IoT hub
// shared access policy.
type SharedAccessSignatureAuthorizationRule struct {
autorest.Response `json:"-"`
KeyName *string `json:"keyName,omitempty"`
PrimaryKey *string `json:"primaryKey,omitempty"`
SecondaryKey *string `json:"secondaryKey,omitempty"`
Rights AccessRights `json:"rights,omitempty"`
}
// SharedAccessSignatureAuthorizationRuleListResult is the list of shared
// access policies with a next link.
type SharedAccessSignatureAuthorizationRuleListResult struct {
autorest.Response `json:"-"`
Value *[]SharedAccessSignatureAuthorizationRule `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// SharedAccessSignatureAuthorizationRuleListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client SharedAccessSignatureAuthorizationRuleListResult) SharedAccessSignatureAuthorizationRuleListResultPreparer() (*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)))
}
// SkuDescription is sKU properties.
type SkuDescription struct {
ResourceType *string `json:"resourceType,omitempty"`
Sku *SkuInfo `json:"sku,omitempty"`
Capacity *Capacity `json:"capacity,omitempty"`
}
// SkuDescriptionListResult is the JSON-serialized array of
// IotHubSkuDescription objects with a next link.
type SkuDescriptionListResult struct {
autorest.Response `json:"-"`
Value *[]SkuDescription `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// SkuDescriptionListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client SkuDescriptionListResult) SkuDescriptionListResultPreparer() (*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)))
}
// SkuInfo is information about the SKU of the IoT hub.
type SkuInfo struct {
Name Sku `json:"name,omitempty"`
Tier SkuTier `json:"tier,omitempty"`
Capacity *int64 `json:"capacity,omitempty"`
}
// StorageEndpointProperties is the properties of the Azure Storage endpoint
// for file upload.
type StorageEndpointProperties struct {
SasTTLAsIso8601 *string `json:"sasTtlAsIso8601,omitempty"`
ConnectionString *string `json:"connectionString,omitempty"`
ContainerName *string `json:"containerName,omitempty"`
}