armrecoveryservicesbackup

package module
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 17, 2022 License: MIT Imports: 16 Imported by: 30

README

Azure Recovery Services Backup Module for Go

PkgGoDev

The armrecoveryservicesbackup module provides operations for working with Azure Recovery Services Backup.

Source code

Getting started

Prerequisites

Install the package

This project uses Go modules for versioning and dependency management.

Install the Azure Recovery Services Backup module:

go get github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup

Authorization

When creating a client, you will need to provide a credential for authenticating with Azure Recovery Services Backup. The azidentity module provides facilities for various ways of authenticating with Azure including client/secret, certificate, managed identity, and more.

cred, err := azidentity.NewDefaultAzureCredential(nil)

For more information on authentication, please see the documentation for azidentity at pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azidentity.

Clients

Azure Recovery Services Backup modules consist of one or more clients. A client groups a set of related APIs, providing access to its functionality within the specified subscription. Create one or more clients to access the APIs you require using your credential.

client, err := armrecoveryservicesbackup.NewClient(<subscription ID>, cred, nil)

You can use ClientOptions in package github.com/Azure/azure-sdk-for-go/sdk/azcore/arm to set endpoint to connect with public and sovereign clouds as well as Azure Stack. For more information, please see the documentation for azcore at pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azcore.

options := arm.ClientOptions {
    ClientOptions: azcore.ClientOptions {
        Cloud: cloud.AzureChina,
    },
}
client, err := armrecoveryservicesbackup.NewClient(<subscription ID>, cred, &options)

Provide Feedback

If you encounter bugs or have suggestions, please open an issue and assign the Recovery Services Backup label.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information, see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Documentation

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AcquireStorageAccountLock added in v0.2.0

type AcquireStorageAccountLock string

AcquireStorageAccountLock - Whether storage account lock is to be acquired for this container or not.

const (
	AcquireStorageAccountLockAcquire    AcquireStorageAccountLock = "Acquire"
	AcquireStorageAccountLockNotAcquire AcquireStorageAccountLock = "NotAcquire"
)

func PossibleAcquireStorageAccountLockValues added in v0.2.0

func PossibleAcquireStorageAccountLockValues() []AcquireStorageAccountLock

PossibleAcquireStorageAccountLockValues returns the possible values for the AcquireStorageAccountLock const type.

type AzureBackupGoalFeatureSupportRequest

type AzureBackupGoalFeatureSupportRequest struct {
	// REQUIRED; backup support feature type.
	FeatureType *string `json:"featureType,omitempty"`
}

AzureBackupGoalFeatureSupportRequest - Azure backup goal feature specific request.

func (*AzureBackupGoalFeatureSupportRequest) GetFeatureSupportRequest added in v0.2.0

func (a *AzureBackupGoalFeatureSupportRequest) GetFeatureSupportRequest() *FeatureSupportRequest

GetFeatureSupportRequest implements the FeatureSupportRequestClassification interface for type AzureBackupGoalFeatureSupportRequest.

func (AzureBackupGoalFeatureSupportRequest) MarshalJSON

func (a AzureBackupGoalFeatureSupportRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureBackupGoalFeatureSupportRequest.

func (*AzureBackupGoalFeatureSupportRequest) UnmarshalJSON added in v0.2.0

func (a *AzureBackupGoalFeatureSupportRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureBackupGoalFeatureSupportRequest.

type AzureBackupServerContainer

type AzureBackupServerContainer struct {
	// REQUIRED; Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows
	// machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer.
	// 6. Azure workload Backup is VMAppContainer
	ContainerType *ContainerType `json:"containerType,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Specifies whether the container is re-registrable.
	CanReRegister *bool `json:"canReRegister,omitempty"`

	// ID of container.
	ContainerID *string `json:"containerId,omitempty"`

	// Backup engine Agent version
	DpmAgentVersion *string `json:"dpmAgentVersion,omitempty"`

	// List of BackupEngines protecting the container
	DpmServers []*string `json:"dpmServers,omitempty"`

	// Extended Info of the container.
	ExtendedInfo *DPMContainerExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// Type of the protectable object associated with this container
	ProtectableObjectType *string `json:"protectableObjectType,omitempty"`

	// Number of protected items in the BackupEngine
	ProtectedItemCount *int64 `json:"protectedItemCount,omitempty"`

	// Protection status of the container.
	ProtectionStatus *string `json:"protectionStatus,omitempty"`

	// Status of registration of the container with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`

	// To check if upgrade available
	UpgradeAvailable *bool `json:"upgradeAvailable,omitempty"`
}

AzureBackupServerContainer - AzureBackupServer (DPMVenus) workload-specific protection container.

func (*AzureBackupServerContainer) GetDpmContainer added in v0.2.0

func (a *AzureBackupServerContainer) GetDpmContainer() *DpmContainer

GetDpmContainer implements the DpmContainerClassification interface for type AzureBackupServerContainer.

func (*AzureBackupServerContainer) GetProtectionContainer added in v0.2.0

func (a *AzureBackupServerContainer) GetProtectionContainer() *ProtectionContainer

GetProtectionContainer implements the ProtectionContainerClassification interface for type AzureBackupServerContainer.

func (AzureBackupServerContainer) MarshalJSON

func (a AzureBackupServerContainer) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureBackupServerContainer.

func (*AzureBackupServerContainer) UnmarshalJSON added in v0.2.0

func (a *AzureBackupServerContainer) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureBackupServerContainer.

type AzureBackupServerEngine

type AzureBackupServerEngine struct {
	// REQUIRED; Type of the backup engine.
	BackupEngineType *BackupEngineType `json:"backupEngineType,omitempty"`

	// Backup agent version
	AzureBackupAgentVersion *string `json:"azureBackupAgentVersion,omitempty"`

	// ID of the backup engine.
	BackupEngineID *string `json:"backupEngineId,omitempty"`

	// Status of the backup engine with the Recovery Services Vault. = {Active/Deleting/DeleteFailed}
	BackupEngineState *string `json:"backupEngineState,omitempty"`

	// Type of backup management for the backup engine.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Flag indicating if the backup engine be registered, once already registered.
	CanReRegister *bool `json:"canReRegister,omitempty"`

	// Backup engine version
	DpmVersion *string `json:"dpmVersion,omitempty"`

	// Extended info of the backupengine
	ExtendedInfo *BackupEngineExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the backup engine.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Backup status of the backup engine.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// To check if backup agent upgrade available
	IsAzureBackupAgentUpgradeAvailable *bool `json:"isAzureBackupAgentUpgradeAvailable,omitempty"`

	// To check if backup engine upgrade available
	IsDpmUpgradeAvailable *bool `json:"isDpmUpgradeAvailable,omitempty"`

	// Registration status of the backup engine with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`
}

AzureBackupServerEngine - Backup engine type when Azure Backup Server is used to manage the backups.

func (*AzureBackupServerEngine) GetBackupEngineBase added in v0.2.0

func (a *AzureBackupServerEngine) GetBackupEngineBase() *BackupEngineBase

GetBackupEngineBase implements the BackupEngineBaseClassification interface for type AzureBackupServerEngine.

func (AzureBackupServerEngine) MarshalJSON

func (a AzureBackupServerEngine) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureBackupServerEngine.

func (*AzureBackupServerEngine) UnmarshalJSON added in v0.2.0

func (a *AzureBackupServerEngine) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureBackupServerEngine.

type AzureFileShareBackupRequest

type AzureFileShareBackupRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Backup copy will expire after the time specified (UTC).
	RecoveryPointExpiryTimeInUTC *time.Time `json:"recoveryPointExpiryTimeInUTC,omitempty"`
}

AzureFileShareBackupRequest - AzureFileShare workload-specific backup request.

func (*AzureFileShareBackupRequest) GetBackupRequest added in v0.2.0

func (a *AzureFileShareBackupRequest) GetBackupRequest() *BackupRequest

GetBackupRequest implements the BackupRequestClassification interface for type AzureFileShareBackupRequest.

func (AzureFileShareBackupRequest) MarshalJSON

func (a AzureFileShareBackupRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureFileShareBackupRequest.

func (*AzureFileShareBackupRequest) UnmarshalJSON

func (a *AzureFileShareBackupRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureFileShareBackupRequest.

type AzureFileShareProtectableItem

type AzureFileShareProtectableItem struct {
	// REQUIRED; Type of the backup item.
	ProtectableItemType *string `json:"protectableItemType,omitempty"`

	// File Share type XSync or XSMB.
	AzureFileShareType *AzureFileShareType `json:"azureFileShareType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Full Fabric ID of container to which this protectable item belongs. For example, ARM ID.
	ParentContainerFabricID *string `json:"parentContainerFabricId,omitempty"`

	// Friendly name of container to which this protectable item belongs.
	ParentContainerFriendlyName *string `json:"parentContainerFriendlyName,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureFileShareProtectableItem - Protectable item for Azure Fileshare workloads.

func (*AzureFileShareProtectableItem) GetWorkloadProtectableItem added in v0.2.0

func (a *AzureFileShareProtectableItem) GetWorkloadProtectableItem() *WorkloadProtectableItem

GetWorkloadProtectableItem implements the WorkloadProtectableItemClassification interface for type AzureFileShareProtectableItem.

func (AzureFileShareProtectableItem) MarshalJSON

func (a AzureFileShareProtectableItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureFileShareProtectableItem.

func (*AzureFileShareProtectableItem) UnmarshalJSON

func (a *AzureFileShareProtectableItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureFileShareProtectableItem.

type AzureFileShareProtectionPolicy

type AzureFileShareProtectionPolicy struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Number of items associated with this policy.
	ProtectedItemsCount *int32 `json:"protectedItemsCount,omitempty"`

	// ResourceGuard Operation Requests
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// Retention policy with the details on backup copy retention ranges.
	RetentionPolicy RetentionPolicyClassification `json:"retentionPolicy,omitempty"`

	// Backup schedule specified as part of backup policy.
	SchedulePolicy SchedulePolicyClassification `json:"schedulePolicy,omitempty"`

	// TimeZone optional input as string. For example: TimeZone = "Pacific Standard Time".
	TimeZone *string `json:"timeZone,omitempty"`

	// Type of workload for the backup management
	WorkLoadType *WorkloadType `json:"workLoadType,omitempty"`
}

AzureFileShareProtectionPolicy - AzureStorage backup policy.

func (*AzureFileShareProtectionPolicy) GetProtectionPolicy added in v0.2.0

func (a *AzureFileShareProtectionPolicy) GetProtectionPolicy() *ProtectionPolicy

GetProtectionPolicy implements the ProtectionPolicyClassification interface for type AzureFileShareProtectionPolicy.

func (AzureFileShareProtectionPolicy) MarshalJSON

func (a AzureFileShareProtectionPolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureFileShareProtectionPolicy.

func (*AzureFileShareProtectionPolicy) UnmarshalJSON

func (a *AzureFileShareProtectionPolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureFileShareProtectionPolicy.

type AzureFileShareProvisionILRRequest

type AzureFileShareProvisionILRRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Recovery point ID.
	RecoveryPointID *string `json:"recoveryPointId,omitempty"`

	// Source Storage account ARM Id
	SourceResourceID *string `json:"sourceResourceId,omitempty"`
}

AzureFileShareProvisionILRRequest - Update snapshot Uri with the correct friendly Name of the source Azure file share.

func (*AzureFileShareProvisionILRRequest) GetILRRequest added in v0.2.0

func (a *AzureFileShareProvisionILRRequest) GetILRRequest() *ILRRequest

GetILRRequest implements the ILRRequestClassification interface for type AzureFileShareProvisionILRRequest.

func (AzureFileShareProvisionILRRequest) MarshalJSON

func (a AzureFileShareProvisionILRRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureFileShareProvisionILRRequest.

func (*AzureFileShareProvisionILRRequest) UnmarshalJSON

func (a *AzureFileShareProvisionILRRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureFileShareProvisionILRRequest.

type AzureFileShareRecoveryPoint

type AzureFileShareRecoveryPoint struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Contains Url to the snapshot of fileshare, if applicable
	FileShareSnapshotURI *string `json:"fileShareSnapshotUri,omitempty"`

	// Contains recovery point size
	RecoveryPointSizeInGB *int32 `json:"recoveryPointSizeInGB,omitempty"`

	// Time at which this backup copy was created.
	RecoveryPointTime *time.Time `json:"recoveryPointTime,omitempty"`

	// Type of the backup copy. Specifies whether it is a crash consistent backup or app consistent.
	RecoveryPointType *string `json:"recoveryPointType,omitempty"`
}

AzureFileShareRecoveryPoint - Azure File Share workload specific backup copy.

func (*AzureFileShareRecoveryPoint) GetRecoveryPoint added in v0.2.0

func (a *AzureFileShareRecoveryPoint) GetRecoveryPoint() *RecoveryPoint

GetRecoveryPoint implements the RecoveryPointClassification interface for type AzureFileShareRecoveryPoint.

func (AzureFileShareRecoveryPoint) MarshalJSON

func (a AzureFileShareRecoveryPoint) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureFileShareRecoveryPoint.

func (*AzureFileShareRecoveryPoint) UnmarshalJSON

func (a *AzureFileShareRecoveryPoint) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureFileShareRecoveryPoint.

type AzureFileShareRestoreRequest

type AzureFileShareRestoreRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Options to resolve copy conflicts.
	CopyOptions *CopyOptions `json:"copyOptions,omitempty"`

	// Type of this recovery.
	RecoveryType *RecoveryType `json:"recoveryType,omitempty"`

	// List of Source Files/Folders(which need to recover) and TargetFolderPath details
	RestoreFileSpecs []*RestoreFileSpecs `json:"restoreFileSpecs,omitempty"`

	// Restore Type (FullShareRestore or ItemLevelRestore)
	RestoreRequestType *RestoreRequestType `json:"restoreRequestType,omitempty"`

	// Source storage account ARM Id
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Target File Share Details
	TargetDetails *TargetAFSRestoreInfo `json:"targetDetails,omitempty"`
}

AzureFileShareRestoreRequest - AzureFileShare Restore Request

func (*AzureFileShareRestoreRequest) GetRestoreRequest added in v0.2.0

func (a *AzureFileShareRestoreRequest) GetRestoreRequest() *RestoreRequest

GetRestoreRequest implements the RestoreRequestClassification interface for type AzureFileShareRestoreRequest.

func (AzureFileShareRestoreRequest) MarshalJSON

func (a AzureFileShareRestoreRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureFileShareRestoreRequest.

func (*AzureFileShareRestoreRequest) UnmarshalJSON

func (a *AzureFileShareRestoreRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureFileShareRestoreRequest.

type AzureFileShareType

type AzureFileShareType string

AzureFileShareType - File Share type XSync or XSMB.

const (
	AzureFileShareTypeInvalid AzureFileShareType = "Invalid"
	AzureFileShareTypeXSMB    AzureFileShareType = "XSMB"
	AzureFileShareTypeXSync   AzureFileShareType = "XSync"
)

func PossibleAzureFileShareTypeValues

func PossibleAzureFileShareTypeValues() []AzureFileShareType

PossibleAzureFileShareTypeValues returns the possible values for the AzureFileShareType const type.

type AzureFileshareProtectedItem

type AzureFileshareProtectedItem struct {
	// REQUIRED; backup item type.
	ProtectedItemType *string `json:"protectedItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of the backup set the backup item belongs to
	BackupSetName *string `json:"backupSetName,omitempty"`

	// Unique name of container
	ContainerName *string `json:"containerName,omitempty"`

	// Create mode to indicate recovery of existing soft deleted data source or creation of new data source.
	CreateMode *CreateMode `json:"createMode,omitempty"`

	// Time for deferred deletion in UTC
	DeferredDeleteTimeInUTC *time.Time `json:"deferredDeleteTimeInUTC,omitempty"`

	// Time remaining before the DS marked for deferred delete is permanently deleted
	DeferredDeleteTimeRemaining *string `json:"deferredDeleteTimeRemaining,omitempty"`

	// Additional information with this backup item.
	ExtendedInfo *AzureFileshareProtectedItemExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the fileshare represented by this backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Flag to identify whether datasource is protected in archive
	IsArchiveEnabled *bool `json:"isArchiveEnabled,omitempty"`

	// Flag to identify whether the deferred deleted DS is to be purged soon
	IsDeferredDeleteScheduleUpcoming *bool `json:"isDeferredDeleteScheduleUpcoming,omitempty"`

	// Flag to identify that deferred deleted DS is to be moved into Pause state
	IsRehydrate *bool `json:"isRehydrate,omitempty"`

	// Flag to identify whether the DS is scheduled for deferred delete
	IsScheduledForDeferredDelete *bool `json:"isScheduledForDeferredDelete,omitempty"`

	// Health details of different KPIs
	KpisHealths map[string]*KPIResourceHealthDetails `json:"kpisHealths,omitempty"`

	// Last backup operation status. Possible values: Healthy, Unhealthy.
	LastBackupStatus *string `json:"lastBackupStatus,omitempty"`

	// Timestamp of the last backup operation on this backup item.
	LastBackupTime *time.Time `json:"lastBackupTime,omitempty"`

	// Timestamp when the last (latest) backup copy was created for this backup item.
	LastRecoveryPoint *time.Time `json:"lastRecoveryPoint,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Name of the policy used for protection
	PolicyName *string `json:"policyName,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionState `json:"protectionState,omitempty"`

	// Backup status of this backup item.
	ProtectionStatus *string `json:"protectionStatus,omitempty"`

	// ResourceGuardOperationRequests on which LAC check will be performed
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Type of workload this item represents.
	WorkloadType *DataSourceType `json:"workloadType,omitempty"`
}

AzureFileshareProtectedItem - Azure File Share workload-specific backup item.

func (*AzureFileshareProtectedItem) GetProtectedItem added in v0.2.0

func (a *AzureFileshareProtectedItem) GetProtectedItem() *ProtectedItem

GetProtectedItem implements the ProtectedItemClassification interface for type AzureFileshareProtectedItem.

func (AzureFileshareProtectedItem) MarshalJSON

func (a AzureFileshareProtectedItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureFileshareProtectedItem.

func (*AzureFileshareProtectedItem) UnmarshalJSON

func (a *AzureFileshareProtectedItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureFileshareProtectedItem.

type AzureFileshareProtectedItemExtendedInfo

type AzureFileshareProtectedItemExtendedInfo struct {
	// The oldest backup copy available for this item in the service.
	OldestRecoveryPoint *time.Time `json:"oldestRecoveryPoint,omitempty"`

	// Indicates consistency of policy object and policy applied to this backup item.
	PolicyState *string `json:"policyState,omitempty"`

	// Number of available backup copies associated with this backup item.
	RecoveryPointCount *int32 `json:"recoveryPointCount,omitempty"`

	// READ-ONLY; Indicates the state of this resource. Possible values are from enum ResourceState {Invalid, Active, SoftDeleted,
	// Deleted}
	ResourceState *string `json:"resourceState,omitempty" azure:"ro"`

	// READ-ONLY; The resource state sync time for this backup item.
	ResourceStateSyncTime *time.Time `json:"resourceStateSyncTime,omitempty" azure:"ro"`
}

AzureFileshareProtectedItemExtendedInfo - Additional information about Azure File Share backup item.

func (AzureFileshareProtectedItemExtendedInfo) MarshalJSON

func (a AzureFileshareProtectedItemExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureFileshareProtectedItemExtendedInfo.

func (*AzureFileshareProtectedItemExtendedInfo) UnmarshalJSON

func (a *AzureFileshareProtectedItemExtendedInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureFileshareProtectedItemExtendedInfo.

type AzureIaaSClassicComputeVMContainer

type AzureIaaSClassicComputeVMContainer struct {
	// REQUIRED; Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows
	// machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer.
	// 6. Azure workload Backup is VMAppContainer
	ContainerType *ContainerType `json:"containerType,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// Type of the protectable object associated with this container
	ProtectableObjectType *string `json:"protectableObjectType,omitempty"`

	// Status of registration of the container with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`

	// Resource group name of Recovery Services Vault.
	ResourceGroup *string `json:"resourceGroup,omitempty"`

	// Fully qualified ARM url of the virtual machine represented by this Azure IaaS VM container.
	VirtualMachineID *string `json:"virtualMachineId,omitempty"`

	// Specifies whether the container represents a Classic or an Azure Resource Manager VM.
	VirtualMachineVersion *string `json:"virtualMachineVersion,omitempty"`
}

AzureIaaSClassicComputeVMContainer - IaaS VM workload-specific backup item representing a classic virtual machine.

func (*AzureIaaSClassicComputeVMContainer) GetIaaSVMContainer added in v0.2.0

func (a *AzureIaaSClassicComputeVMContainer) GetIaaSVMContainer() *IaaSVMContainer

GetIaaSVMContainer implements the IaaSVMContainerClassification interface for type AzureIaaSClassicComputeVMContainer.

func (*AzureIaaSClassicComputeVMContainer) GetProtectionContainer added in v0.2.0

func (a *AzureIaaSClassicComputeVMContainer) GetProtectionContainer() *ProtectionContainer

GetProtectionContainer implements the ProtectionContainerClassification interface for type AzureIaaSClassicComputeVMContainer.

func (AzureIaaSClassicComputeVMContainer) MarshalJSON

func (a AzureIaaSClassicComputeVMContainer) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureIaaSClassicComputeVMContainer.

func (*AzureIaaSClassicComputeVMContainer) UnmarshalJSON added in v0.2.0

func (a *AzureIaaSClassicComputeVMContainer) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureIaaSClassicComputeVMContainer.

type AzureIaaSClassicComputeVMProtectableItem

type AzureIaaSClassicComputeVMProtectableItem struct {
	// REQUIRED; Type of the backup item.
	ProtectableItemType *string `json:"protectableItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Resource group name of Recovery Services Vault.
	ResourceGroup *string `json:"resourceGroup,omitempty"`

	// Fully qualified ARM ID of the virtual machine.
	VirtualMachineID *string `json:"virtualMachineId,omitempty"`

	// Specifies whether the container represents a Classic or an Azure Resource Manager VM.
	VirtualMachineVersion *string `json:"virtualMachineVersion,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureIaaSClassicComputeVMProtectableItem - IaaS VM workload-specific backup item representing the Classic Compute VM.

func (*AzureIaaSClassicComputeVMProtectableItem) GetIaaSVMProtectableItem added in v0.2.0

func (a *AzureIaaSClassicComputeVMProtectableItem) GetIaaSVMProtectableItem() *IaaSVMProtectableItem

GetIaaSVMProtectableItem implements the IaaSVMProtectableItemClassification interface for type AzureIaaSClassicComputeVMProtectableItem.

func (*AzureIaaSClassicComputeVMProtectableItem) GetWorkloadProtectableItem added in v0.2.0

func (a *AzureIaaSClassicComputeVMProtectableItem) GetWorkloadProtectableItem() *WorkloadProtectableItem

GetWorkloadProtectableItem implements the WorkloadProtectableItemClassification interface for type AzureIaaSClassicComputeVMProtectableItem.

func (AzureIaaSClassicComputeVMProtectableItem) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureIaaSClassicComputeVMProtectableItem.

func (*AzureIaaSClassicComputeVMProtectableItem) UnmarshalJSON added in v0.2.0

func (a *AzureIaaSClassicComputeVMProtectableItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureIaaSClassicComputeVMProtectableItem.

type AzureIaaSClassicComputeVMProtectedItem

type AzureIaaSClassicComputeVMProtectedItem struct {
	// REQUIRED; backup item type.
	ProtectedItemType *string `json:"protectedItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of the backup set the backup item belongs to
	BackupSetName *string `json:"backupSetName,omitempty"`

	// Unique name of container
	ContainerName *string `json:"containerName,omitempty"`

	// Create mode to indicate recovery of existing soft deleted data source or creation of new data source.
	CreateMode *CreateMode `json:"createMode,omitempty"`

	// Time for deferred deletion in UTC
	DeferredDeleteTimeInUTC *time.Time `json:"deferredDeleteTimeInUTC,omitempty"`

	// Time remaining before the DS marked for deferred delete is permanently deleted
	DeferredDeleteTimeRemaining *string `json:"deferredDeleteTimeRemaining,omitempty"`

	// Additional information for this backup item.
	ExtendedInfo *AzureIaaSVMProtectedItemExtendedInfo `json:"extendedInfo,omitempty"`

	// Extended Properties for Azure IaasVM Backup.
	ExtendedProperties *ExtendedProperties `json:"extendedProperties,omitempty"`

	// Friendly name of the VM represented by this backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Health details on this backup item.
	HealthDetails []*AzureIaaSVMHealthDetails `json:"healthDetails,omitempty"`

	// Health status of protected item.
	HealthStatus *HealthStatus `json:"healthStatus,omitempty"`

	// Flag to identify whether datasource is protected in archive
	IsArchiveEnabled *bool `json:"isArchiveEnabled,omitempty"`

	// Flag to identify whether the deferred deleted DS is to be purged soon
	IsDeferredDeleteScheduleUpcoming *bool `json:"isDeferredDeleteScheduleUpcoming,omitempty"`

	// Flag to identify that deferred deleted DS is to be moved into Pause state
	IsRehydrate *bool `json:"isRehydrate,omitempty"`

	// Flag to identify whether the DS is scheduled for deferred delete
	IsScheduledForDeferredDelete *bool `json:"isScheduledForDeferredDelete,omitempty"`

	// Health details of different KPIs
	KpisHealths map[string]*KPIResourceHealthDetails `json:"kpisHealths,omitempty"`

	// Last backup operation status.
	LastBackupStatus *string `json:"lastBackupStatus,omitempty"`

	// Timestamp of the last backup operation on this backup item.
	LastBackupTime *time.Time `json:"lastBackupTime,omitempty"`

	// Timestamp when the last (latest) backup copy was created for this backup item.
	LastRecoveryPoint *time.Time `json:"lastRecoveryPoint,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Name of the policy used for protection
	PolicyName *string `json:"policyName,omitempty"`

	// Data ID of the protected item.
	ProtectedItemDataID *string `json:"protectedItemDataId,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionState `json:"protectionState,omitempty"`

	// Backup status of this backup item.
	ProtectionStatus *string `json:"protectionStatus,omitempty"`

	// ResourceGuardOperationRequests on which LAC check will be performed
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Fully qualified ARM ID of the virtual machine represented by this item.
	VirtualMachineID *string `json:"virtualMachineId,omitempty"`

	// Type of workload this item represents.
	WorkloadType *DataSourceType `json:"workloadType,omitempty"`
}

AzureIaaSClassicComputeVMProtectedItem - IaaS VM workload-specific backup item representing the Classic Compute VM.

func (*AzureIaaSClassicComputeVMProtectedItem) GetAzureIaaSVMProtectedItem added in v0.2.0

func (a *AzureIaaSClassicComputeVMProtectedItem) GetAzureIaaSVMProtectedItem() *AzureIaaSVMProtectedItem

GetAzureIaaSVMProtectedItem implements the AzureIaaSVMProtectedItemClassification interface for type AzureIaaSClassicComputeVMProtectedItem.

func (*AzureIaaSClassicComputeVMProtectedItem) GetProtectedItem added in v0.2.0

GetProtectedItem implements the ProtectedItemClassification interface for type AzureIaaSClassicComputeVMProtectedItem.

func (AzureIaaSClassicComputeVMProtectedItem) MarshalJSON

func (a AzureIaaSClassicComputeVMProtectedItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureIaaSClassicComputeVMProtectedItem.

func (*AzureIaaSClassicComputeVMProtectedItem) UnmarshalJSON added in v0.2.0

func (a *AzureIaaSClassicComputeVMProtectedItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureIaaSClassicComputeVMProtectedItem.

type AzureIaaSComputeVMContainer

type AzureIaaSComputeVMContainer struct {
	// REQUIRED; Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows
	// machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer.
	// 6. Azure workload Backup is VMAppContainer
	ContainerType *ContainerType `json:"containerType,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// Type of the protectable object associated with this container
	ProtectableObjectType *string `json:"protectableObjectType,omitempty"`

	// Status of registration of the container with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`

	// Resource group name of Recovery Services Vault.
	ResourceGroup *string `json:"resourceGroup,omitempty"`

	// Fully qualified ARM url of the virtual machine represented by this Azure IaaS VM container.
	VirtualMachineID *string `json:"virtualMachineId,omitempty"`

	// Specifies whether the container represents a Classic or an Azure Resource Manager VM.
	VirtualMachineVersion *string `json:"virtualMachineVersion,omitempty"`
}

AzureIaaSComputeVMContainer - IaaS VM workload-specific backup item representing an Azure Resource Manager virtual machine.

func (*AzureIaaSComputeVMContainer) GetIaaSVMContainer added in v0.2.0

func (a *AzureIaaSComputeVMContainer) GetIaaSVMContainer() *IaaSVMContainer

GetIaaSVMContainer implements the IaaSVMContainerClassification interface for type AzureIaaSComputeVMContainer.

func (*AzureIaaSComputeVMContainer) GetProtectionContainer added in v0.2.0

func (a *AzureIaaSComputeVMContainer) GetProtectionContainer() *ProtectionContainer

GetProtectionContainer implements the ProtectionContainerClassification interface for type AzureIaaSComputeVMContainer.

func (AzureIaaSComputeVMContainer) MarshalJSON

func (a AzureIaaSComputeVMContainer) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureIaaSComputeVMContainer.

func (*AzureIaaSComputeVMContainer) UnmarshalJSON added in v0.2.0

func (a *AzureIaaSComputeVMContainer) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureIaaSComputeVMContainer.

type AzureIaaSComputeVMProtectableItem

type AzureIaaSComputeVMProtectableItem struct {
	// REQUIRED; Type of the backup item.
	ProtectableItemType *string `json:"protectableItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Resource group name of Recovery Services Vault.
	ResourceGroup *string `json:"resourceGroup,omitempty"`

	// Fully qualified ARM ID of the virtual machine.
	VirtualMachineID *string `json:"virtualMachineId,omitempty"`

	// Specifies whether the container represents a Classic or an Azure Resource Manager VM.
	VirtualMachineVersion *string `json:"virtualMachineVersion,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureIaaSComputeVMProtectableItem - IaaS VM workload-specific backup item representing the Azure Resource Manager VM.

func (*AzureIaaSComputeVMProtectableItem) GetIaaSVMProtectableItem added in v0.2.0

func (a *AzureIaaSComputeVMProtectableItem) GetIaaSVMProtectableItem() *IaaSVMProtectableItem

GetIaaSVMProtectableItem implements the IaaSVMProtectableItemClassification interface for type AzureIaaSComputeVMProtectableItem.

func (*AzureIaaSComputeVMProtectableItem) GetWorkloadProtectableItem added in v0.2.0

func (a *AzureIaaSComputeVMProtectableItem) GetWorkloadProtectableItem() *WorkloadProtectableItem

GetWorkloadProtectableItem implements the WorkloadProtectableItemClassification interface for type AzureIaaSComputeVMProtectableItem.

func (AzureIaaSComputeVMProtectableItem) MarshalJSON

func (a AzureIaaSComputeVMProtectableItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureIaaSComputeVMProtectableItem.

func (*AzureIaaSComputeVMProtectableItem) UnmarshalJSON added in v0.2.0

func (a *AzureIaaSComputeVMProtectableItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureIaaSComputeVMProtectableItem.

type AzureIaaSComputeVMProtectedItem

type AzureIaaSComputeVMProtectedItem struct {
	// REQUIRED; backup item type.
	ProtectedItemType *string `json:"protectedItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of the backup set the backup item belongs to
	BackupSetName *string `json:"backupSetName,omitempty"`

	// Unique name of container
	ContainerName *string `json:"containerName,omitempty"`

	// Create mode to indicate recovery of existing soft deleted data source or creation of new data source.
	CreateMode *CreateMode `json:"createMode,omitempty"`

	// Time for deferred deletion in UTC
	DeferredDeleteTimeInUTC *time.Time `json:"deferredDeleteTimeInUTC,omitempty"`

	// Time remaining before the DS marked for deferred delete is permanently deleted
	DeferredDeleteTimeRemaining *string `json:"deferredDeleteTimeRemaining,omitempty"`

	// Additional information for this backup item.
	ExtendedInfo *AzureIaaSVMProtectedItemExtendedInfo `json:"extendedInfo,omitempty"`

	// Extended Properties for Azure IaasVM Backup.
	ExtendedProperties *ExtendedProperties `json:"extendedProperties,omitempty"`

	// Friendly name of the VM represented by this backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Health details on this backup item.
	HealthDetails []*AzureIaaSVMHealthDetails `json:"healthDetails,omitempty"`

	// Health status of protected item.
	HealthStatus *HealthStatus `json:"healthStatus,omitempty"`

	// Flag to identify whether datasource is protected in archive
	IsArchiveEnabled *bool `json:"isArchiveEnabled,omitempty"`

	// Flag to identify whether the deferred deleted DS is to be purged soon
	IsDeferredDeleteScheduleUpcoming *bool `json:"isDeferredDeleteScheduleUpcoming,omitempty"`

	// Flag to identify that deferred deleted DS is to be moved into Pause state
	IsRehydrate *bool `json:"isRehydrate,omitempty"`

	// Flag to identify whether the DS is scheduled for deferred delete
	IsScheduledForDeferredDelete *bool `json:"isScheduledForDeferredDelete,omitempty"`

	// Health details of different KPIs
	KpisHealths map[string]*KPIResourceHealthDetails `json:"kpisHealths,omitempty"`

	// Last backup operation status.
	LastBackupStatus *string `json:"lastBackupStatus,omitempty"`

	// Timestamp of the last backup operation on this backup item.
	LastBackupTime *time.Time `json:"lastBackupTime,omitempty"`

	// Timestamp when the last (latest) backup copy was created for this backup item.
	LastRecoveryPoint *time.Time `json:"lastRecoveryPoint,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Name of the policy used for protection
	PolicyName *string `json:"policyName,omitempty"`

	// Data ID of the protected item.
	ProtectedItemDataID *string `json:"protectedItemDataId,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionState `json:"protectionState,omitempty"`

	// Backup status of this backup item.
	ProtectionStatus *string `json:"protectionStatus,omitempty"`

	// ResourceGuardOperationRequests on which LAC check will be performed
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Fully qualified ARM ID of the virtual machine represented by this item.
	VirtualMachineID *string `json:"virtualMachineId,omitempty"`

	// Type of workload this item represents.
	WorkloadType *DataSourceType `json:"workloadType,omitempty"`
}

AzureIaaSComputeVMProtectedItem - IaaS VM workload-specific backup item representing the Azure Resource Manager VM.

func (*AzureIaaSComputeVMProtectedItem) GetAzureIaaSVMProtectedItem added in v0.2.0

func (a *AzureIaaSComputeVMProtectedItem) GetAzureIaaSVMProtectedItem() *AzureIaaSVMProtectedItem

GetAzureIaaSVMProtectedItem implements the AzureIaaSVMProtectedItemClassification interface for type AzureIaaSComputeVMProtectedItem.

func (*AzureIaaSComputeVMProtectedItem) GetProtectedItem added in v0.2.0

func (a *AzureIaaSComputeVMProtectedItem) GetProtectedItem() *ProtectedItem

GetProtectedItem implements the ProtectedItemClassification interface for type AzureIaaSComputeVMProtectedItem.

func (AzureIaaSComputeVMProtectedItem) MarshalJSON

func (a AzureIaaSComputeVMProtectedItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureIaaSComputeVMProtectedItem.

func (*AzureIaaSComputeVMProtectedItem) UnmarshalJSON added in v0.2.0

func (a *AzureIaaSComputeVMProtectedItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureIaaSComputeVMProtectedItem.

type AzureIaaSVMErrorInfo

type AzureIaaSVMErrorInfo struct {
	// READ-ONLY; Error code.
	ErrorCode *int32 `json:"errorCode,omitempty" azure:"ro"`

	// READ-ONLY; Localized error string.
	ErrorString *string `json:"errorString,omitempty" azure:"ro"`

	// READ-ONLY; Title: Typically, the entity that the error pertains to.
	ErrorTitle *string `json:"errorTitle,omitempty" azure:"ro"`

	// READ-ONLY; List of localized recommendations for above error code.
	Recommendations []*string `json:"recommendations,omitempty" azure:"ro"`
}

AzureIaaSVMErrorInfo - Azure IaaS VM workload-specific error information.

func (AzureIaaSVMErrorInfo) MarshalJSON

func (a AzureIaaSVMErrorInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureIaaSVMErrorInfo.

type AzureIaaSVMHealthDetails

type AzureIaaSVMHealthDetails struct {
	// READ-ONLY; Health Code
	Code *int32 `json:"code,omitempty" azure:"ro"`

	// READ-ONLY; Health Message
	Message *string `json:"message,omitempty" azure:"ro"`

	// READ-ONLY; Health Recommended Actions
	Recommendations []*string `json:"recommendations,omitempty" azure:"ro"`

	// READ-ONLY; Health Title
	Title *string `json:"title,omitempty" azure:"ro"`
}

AzureIaaSVMHealthDetails - Azure IaaS VM workload-specific Health Details.

func (AzureIaaSVMHealthDetails) MarshalJSON added in v0.2.0

func (a AzureIaaSVMHealthDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureIaaSVMHealthDetails.

type AzureIaaSVMJob

type AzureIaaSVMJob struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	JobType *string `json:"jobType,omitempty"`

	// Gets or sets the state/actions applicable on this job like cancel/retry.
	ActionsInfo []*JobSupportedAction `json:"actionsInfo,omitempty"`

	// ActivityId of job.
	ActivityID *string `json:"activityId,omitempty"`

	// Backup management type to execute the current job.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Container name of the entity on which the current job is executing.
	ContainerName *string `json:"containerName,omitempty"`

	// Time elapsed during the execution of this job.
	Duration *string `json:"duration,omitempty"`

	// The end time.
	EndTime *time.Time `json:"endTime,omitempty"`

	// Friendly name of the entity on which the current job is executing.
	EntityFriendlyName *string `json:"entityFriendlyName,omitempty"`

	// Error details on execution of this job.
	ErrorDetails []*AzureIaaSVMErrorInfo `json:"errorDetails,omitempty"`

	// Additional information for this job.
	ExtendedInfo *AzureIaaSVMJobExtendedInfo `json:"extendedInfo,omitempty"`

	// Indicated that whether the job is adhoc(true) or scheduled(false)
	IsUserTriggered *bool `json:"isUserTriggered,omitempty"`

	// The operation name.
	Operation *string `json:"operation,omitempty"`

	// The start time.
	StartTime *time.Time `json:"startTime,omitempty"`

	// Job status.
	Status *string `json:"status,omitempty"`

	// Specifies whether the backup item is a Classic or an Azure Resource Manager VM.
	VirtualMachineVersion *string `json:"virtualMachineVersion,omitempty"`
}

AzureIaaSVMJob - Azure IaaS VM workload-specific job object.

func (*AzureIaaSVMJob) GetJob added in v0.2.0

func (a *AzureIaaSVMJob) GetJob() *Job

GetJob implements the JobClassification interface for type AzureIaaSVMJob.

func (AzureIaaSVMJob) MarshalJSON

func (a AzureIaaSVMJob) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureIaaSVMJob.

func (*AzureIaaSVMJob) UnmarshalJSON

func (a *AzureIaaSVMJob) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureIaaSVMJob.

type AzureIaaSVMJobExtendedInfo

type AzureIaaSVMJobExtendedInfo struct {
	// Non localized error message on job execution.
	DynamicErrorMessage *string `json:"dynamicErrorMessage,omitempty"`

	// Time remaining for execution of this job.
	EstimatedRemainingDuration *string `json:"estimatedRemainingDuration,omitempty"`

	// Job internal properties.
	InternalPropertyBag map[string]*string `json:"internalPropertyBag,omitempty"`

	// Indicates progress of the job. Null if it has not started or completed.
	ProgressPercentage *float64 `json:"progressPercentage,omitempty"`

	// Job properties.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// List of tasks associated with this job.
	TasksList []*AzureIaaSVMJobTaskDetails `json:"tasksList,omitempty"`
}

AzureIaaSVMJobExtendedInfo - Azure IaaS VM workload-specific additional information for job.

func (AzureIaaSVMJobExtendedInfo) MarshalJSON

func (a AzureIaaSVMJobExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureIaaSVMJobExtendedInfo.

type AzureIaaSVMJobTaskDetails

type AzureIaaSVMJobTaskDetails struct {
	// Time elapsed for task.
	Duration *string `json:"duration,omitempty"`

	// The end time.
	EndTime *time.Time `json:"endTime,omitempty"`

	// The instanceId.
	InstanceID *string `json:"instanceId,omitempty"`

	// Progress of the task.
	ProgressPercentage *float64 `json:"progressPercentage,omitempty"`

	// The start time.
	StartTime *time.Time `json:"startTime,omitempty"`

	// The status.
	Status *string `json:"status,omitempty"`

	// Details about execution of the task. eg: number of bytes transferred etc
	TaskExecutionDetails *string `json:"taskExecutionDetails,omitempty"`

	// The task display name.
	TaskID *string `json:"taskId,omitempty"`
}

AzureIaaSVMJobTaskDetails - Azure IaaS VM workload-specific job task details.

func (AzureIaaSVMJobTaskDetails) MarshalJSON

func (a AzureIaaSVMJobTaskDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureIaaSVMJobTaskDetails.

func (*AzureIaaSVMJobTaskDetails) UnmarshalJSON

func (a *AzureIaaSVMJobTaskDetails) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureIaaSVMJobTaskDetails.

type AzureIaaSVMJobV2 added in v0.2.0

type AzureIaaSVMJobV2 struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	JobType *string `json:"jobType,omitempty"`

	// Gets or sets the state/actions applicable on this job like cancel/retry.
	ActionsInfo []*JobSupportedAction `json:"actionsInfo,omitempty"`

	// ActivityId of job.
	ActivityID *string `json:"activityId,omitempty"`

	// Backup management type to execute the current job.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Container name of the entity on which the current job is executing.
	ContainerName *string `json:"containerName,omitempty"`

	// Time elapsed during the execution of this job.
	Duration *string `json:"duration,omitempty"`

	// The end time.
	EndTime *time.Time `json:"endTime,omitempty"`

	// Friendly name of the entity on which the current job is executing.
	EntityFriendlyName *string `json:"entityFriendlyName,omitempty"`

	// Error details on execution of this job.
	ErrorDetails []*AzureIaaSVMErrorInfo `json:"errorDetails,omitempty"`

	// Additional information for this job.
	ExtendedInfo *AzureIaaSVMJobExtendedInfo `json:"extendedInfo,omitempty"`

	// The operation name.
	Operation *string `json:"operation,omitempty"`

	// The start time.
	StartTime *time.Time `json:"startTime,omitempty"`

	// Job status.
	Status *string `json:"status,omitempty"`

	// Specifies whether the backup item is a Classic or an Azure Resource Manager VM.
	VirtualMachineVersion *string `json:"virtualMachineVersion,omitempty"`
}

AzureIaaSVMJobV2 - Azure IaaS VM workload-specific job object.

func (*AzureIaaSVMJobV2) GetJob added in v0.2.0

func (a *AzureIaaSVMJobV2) GetJob() *Job

GetJob implements the JobClassification interface for type AzureIaaSVMJobV2.

func (AzureIaaSVMJobV2) MarshalJSON added in v0.2.0

func (a AzureIaaSVMJobV2) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureIaaSVMJobV2.

func (*AzureIaaSVMJobV2) UnmarshalJSON added in v0.2.0

func (a *AzureIaaSVMJobV2) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureIaaSVMJobV2.

type AzureIaaSVMProtectedItem

type AzureIaaSVMProtectedItem struct {
	// REQUIRED; backup item type.
	ProtectedItemType *string `json:"protectedItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of the backup set the backup item belongs to
	BackupSetName *string `json:"backupSetName,omitempty"`

	// Unique name of container
	ContainerName *string `json:"containerName,omitempty"`

	// Create mode to indicate recovery of existing soft deleted data source or creation of new data source.
	CreateMode *CreateMode `json:"createMode,omitempty"`

	// Time for deferred deletion in UTC
	DeferredDeleteTimeInUTC *time.Time `json:"deferredDeleteTimeInUTC,omitempty"`

	// Time remaining before the DS marked for deferred delete is permanently deleted
	DeferredDeleteTimeRemaining *string `json:"deferredDeleteTimeRemaining,omitempty"`

	// Additional information for this backup item.
	ExtendedInfo *AzureIaaSVMProtectedItemExtendedInfo `json:"extendedInfo,omitempty"`

	// Extended Properties for Azure IaasVM Backup.
	ExtendedProperties *ExtendedProperties `json:"extendedProperties,omitempty"`

	// Friendly name of the VM represented by this backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Health details on this backup item.
	HealthDetails []*AzureIaaSVMHealthDetails `json:"healthDetails,omitempty"`

	// Health status of protected item.
	HealthStatus *HealthStatus `json:"healthStatus,omitempty"`

	// Flag to identify whether datasource is protected in archive
	IsArchiveEnabled *bool `json:"isArchiveEnabled,omitempty"`

	// Flag to identify whether the deferred deleted DS is to be purged soon
	IsDeferredDeleteScheduleUpcoming *bool `json:"isDeferredDeleteScheduleUpcoming,omitempty"`

	// Flag to identify that deferred deleted DS is to be moved into Pause state
	IsRehydrate *bool `json:"isRehydrate,omitempty"`

	// Flag to identify whether the DS is scheduled for deferred delete
	IsScheduledForDeferredDelete *bool `json:"isScheduledForDeferredDelete,omitempty"`

	// Health details of different KPIs
	KpisHealths map[string]*KPIResourceHealthDetails `json:"kpisHealths,omitempty"`

	// Last backup operation status.
	LastBackupStatus *string `json:"lastBackupStatus,omitempty"`

	// Timestamp of the last backup operation on this backup item.
	LastBackupTime *time.Time `json:"lastBackupTime,omitempty"`

	// Timestamp when the last (latest) backup copy was created for this backup item.
	LastRecoveryPoint *time.Time `json:"lastRecoveryPoint,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Name of the policy used for protection
	PolicyName *string `json:"policyName,omitempty"`

	// Data ID of the protected item.
	ProtectedItemDataID *string `json:"protectedItemDataId,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionState `json:"protectionState,omitempty"`

	// Backup status of this backup item.
	ProtectionStatus *string `json:"protectionStatus,omitempty"`

	// ResourceGuardOperationRequests on which LAC check will be performed
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Fully qualified ARM ID of the virtual machine represented by this item.
	VirtualMachineID *string `json:"virtualMachineId,omitempty"`

	// Type of workload this item represents.
	WorkloadType *DataSourceType `json:"workloadType,omitempty"`
}

AzureIaaSVMProtectedItem - IaaS VM workload-specific backup item.

func (*AzureIaaSVMProtectedItem) GetAzureIaaSVMProtectedItem

func (a *AzureIaaSVMProtectedItem) GetAzureIaaSVMProtectedItem() *AzureIaaSVMProtectedItem

GetAzureIaaSVMProtectedItem implements the AzureIaaSVMProtectedItemClassification interface for type AzureIaaSVMProtectedItem.

func (*AzureIaaSVMProtectedItem) GetProtectedItem added in v0.2.0

func (a *AzureIaaSVMProtectedItem) GetProtectedItem() *ProtectedItem

GetProtectedItem implements the ProtectedItemClassification interface for type AzureIaaSVMProtectedItem.

func (AzureIaaSVMProtectedItem) MarshalJSON

func (a AzureIaaSVMProtectedItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureIaaSVMProtectedItem.

func (*AzureIaaSVMProtectedItem) UnmarshalJSON

func (a *AzureIaaSVMProtectedItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureIaaSVMProtectedItem.

type AzureIaaSVMProtectedItemClassification

type AzureIaaSVMProtectedItemClassification interface {
	ProtectedItemClassification
	// GetAzureIaaSVMProtectedItem returns the AzureIaaSVMProtectedItem content of the underlying type.
	GetAzureIaaSVMProtectedItem() *AzureIaaSVMProtectedItem
}

AzureIaaSVMProtectedItemClassification provides polymorphic access to related types. Call the interface's GetAzureIaaSVMProtectedItem() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureIaaSClassicComputeVMProtectedItem, *AzureIaaSComputeVMProtectedItem, *AzureIaaSVMProtectedItem

type AzureIaaSVMProtectedItemExtendedInfo

type AzureIaaSVMProtectedItemExtendedInfo struct {
	// The oldest backup copy available for this backup item.
	OldestRecoveryPoint *time.Time `json:"oldestRecoveryPoint,omitempty"`

	// Specifies if backup policy associated with the backup item is inconsistent.
	PolicyInconsistent *bool `json:"policyInconsistent,omitempty"`

	// Number of backup copies available for this backup item.
	RecoveryPointCount *int32 `json:"recoveryPointCount,omitempty"`
}

AzureIaaSVMProtectedItemExtendedInfo - Additional information on Azure IaaS VM specific backup item.

func (AzureIaaSVMProtectedItemExtendedInfo) MarshalJSON

func (a AzureIaaSVMProtectedItemExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureIaaSVMProtectedItemExtendedInfo.

func (*AzureIaaSVMProtectedItemExtendedInfo) UnmarshalJSON

func (a *AzureIaaSVMProtectedItemExtendedInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureIaaSVMProtectedItemExtendedInfo.

type AzureIaaSVMProtectionPolicy

type AzureIaaSVMProtectionPolicy struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	BackupManagementType *string                     `json:"backupManagementType,omitempty"`
	InstantRPDetails     *InstantRPAdditionalDetails `json:"instantRPDetails,omitempty"`

	// Instant RP retention policy range in days
	InstantRpRetentionRangeInDays *int32            `json:"instantRpRetentionRangeInDays,omitempty"`
	PolicyType                    *IAASVMPolicyType `json:"policyType,omitempty"`

	// Number of items associated with this policy.
	ProtectedItemsCount *int32 `json:"protectedItemsCount,omitempty"`

	// ResourceGuard Operation Requests
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// Retention policy with the details on backup copy retention ranges.
	RetentionPolicy RetentionPolicyClassification `json:"retentionPolicy,omitempty"`

	// Backup schedule specified as part of backup policy.
	SchedulePolicy SchedulePolicyClassification `json:"schedulePolicy,omitempty"`

	// TimeZone optional input as string. For example: TimeZone = "Pacific Standard Time".
	TimeZone *string `json:"timeZone,omitempty"`
}

AzureIaaSVMProtectionPolicy - IaaS VM workload-specific backup policy.

func (*AzureIaaSVMProtectionPolicy) GetProtectionPolicy added in v0.2.0

func (a *AzureIaaSVMProtectionPolicy) GetProtectionPolicy() *ProtectionPolicy

GetProtectionPolicy implements the ProtectionPolicyClassification interface for type AzureIaaSVMProtectionPolicy.

func (AzureIaaSVMProtectionPolicy) MarshalJSON

func (a AzureIaaSVMProtectionPolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureIaaSVMProtectionPolicy.

func (*AzureIaaSVMProtectionPolicy) UnmarshalJSON

func (a *AzureIaaSVMProtectionPolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureIaaSVMProtectionPolicy.

type AzureRecoveryServiceVaultProtectionIntent

type AzureRecoveryServiceVaultProtectionIntent struct {
	// REQUIRED; backup protectionIntent type.
	ProtectionIntentItemType *ProtectionIntentItemType `json:"protectionIntentItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// ID of the item which is getting protected, In case of Azure Vm , it is ProtectedItemId
	ItemID *string `json:"itemId,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`
}

AzureRecoveryServiceVaultProtectionIntent - Azure Recovery Services Vault specific protection intent item.

func (*AzureRecoveryServiceVaultProtectionIntent) GetAzureRecoveryServiceVaultProtectionIntent

func (a *AzureRecoveryServiceVaultProtectionIntent) GetAzureRecoveryServiceVaultProtectionIntent() *AzureRecoveryServiceVaultProtectionIntent

GetAzureRecoveryServiceVaultProtectionIntent implements the AzureRecoveryServiceVaultProtectionIntentClassification interface for type AzureRecoveryServiceVaultProtectionIntent.

func (*AzureRecoveryServiceVaultProtectionIntent) GetProtectionIntent added in v0.2.0

GetProtectionIntent implements the ProtectionIntentClassification interface for type AzureRecoveryServiceVaultProtectionIntent.

func (AzureRecoveryServiceVaultProtectionIntent) MarshalJSON added in v0.2.0

MarshalJSON implements the json.Marshaller interface for type AzureRecoveryServiceVaultProtectionIntent.

func (*AzureRecoveryServiceVaultProtectionIntent) UnmarshalJSON added in v0.2.0

func (a *AzureRecoveryServiceVaultProtectionIntent) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureRecoveryServiceVaultProtectionIntent.

type AzureRecoveryServiceVaultProtectionIntentClassification

type AzureRecoveryServiceVaultProtectionIntentClassification interface {
	ProtectionIntentClassification
	// GetAzureRecoveryServiceVaultProtectionIntent returns the AzureRecoveryServiceVaultProtectionIntent content of the underlying type.
	GetAzureRecoveryServiceVaultProtectionIntent() *AzureRecoveryServiceVaultProtectionIntent
}

AzureRecoveryServiceVaultProtectionIntentClassification provides polymorphic access to related types. Call the interface's GetAzureRecoveryServiceVaultProtectionIntent() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureRecoveryServiceVaultProtectionIntent, *AzureWorkloadAutoProtectionIntent, *AzureWorkloadSQLAutoProtectionIntent

type AzureResourceProtectionIntent

type AzureResourceProtectionIntent struct {
	// REQUIRED; backup protectionIntent type.
	ProtectionIntentItemType *ProtectionIntentItemType `json:"protectionIntentItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Friendly name of the VM represented by this backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// ID of the item which is getting protected, In case of Azure Vm , it is ProtectedItemId
	ItemID *string `json:"itemId,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`
}

AzureResourceProtectionIntent - IaaS VM specific backup protection intent item.

func (*AzureResourceProtectionIntent) GetProtectionIntent added in v0.2.0

func (a *AzureResourceProtectionIntent) GetProtectionIntent() *ProtectionIntent

GetProtectionIntent implements the ProtectionIntentClassification interface for type AzureResourceProtectionIntent.

func (AzureResourceProtectionIntent) MarshalJSON

func (a AzureResourceProtectionIntent) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureResourceProtectionIntent.

func (*AzureResourceProtectionIntent) UnmarshalJSON

func (a *AzureResourceProtectionIntent) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureResourceProtectionIntent.

type AzureSQLAGWorkloadContainerProtectionContainer

type AzureSQLAGWorkloadContainerProtectionContainer struct {
	// REQUIRED; Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows
	// machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer.
	// 6. Azure workload Backup is VMAppContainer
	ContainerType *ContainerType `json:"containerType,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Additional details of a workload container.
	ExtendedInfo *AzureWorkloadContainerExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// Time stamp when this container was updated.
	LastUpdatedTime *time.Time `json:"lastUpdatedTime,omitempty"`

	// Re-Do Operation
	OperationType *OperationType `json:"operationType,omitempty"`

	// Type of the protectable object associated with this container
	ProtectableObjectType *string `json:"protectableObjectType,omitempty"`

	// Status of registration of the container with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`

	// ARM ID of the virtual machine represented by this Azure Workload Container
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Workload type for which registration was sent.
	WorkloadType *WorkloadType `json:"workloadType,omitempty"`
}

AzureSQLAGWorkloadContainerProtectionContainer - Container for SQL workloads under SQL Availability Group.

func (*AzureSQLAGWorkloadContainerProtectionContainer) GetAzureWorkloadContainer added in v0.2.0

GetAzureWorkloadContainer implements the AzureWorkloadContainerClassification interface for type AzureSQLAGWorkloadContainerProtectionContainer.

func (*AzureSQLAGWorkloadContainerProtectionContainer) GetProtectionContainer added in v0.2.0

GetProtectionContainer implements the ProtectionContainerClassification interface for type AzureSQLAGWorkloadContainerProtectionContainer.

func (AzureSQLAGWorkloadContainerProtectionContainer) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureSQLAGWorkloadContainerProtectionContainer.

func (*AzureSQLAGWorkloadContainerProtectionContainer) UnmarshalJSON added in v0.2.0

UnmarshalJSON implements the json.Unmarshaller interface for type AzureSQLAGWorkloadContainerProtectionContainer.

type AzureSQLContainer

type AzureSQLContainer struct {
	// REQUIRED; Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows
	// machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer.
	// 6. Azure workload Backup is VMAppContainer
	ContainerType *ContainerType `json:"containerType,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// Type of the protectable object associated with this container
	ProtectableObjectType *string `json:"protectableObjectType,omitempty"`

	// Status of registration of the container with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`
}

AzureSQLContainer - Azure Sql workload-specific container.

func (*AzureSQLContainer) GetProtectionContainer added in v0.2.0

func (a *AzureSQLContainer) GetProtectionContainer() *ProtectionContainer

GetProtectionContainer implements the ProtectionContainerClassification interface for type AzureSQLContainer.

func (AzureSQLContainer) MarshalJSON

func (a AzureSQLContainer) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureSQLContainer.

func (*AzureSQLContainer) UnmarshalJSON added in v0.2.0

func (a *AzureSQLContainer) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureSQLContainer.

type AzureSQLProtectedItem

type AzureSQLProtectedItem struct {
	// REQUIRED; backup item type.
	ProtectedItemType *string `json:"protectedItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of the backup set the backup item belongs to
	BackupSetName *string `json:"backupSetName,omitempty"`

	// Unique name of container
	ContainerName *string `json:"containerName,omitempty"`

	// Create mode to indicate recovery of existing soft deleted data source or creation of new data source.
	CreateMode *CreateMode `json:"createMode,omitempty"`

	// Time for deferred deletion in UTC
	DeferredDeleteTimeInUTC *time.Time `json:"deferredDeleteTimeInUTC,omitempty"`

	// Time remaining before the DS marked for deferred delete is permanently deleted
	DeferredDeleteTimeRemaining *string `json:"deferredDeleteTimeRemaining,omitempty"`

	// Additional information for this backup item.
	ExtendedInfo *AzureSQLProtectedItemExtendedInfo `json:"extendedInfo,omitempty"`

	// Flag to identify whether datasource is protected in archive
	IsArchiveEnabled *bool `json:"isArchiveEnabled,omitempty"`

	// Flag to identify whether the deferred deleted DS is to be purged soon
	IsDeferredDeleteScheduleUpcoming *bool `json:"isDeferredDeleteScheduleUpcoming,omitempty"`

	// Flag to identify that deferred deleted DS is to be moved into Pause state
	IsRehydrate *bool `json:"isRehydrate,omitempty"`

	// Flag to identify whether the DS is scheduled for deferred delete
	IsScheduledForDeferredDelete *bool `json:"isScheduledForDeferredDelete,omitempty"`

	// Timestamp when the last (latest) backup copy was created for this backup item.
	LastRecoveryPoint *time.Time `json:"lastRecoveryPoint,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Name of the policy used for protection
	PolicyName *string `json:"policyName,omitempty"`

	// Internal ID of a backup item. Used by Azure SQL Backup engine to contact Recovery Services.
	ProtectedItemDataID *string `json:"protectedItemDataId,omitempty"`

	// Backup state of the backed up item.
	ProtectionState *ProtectedItemState `json:"protectionState,omitempty"`

	// ResourceGuardOperationRequests on which LAC check will be performed
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Type of workload this item represents.
	WorkloadType *DataSourceType `json:"workloadType,omitempty"`
}

AzureSQLProtectedItem - Azure SQL workload-specific backup item.

func (*AzureSQLProtectedItem) GetProtectedItem added in v0.2.0

func (a *AzureSQLProtectedItem) GetProtectedItem() *ProtectedItem

GetProtectedItem implements the ProtectedItemClassification interface for type AzureSQLProtectedItem.

func (AzureSQLProtectedItem) MarshalJSON

func (a AzureSQLProtectedItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureSQLProtectedItem.

func (*AzureSQLProtectedItem) UnmarshalJSON

func (a *AzureSQLProtectedItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureSQLProtectedItem.

type AzureSQLProtectedItemExtendedInfo

type AzureSQLProtectedItemExtendedInfo struct {
	// The oldest backup copy available for this item in the service.
	OldestRecoveryPoint *time.Time `json:"oldestRecoveryPoint,omitempty"`

	// State of the backup policy associated with this backup item.
	PolicyState *string `json:"policyState,omitempty"`

	// Number of available backup copies associated with this backup item.
	RecoveryPointCount *int32 `json:"recoveryPointCount,omitempty"`
}

AzureSQLProtectedItemExtendedInfo - Additional information on Azure Sql specific protected item.

func (AzureSQLProtectedItemExtendedInfo) MarshalJSON

func (a AzureSQLProtectedItemExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureSQLProtectedItemExtendedInfo.

func (*AzureSQLProtectedItemExtendedInfo) UnmarshalJSON

func (a *AzureSQLProtectedItemExtendedInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureSQLProtectedItemExtendedInfo.

type AzureSQLProtectionPolicy

type AzureSQLProtectionPolicy struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Number of items associated with this policy.
	ProtectedItemsCount *int32 `json:"protectedItemsCount,omitempty"`

	// ResourceGuard Operation Requests
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// Retention policy details.
	RetentionPolicy RetentionPolicyClassification `json:"retentionPolicy,omitempty"`
}

AzureSQLProtectionPolicy - Azure SQL workload-specific backup policy.

func (*AzureSQLProtectionPolicy) GetProtectionPolicy added in v0.2.0

func (a *AzureSQLProtectionPolicy) GetProtectionPolicy() *ProtectionPolicy

GetProtectionPolicy implements the ProtectionPolicyClassification interface for type AzureSQLProtectionPolicy.

func (AzureSQLProtectionPolicy) MarshalJSON

func (a AzureSQLProtectionPolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureSQLProtectionPolicy.

func (*AzureSQLProtectionPolicy) UnmarshalJSON

func (a *AzureSQLProtectionPolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureSQLProtectionPolicy.

type AzureStorageContainer

type AzureStorageContainer struct {
	// REQUIRED; Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows
	// machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer.
	// 6. Azure workload Backup is VMAppContainer
	ContainerType *ContainerType `json:"containerType,omitempty"`

	// Whether storage account lock is to be acquired for this container or not.
	AcquireStorageAccountLock *AcquireStorageAccountLock `json:"acquireStorageAccountLock,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// Type of the protectable object associated with this container
	ProtectableObjectType *string `json:"protectableObjectType,omitempty"`

	// Number of items backed up in this container.
	ProtectedItemCount *int64 `json:"protectedItemCount,omitempty"`

	// Status of registration of the container with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`

	// Resource group name of Recovery Services Vault.
	ResourceGroup *string `json:"resourceGroup,omitempty"`

	// Fully qualified ARM url.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Storage account version.
	StorageAccountVersion *string `json:"storageAccountVersion,omitempty"`
}

AzureStorageContainer - Azure Storage Account workload-specific container.

func (*AzureStorageContainer) GetProtectionContainer added in v0.2.0

func (a *AzureStorageContainer) GetProtectionContainer() *ProtectionContainer

GetProtectionContainer implements the ProtectionContainerClassification interface for type AzureStorageContainer.

func (AzureStorageContainer) MarshalJSON

func (a AzureStorageContainer) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureStorageContainer.

func (*AzureStorageContainer) UnmarshalJSON

func (a *AzureStorageContainer) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureStorageContainer.

type AzureStorageErrorInfo

type AzureStorageErrorInfo struct {
	// Error code.
	ErrorCode *int32 `json:"errorCode,omitempty"`

	// Localized error string.
	ErrorString *string `json:"errorString,omitempty"`

	// List of localized recommendations for above error code.
	Recommendations []*string `json:"recommendations,omitempty"`
}

AzureStorageErrorInfo - Azure storage specific error information

func (AzureStorageErrorInfo) MarshalJSON

func (a AzureStorageErrorInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureStorageErrorInfo.

type AzureStorageJob

type AzureStorageJob struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	JobType *string `json:"jobType,omitempty"`

	// Gets or sets the state/actions applicable on this job like cancel/retry.
	ActionsInfo []*JobSupportedAction `json:"actionsInfo,omitempty"`

	// ActivityId of job.
	ActivityID *string `json:"activityId,omitempty"`

	// Backup management type to execute the current job.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Time elapsed during the execution of this job.
	Duration *string `json:"duration,omitempty"`

	// The end time.
	EndTime *time.Time `json:"endTime,omitempty"`

	// Friendly name of the entity on which the current job is executing.
	EntityFriendlyName *string `json:"entityFriendlyName,omitempty"`

	// Error details on execution of this job.
	ErrorDetails []*AzureStorageErrorInfo `json:"errorDetails,omitempty"`

	// Additional information about the job.
	ExtendedInfo *AzureStorageJobExtendedInfo `json:"extendedInfo,omitempty"`

	// Indicated that whether the job is adhoc(true) or scheduled(false)
	IsUserTriggered *bool `json:"isUserTriggered,omitempty"`

	// The operation name.
	Operation *string `json:"operation,omitempty"`

	// The start time.
	StartTime *time.Time `json:"startTime,omitempty"`

	// Job status.
	Status *string `json:"status,omitempty"`

	// Specifies friendly name of the storage account.
	StorageAccountName *string `json:"storageAccountName,omitempty"`

	// Specifies whether the Storage account is a Classic or an Azure Resource Manager Storage account.
	StorageAccountVersion *string `json:"storageAccountVersion,omitempty"`
}

AzureStorageJob - Azure storage specific job.

func (*AzureStorageJob) GetJob added in v0.2.0

func (a *AzureStorageJob) GetJob() *Job

GetJob implements the JobClassification interface for type AzureStorageJob.

func (AzureStorageJob) MarshalJSON

func (a AzureStorageJob) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureStorageJob.

func (*AzureStorageJob) UnmarshalJSON

func (a *AzureStorageJob) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureStorageJob.

type AzureStorageJobExtendedInfo

type AzureStorageJobExtendedInfo struct {
	// Non localized error message on job execution.
	DynamicErrorMessage *string `json:"dynamicErrorMessage,omitempty"`

	// Job properties.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// List of tasks for this job
	TasksList []*AzureStorageJobTaskDetails `json:"tasksList,omitempty"`
}

AzureStorageJobExtendedInfo - Azure Storage workload-specific additional information for job.

func (AzureStorageJobExtendedInfo) MarshalJSON

func (a AzureStorageJobExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureStorageJobExtendedInfo.

type AzureStorageJobTaskDetails

type AzureStorageJobTaskDetails struct {
	// The status.
	Status *string `json:"status,omitempty"`

	// The task display name.
	TaskID *string `json:"taskId,omitempty"`
}

AzureStorageJobTaskDetails - Azure storage workload specific job task details.

type AzureStorageProtectableContainer

type AzureStorageProtectableContainer struct {
	// REQUIRED; Type of the container. The value of this property for
	// 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines
	ProtectableContainerType *ContainerType `json:"protectableContainerType,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Fabric Id of the container such as ARM Id.
	ContainerID *string `json:"containerId,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`
}

AzureStorageProtectableContainer - Azure Storage-specific protectable containers

func (*AzureStorageProtectableContainer) GetProtectableContainer added in v0.2.0

func (a *AzureStorageProtectableContainer) GetProtectableContainer() *ProtectableContainer

GetProtectableContainer implements the ProtectableContainerClassification interface for type AzureStorageProtectableContainer.

func (AzureStorageProtectableContainer) MarshalJSON

func (a AzureStorageProtectableContainer) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureStorageProtectableContainer.

func (*AzureStorageProtectableContainer) UnmarshalJSON added in v0.2.0

func (a *AzureStorageProtectableContainer) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureStorageProtectableContainer.

type AzureVMAppContainerProtectableContainer

type AzureVMAppContainerProtectableContainer struct {
	// REQUIRED; Type of the container. The value of this property for
	// 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines
	ProtectableContainerType *ContainerType `json:"protectableContainerType,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Fabric Id of the container such as ARM Id.
	ContainerID *string `json:"containerId,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`
}

AzureVMAppContainerProtectableContainer - Azure workload-specific container

func (*AzureVMAppContainerProtectableContainer) GetProtectableContainer added in v0.2.0

func (a *AzureVMAppContainerProtectableContainer) GetProtectableContainer() *ProtectableContainer

GetProtectableContainer implements the ProtectableContainerClassification interface for type AzureVMAppContainerProtectableContainer.

func (AzureVMAppContainerProtectableContainer) MarshalJSON

func (a AzureVMAppContainerProtectableContainer) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureVMAppContainerProtectableContainer.

func (*AzureVMAppContainerProtectableContainer) UnmarshalJSON added in v0.2.0

func (a *AzureVMAppContainerProtectableContainer) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMAppContainerProtectableContainer.

type AzureVMAppContainerProtectionContainer

type AzureVMAppContainerProtectionContainer struct {
	// REQUIRED; Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows
	// machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer.
	// 6. Azure workload Backup is VMAppContainer
	ContainerType *ContainerType `json:"containerType,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Additional details of a workload container.
	ExtendedInfo *AzureWorkloadContainerExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// Time stamp when this container was updated.
	LastUpdatedTime *time.Time `json:"lastUpdatedTime,omitempty"`

	// Re-Do Operation
	OperationType *OperationType `json:"operationType,omitempty"`

	// Type of the protectable object associated with this container
	ProtectableObjectType *string `json:"protectableObjectType,omitempty"`

	// Status of registration of the container with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`

	// ARM ID of the virtual machine represented by this Azure Workload Container
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Workload type for which registration was sent.
	WorkloadType *WorkloadType `json:"workloadType,omitempty"`
}

AzureVMAppContainerProtectionContainer - Container for SQL workloads under Azure Virtual Machines.

func (*AzureVMAppContainerProtectionContainer) GetAzureWorkloadContainer added in v0.2.0

func (a *AzureVMAppContainerProtectionContainer) GetAzureWorkloadContainer() *AzureWorkloadContainer

GetAzureWorkloadContainer implements the AzureWorkloadContainerClassification interface for type AzureVMAppContainerProtectionContainer.

func (*AzureVMAppContainerProtectionContainer) GetProtectionContainer added in v0.2.0

func (a *AzureVMAppContainerProtectionContainer) GetProtectionContainer() *ProtectionContainer

GetProtectionContainer implements the ProtectionContainerClassification interface for type AzureVMAppContainerProtectionContainer.

func (AzureVMAppContainerProtectionContainer) MarshalJSON

func (a AzureVMAppContainerProtectionContainer) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureVMAppContainerProtectionContainer.

func (*AzureVMAppContainerProtectionContainer) UnmarshalJSON added in v0.2.0

func (a *AzureVMAppContainerProtectionContainer) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMAppContainerProtectionContainer.

type AzureVMResourceFeatureSupportRequest

type AzureVMResourceFeatureSupportRequest struct {
	// REQUIRED; backup support feature type.
	FeatureType *string `json:"featureType,omitempty"`

	// SKUs (Premium/Managed etc) in case of IaasVM
	VMSKU *string `json:"vmSku,omitempty"`

	// Size of the resource: VM size(A/D series etc) in case of IaasVM
	VMSize *string `json:"vmSize,omitempty"`
}

AzureVMResourceFeatureSupportRequest - AzureResource(IaaS VM) Specific feature support request

func (*AzureVMResourceFeatureSupportRequest) GetFeatureSupportRequest added in v0.2.0

func (a *AzureVMResourceFeatureSupportRequest) GetFeatureSupportRequest() *FeatureSupportRequest

GetFeatureSupportRequest implements the FeatureSupportRequestClassification interface for type AzureVMResourceFeatureSupportRequest.

func (AzureVMResourceFeatureSupportRequest) MarshalJSON

func (a AzureVMResourceFeatureSupportRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureVMResourceFeatureSupportRequest.

func (*AzureVMResourceFeatureSupportRequest) UnmarshalJSON

func (a *AzureVMResourceFeatureSupportRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMResourceFeatureSupportRequest.

type AzureVMResourceFeatureSupportResponse

type AzureVMResourceFeatureSupportResponse struct {
	// Support status of feature
	SupportStatus *SupportStatus `json:"supportStatus,omitempty"`
}

AzureVMResourceFeatureSupportResponse - Response for feature support requests for Azure IaasVm

type AzureVMWorkloadItem

type AzureVMWorkloadItem struct {
	// REQUIRED; Type of the backup item.
	WorkloadItemType *string `json:"workloadItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Indicates if workload item is auto-protectable
	IsAutoProtectable *bool `json:"isAutoProtectable,omitempty"`

	// Name for instance or AG
	ParentName *string `json:"parentName,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// For instance or AG, indicates number of DB's to be protected
	SubWorkloadItemCount *int32 `json:"subWorkloadItemCount,omitempty"`

	// For instance or AG, indicates number of DB's present
	Subinquireditemcount *int32 `json:"subinquireditemcount,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureVMWorkloadItem - Azure VM workload-specific workload item.

func (*AzureVMWorkloadItem) GetAzureVMWorkloadItem

func (a *AzureVMWorkloadItem) GetAzureVMWorkloadItem() *AzureVMWorkloadItem

GetAzureVMWorkloadItem implements the AzureVMWorkloadItemClassification interface for type AzureVMWorkloadItem.

func (*AzureVMWorkloadItem) GetWorkloadItem added in v0.2.0

func (a *AzureVMWorkloadItem) GetWorkloadItem() *WorkloadItem

GetWorkloadItem implements the WorkloadItemClassification interface for type AzureVMWorkloadItem.

func (AzureVMWorkloadItem) MarshalJSON

func (a AzureVMWorkloadItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadItem.

func (*AzureVMWorkloadItem) UnmarshalJSON

func (a *AzureVMWorkloadItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadItem.

type AzureVMWorkloadItemClassification

type AzureVMWorkloadItemClassification interface {
	WorkloadItemClassification
	// GetAzureVMWorkloadItem returns the AzureVMWorkloadItem content of the underlying type.
	GetAzureVMWorkloadItem() *AzureVMWorkloadItem
}

AzureVMWorkloadItemClassification provides polymorphic access to related types. Call the interface's GetAzureVMWorkloadItem() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureVMWorkloadItem, *AzureVMWorkloadSAPAseDatabaseWorkloadItem, *AzureVMWorkloadSAPAseSystemWorkloadItem, *AzureVMWorkloadSAPHanaDatabaseWorkloadItem, - *AzureVMWorkloadSAPHanaSystemWorkloadItem, *AzureVMWorkloadSQLDatabaseWorkloadItem, *AzureVMWorkloadSQLInstanceWorkloadItem

type AzureVMWorkloadProtectableItem

type AzureVMWorkloadProtectableItem struct {
	// REQUIRED; Type of the backup item.
	ProtectableItemType *string `json:"protectableItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Indicates if protectable item is auto-protectable
	IsAutoProtectable *bool `json:"isAutoProtectable,omitempty"`

	// Indicates if protectable item is auto-protected
	IsAutoProtected *bool `json:"isAutoProtected,omitempty"`

	// Name for instance or AG
	ParentName *string `json:"parentName,omitempty"`

	// Parent Unique Name is added to provide the service formatted URI Name of the Parent Only Applicable for data bases where
	// the parent would be either Instance or a SQL AG.
	ParentUniqueName *string `json:"parentUniqueName,omitempty"`

	// Pre-backup validation for protectable objects
	Prebackupvalidation *PreBackupValidation `json:"prebackupvalidation,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// For instance or AG, indicates number of DB's present
	Subinquireditemcount *int32 `json:"subinquireditemcount,omitempty"`

	// For instance or AG, indicates number of DB's to be protected
	Subprotectableitemcount *int32 `json:"subprotectableitemcount,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureVMWorkloadProtectableItem - Azure VM workload-specific protectable item.

func (*AzureVMWorkloadProtectableItem) GetAzureVMWorkloadProtectableItem

func (a *AzureVMWorkloadProtectableItem) GetAzureVMWorkloadProtectableItem() *AzureVMWorkloadProtectableItem

GetAzureVMWorkloadProtectableItem implements the AzureVMWorkloadProtectableItemClassification interface for type AzureVMWorkloadProtectableItem.

func (*AzureVMWorkloadProtectableItem) GetWorkloadProtectableItem added in v0.2.0

func (a *AzureVMWorkloadProtectableItem) GetWorkloadProtectableItem() *WorkloadProtectableItem

GetWorkloadProtectableItem implements the WorkloadProtectableItemClassification interface for type AzureVMWorkloadProtectableItem.

func (AzureVMWorkloadProtectableItem) MarshalJSON

func (a AzureVMWorkloadProtectableItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadProtectableItem.

func (*AzureVMWorkloadProtectableItem) UnmarshalJSON

func (a *AzureVMWorkloadProtectableItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadProtectableItem.

type AzureVMWorkloadProtectableItemClassification

type AzureVMWorkloadProtectableItemClassification interface {
	WorkloadProtectableItemClassification
	// GetAzureVMWorkloadProtectableItem returns the AzureVMWorkloadProtectableItem content of the underlying type.
	GetAzureVMWorkloadProtectableItem() *AzureVMWorkloadProtectableItem
}

AzureVMWorkloadProtectableItemClassification provides polymorphic access to related types. Call the interface's GetAzureVMWorkloadProtectableItem() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureVMWorkloadProtectableItem, *AzureVMWorkloadSAPAseSystemProtectableItem, *AzureVMWorkloadSAPHanaDatabaseProtectableItem, - *AzureVMWorkloadSAPHanaSystemProtectableItem, *AzureVMWorkloadSQLAvailabilityGroupProtectableItem, *AzureVMWorkloadSQLDatabaseProtectableItem, - *AzureVMWorkloadSQLInstanceProtectableItem

type AzureVMWorkloadProtectedItem

type AzureVMWorkloadProtectedItem struct {
	// REQUIRED; backup item type.
	ProtectedItemType *string `json:"protectedItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of the backup set the backup item belongs to
	BackupSetName *string `json:"backupSetName,omitempty"`

	// Unique name of container
	ContainerName *string `json:"containerName,omitempty"`

	// Create mode to indicate recovery of existing soft deleted data source or creation of new data source.
	CreateMode *CreateMode `json:"createMode,omitempty"`

	// Time for deferred deletion in UTC
	DeferredDeleteTimeInUTC *time.Time `json:"deferredDeleteTimeInUTC,omitempty"`

	// Time remaining before the DS marked for deferred delete is permanently deleted
	DeferredDeleteTimeRemaining *string `json:"deferredDeleteTimeRemaining,omitempty"`

	// Additional information for this backup item.
	ExtendedInfo *AzureVMWorkloadProtectedItemExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the DB represented by this backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Flag to identify whether datasource is protected in archive
	IsArchiveEnabled *bool `json:"isArchiveEnabled,omitempty"`

	// Flag to identify whether the deferred deleted DS is to be purged soon
	IsDeferredDeleteScheduleUpcoming *bool `json:"isDeferredDeleteScheduleUpcoming,omitempty"`

	// Flag to identify that deferred deleted DS is to be moved into Pause state
	IsRehydrate *bool `json:"isRehydrate,omitempty"`

	// Flag to identify whether the DS is scheduled for deferred delete
	IsScheduledForDeferredDelete *bool `json:"isScheduledForDeferredDelete,omitempty"`

	// Health details of different KPIs
	KpisHealths map[string]*KPIResourceHealthDetails `json:"kpisHealths,omitempty"`

	// Error details in last backup
	LastBackupErrorDetail *ErrorDetail `json:"lastBackupErrorDetail,omitempty"`

	// Last backup operation status. Possible values: Healthy, Unhealthy.
	LastBackupStatus *LastBackupStatus `json:"lastBackupStatus,omitempty"`

	// Timestamp of the last backup operation on this backup item.
	LastBackupTime *time.Time `json:"lastBackupTime,omitempty"`

	// Timestamp when the last (latest) backup copy was created for this backup item.
	LastRecoveryPoint *time.Time `json:"lastRecoveryPoint,omitempty"`

	// Parent name of the DB such as Instance or Availability Group.
	ParentName *string `json:"parentName,omitempty"`

	// Parent type of protected item, example: for a DB, standalone server or distributed
	ParentType *string `json:"parentType,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Name of the policy used for protection
	PolicyName *string `json:"policyName,omitempty"`

	// Data ID of the protected item.
	ProtectedItemDataSourceID *string `json:"protectedItemDataSourceId,omitempty"`

	// Health status of the backup item, evaluated based on last heartbeat received
	ProtectedItemHealthStatus *ProtectedItemHealthStatus `json:"protectedItemHealthStatus,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionState `json:"protectionState,omitempty"`

	// Backup status of this backup item.
	ProtectionStatus *string `json:"protectionStatus,omitempty"`

	// ResourceGuardOperationRequests on which LAC check will be performed
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Type of workload this item represents.
	WorkloadType *DataSourceType `json:"workloadType,omitempty"`
}

AzureVMWorkloadProtectedItem - Azure VM workload-specific protected item.

func (*AzureVMWorkloadProtectedItem) GetAzureVMWorkloadProtectedItem

func (a *AzureVMWorkloadProtectedItem) GetAzureVMWorkloadProtectedItem() *AzureVMWorkloadProtectedItem

GetAzureVMWorkloadProtectedItem implements the AzureVMWorkloadProtectedItemClassification interface for type AzureVMWorkloadProtectedItem.

func (*AzureVMWorkloadProtectedItem) GetProtectedItem added in v0.2.0

func (a *AzureVMWorkloadProtectedItem) GetProtectedItem() *ProtectedItem

GetProtectedItem implements the ProtectedItemClassification interface for type AzureVMWorkloadProtectedItem.

func (AzureVMWorkloadProtectedItem) MarshalJSON

func (a AzureVMWorkloadProtectedItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadProtectedItem.

func (*AzureVMWorkloadProtectedItem) UnmarshalJSON

func (a *AzureVMWorkloadProtectedItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadProtectedItem.

type AzureVMWorkloadProtectedItemClassification

type AzureVMWorkloadProtectedItemClassification interface {
	ProtectedItemClassification
	// GetAzureVMWorkloadProtectedItem returns the AzureVMWorkloadProtectedItem content of the underlying type.
	GetAzureVMWorkloadProtectedItem() *AzureVMWorkloadProtectedItem
}

AzureVMWorkloadProtectedItemClassification provides polymorphic access to related types. Call the interface's GetAzureVMWorkloadProtectedItem() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureVMWorkloadProtectedItem, *AzureVMWorkloadSAPAseDatabaseProtectedItem, *AzureVMWorkloadSAPHanaDatabaseProtectedItem, - *AzureVMWorkloadSQLDatabaseProtectedItem

type AzureVMWorkloadProtectedItemExtendedInfo

type AzureVMWorkloadProtectedItemExtendedInfo struct {
	// The oldest backup copy available for this backup item.
	OldestRecoveryPoint *time.Time `json:"oldestRecoveryPoint,omitempty"`

	// Indicates consistency of policy object and policy applied to this backup item.
	PolicyState *string `json:"policyState,omitempty"`

	// Indicates consistency of policy object and policy applied to this backup item.
	RecoveryModel *string `json:"recoveryModel,omitempty"`

	// Number of backup copies available for this backup item.
	RecoveryPointCount *int32 `json:"recoveryPointCount,omitempty"`
}

AzureVMWorkloadProtectedItemExtendedInfo - Additional information on Azure Workload for SQL specific backup item.

func (AzureVMWorkloadProtectedItemExtendedInfo) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadProtectedItemExtendedInfo.

func (*AzureVMWorkloadProtectedItemExtendedInfo) UnmarshalJSON

func (a *AzureVMWorkloadProtectedItemExtendedInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadProtectedItemExtendedInfo.

type AzureVMWorkloadProtectionPolicy

type AzureVMWorkloadProtectionPolicy struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Fix the policy inconsistency
	MakePolicyConsistent *bool `json:"makePolicyConsistent,omitempty"`

	// Number of items associated with this policy.
	ProtectedItemsCount *int32 `json:"protectedItemsCount,omitempty"`

	// ResourceGuard Operation Requests
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// Common settings for the backup management
	Settings *Settings `json:"settings,omitempty"`

	// List of sub-protection policies which includes schedule and retention
	SubProtectionPolicy []*SubProtectionPolicy `json:"subProtectionPolicy,omitempty"`

	// Type of workload for the backup management
	WorkLoadType *WorkloadType `json:"workLoadType,omitempty"`
}

AzureVMWorkloadProtectionPolicy - Azure VM (Mercury) workload-specific backup policy.

func (*AzureVMWorkloadProtectionPolicy) GetProtectionPolicy added in v0.2.0

func (a *AzureVMWorkloadProtectionPolicy) GetProtectionPolicy() *ProtectionPolicy

GetProtectionPolicy implements the ProtectionPolicyClassification interface for type AzureVMWorkloadProtectionPolicy.

func (AzureVMWorkloadProtectionPolicy) MarshalJSON

func (a AzureVMWorkloadProtectionPolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadProtectionPolicy.

func (*AzureVMWorkloadProtectionPolicy) UnmarshalJSON

func (a *AzureVMWorkloadProtectionPolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadProtectionPolicy.

type AzureVMWorkloadSAPAseDatabaseProtectedItem

type AzureVMWorkloadSAPAseDatabaseProtectedItem struct {
	// REQUIRED; backup item type.
	ProtectedItemType *string `json:"protectedItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of the backup set the backup item belongs to
	BackupSetName *string `json:"backupSetName,omitempty"`

	// Unique name of container
	ContainerName *string `json:"containerName,omitempty"`

	// Create mode to indicate recovery of existing soft deleted data source or creation of new data source.
	CreateMode *CreateMode `json:"createMode,omitempty"`

	// Time for deferred deletion in UTC
	DeferredDeleteTimeInUTC *time.Time `json:"deferredDeleteTimeInUTC,omitempty"`

	// Time remaining before the DS marked for deferred delete is permanently deleted
	DeferredDeleteTimeRemaining *string `json:"deferredDeleteTimeRemaining,omitempty"`

	// Additional information for this backup item.
	ExtendedInfo *AzureVMWorkloadProtectedItemExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the DB represented by this backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Flag to identify whether datasource is protected in archive
	IsArchiveEnabled *bool `json:"isArchiveEnabled,omitempty"`

	// Flag to identify whether the deferred deleted DS is to be purged soon
	IsDeferredDeleteScheduleUpcoming *bool `json:"isDeferredDeleteScheduleUpcoming,omitempty"`

	// Flag to identify that deferred deleted DS is to be moved into Pause state
	IsRehydrate *bool `json:"isRehydrate,omitempty"`

	// Flag to identify whether the DS is scheduled for deferred delete
	IsScheduledForDeferredDelete *bool `json:"isScheduledForDeferredDelete,omitempty"`

	// Health details of different KPIs
	KpisHealths map[string]*KPIResourceHealthDetails `json:"kpisHealths,omitempty"`

	// Error details in last backup
	LastBackupErrorDetail *ErrorDetail `json:"lastBackupErrorDetail,omitempty"`

	// Last backup operation status. Possible values: Healthy, Unhealthy.
	LastBackupStatus *LastBackupStatus `json:"lastBackupStatus,omitempty"`

	// Timestamp of the last backup operation on this backup item.
	LastBackupTime *time.Time `json:"lastBackupTime,omitempty"`

	// Timestamp when the last (latest) backup copy was created for this backup item.
	LastRecoveryPoint *time.Time `json:"lastRecoveryPoint,omitempty"`

	// Parent name of the DB such as Instance or Availability Group.
	ParentName *string `json:"parentName,omitempty"`

	// Parent type of protected item, example: for a DB, standalone server or distributed
	ParentType *string `json:"parentType,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Name of the policy used for protection
	PolicyName *string `json:"policyName,omitempty"`

	// Data ID of the protected item.
	ProtectedItemDataSourceID *string `json:"protectedItemDataSourceId,omitempty"`

	// Health status of the backup item, evaluated based on last heartbeat received
	ProtectedItemHealthStatus *ProtectedItemHealthStatus `json:"protectedItemHealthStatus,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionState `json:"protectionState,omitempty"`

	// Backup status of this backup item.
	ProtectionStatus *string `json:"protectionStatus,omitempty"`

	// ResourceGuardOperationRequests on which LAC check will be performed
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Type of workload this item represents.
	WorkloadType *DataSourceType `json:"workloadType,omitempty"`
}

AzureVMWorkloadSAPAseDatabaseProtectedItem - Azure VM workload-specific protected item representing SAP ASE Database.

func (*AzureVMWorkloadSAPAseDatabaseProtectedItem) GetAzureVMWorkloadProtectedItem added in v0.2.0

func (a *AzureVMWorkloadSAPAseDatabaseProtectedItem) GetAzureVMWorkloadProtectedItem() *AzureVMWorkloadProtectedItem

GetAzureVMWorkloadProtectedItem implements the AzureVMWorkloadProtectedItemClassification interface for type AzureVMWorkloadSAPAseDatabaseProtectedItem.

func (*AzureVMWorkloadSAPAseDatabaseProtectedItem) GetProtectedItem added in v0.2.0

GetProtectedItem implements the ProtectedItemClassification interface for type AzureVMWorkloadSAPAseDatabaseProtectedItem.

func (AzureVMWorkloadSAPAseDatabaseProtectedItem) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSAPAseDatabaseProtectedItem.

func (*AzureVMWorkloadSAPAseDatabaseProtectedItem) UnmarshalJSON added in v0.2.0

func (a *AzureVMWorkloadSAPAseDatabaseProtectedItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSAPAseDatabaseProtectedItem.

type AzureVMWorkloadSAPAseDatabaseWorkloadItem

type AzureVMWorkloadSAPAseDatabaseWorkloadItem struct {
	// REQUIRED; Type of the backup item.
	WorkloadItemType *string `json:"workloadItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Indicates if workload item is auto-protectable
	IsAutoProtectable *bool `json:"isAutoProtectable,omitempty"`

	// Name for instance or AG
	ParentName *string `json:"parentName,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// For instance or AG, indicates number of DB's to be protected
	SubWorkloadItemCount *int32 `json:"subWorkloadItemCount,omitempty"`

	// For instance or AG, indicates number of DB's present
	Subinquireditemcount *int32 `json:"subinquireditemcount,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureVMWorkloadSAPAseDatabaseWorkloadItem - Azure VM workload-specific workload item representing SAP ASE Database.

func (*AzureVMWorkloadSAPAseDatabaseWorkloadItem) GetAzureVMWorkloadItem added in v0.2.0

GetAzureVMWorkloadItem implements the AzureVMWorkloadItemClassification interface for type AzureVMWorkloadSAPAseDatabaseWorkloadItem.

func (*AzureVMWorkloadSAPAseDatabaseWorkloadItem) GetWorkloadItem added in v0.2.0

GetWorkloadItem implements the WorkloadItemClassification interface for type AzureVMWorkloadSAPAseDatabaseWorkloadItem.

func (AzureVMWorkloadSAPAseDatabaseWorkloadItem) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSAPAseDatabaseWorkloadItem.

func (*AzureVMWorkloadSAPAseDatabaseWorkloadItem) UnmarshalJSON added in v0.2.0

func (a *AzureVMWorkloadSAPAseDatabaseWorkloadItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSAPAseDatabaseWorkloadItem.

type AzureVMWorkloadSAPAseSystemProtectableItem

type AzureVMWorkloadSAPAseSystemProtectableItem struct {
	// REQUIRED; Type of the backup item.
	ProtectableItemType *string `json:"protectableItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Indicates if protectable item is auto-protectable
	IsAutoProtectable *bool `json:"isAutoProtectable,omitempty"`

	// Indicates if protectable item is auto-protected
	IsAutoProtected *bool `json:"isAutoProtected,omitempty"`

	// Name for instance or AG
	ParentName *string `json:"parentName,omitempty"`

	// Parent Unique Name is added to provide the service formatted URI Name of the Parent Only Applicable for data bases where
	// the parent would be either Instance or a SQL AG.
	ParentUniqueName *string `json:"parentUniqueName,omitempty"`

	// Pre-backup validation for protectable objects
	Prebackupvalidation *PreBackupValidation `json:"prebackupvalidation,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// For instance or AG, indicates number of DB's present
	Subinquireditemcount *int32 `json:"subinquireditemcount,omitempty"`

	// For instance or AG, indicates number of DB's to be protected
	Subprotectableitemcount *int32 `json:"subprotectableitemcount,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureVMWorkloadSAPAseSystemProtectableItem - Azure VM workload-specific protectable item representing SAP ASE System.

func (*AzureVMWorkloadSAPAseSystemProtectableItem) GetAzureVMWorkloadProtectableItem added in v0.2.0

func (a *AzureVMWorkloadSAPAseSystemProtectableItem) GetAzureVMWorkloadProtectableItem() *AzureVMWorkloadProtectableItem

GetAzureVMWorkloadProtectableItem implements the AzureVMWorkloadProtectableItemClassification interface for type AzureVMWorkloadSAPAseSystemProtectableItem.

func (*AzureVMWorkloadSAPAseSystemProtectableItem) GetWorkloadProtectableItem added in v0.2.0

GetWorkloadProtectableItem implements the WorkloadProtectableItemClassification interface for type AzureVMWorkloadSAPAseSystemProtectableItem.

func (AzureVMWorkloadSAPAseSystemProtectableItem) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSAPAseSystemProtectableItem.

func (*AzureVMWorkloadSAPAseSystemProtectableItem) UnmarshalJSON added in v0.2.0

func (a *AzureVMWorkloadSAPAseSystemProtectableItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSAPAseSystemProtectableItem.

type AzureVMWorkloadSAPAseSystemWorkloadItem

type AzureVMWorkloadSAPAseSystemWorkloadItem struct {
	// REQUIRED; Type of the backup item.
	WorkloadItemType *string `json:"workloadItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Indicates if workload item is auto-protectable
	IsAutoProtectable *bool `json:"isAutoProtectable,omitempty"`

	// Name for instance or AG
	ParentName *string `json:"parentName,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// For instance or AG, indicates number of DB's to be protected
	SubWorkloadItemCount *int32 `json:"subWorkloadItemCount,omitempty"`

	// For instance or AG, indicates number of DB's present
	Subinquireditemcount *int32 `json:"subinquireditemcount,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureVMWorkloadSAPAseSystemWorkloadItem - Azure VM workload-specific workload item representing SAP ASE System.

func (*AzureVMWorkloadSAPAseSystemWorkloadItem) GetAzureVMWorkloadItem added in v0.2.0

func (a *AzureVMWorkloadSAPAseSystemWorkloadItem) GetAzureVMWorkloadItem() *AzureVMWorkloadItem

GetAzureVMWorkloadItem implements the AzureVMWorkloadItemClassification interface for type AzureVMWorkloadSAPAseSystemWorkloadItem.

func (*AzureVMWorkloadSAPAseSystemWorkloadItem) GetWorkloadItem added in v0.2.0

GetWorkloadItem implements the WorkloadItemClassification interface for type AzureVMWorkloadSAPAseSystemWorkloadItem.

func (AzureVMWorkloadSAPAseSystemWorkloadItem) MarshalJSON

func (a AzureVMWorkloadSAPAseSystemWorkloadItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSAPAseSystemWorkloadItem.

func (*AzureVMWorkloadSAPAseSystemWorkloadItem) UnmarshalJSON added in v0.2.0

func (a *AzureVMWorkloadSAPAseSystemWorkloadItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSAPAseSystemWorkloadItem.

type AzureVMWorkloadSAPHanaDatabaseProtectableItem

type AzureVMWorkloadSAPHanaDatabaseProtectableItem struct {
	// REQUIRED; Type of the backup item.
	ProtectableItemType *string `json:"protectableItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Indicates if protectable item is auto-protectable
	IsAutoProtectable *bool `json:"isAutoProtectable,omitempty"`

	// Indicates if protectable item is auto-protected
	IsAutoProtected *bool `json:"isAutoProtected,omitempty"`

	// Name for instance or AG
	ParentName *string `json:"parentName,omitempty"`

	// Parent Unique Name is added to provide the service formatted URI Name of the Parent Only Applicable for data bases where
	// the parent would be either Instance or a SQL AG.
	ParentUniqueName *string `json:"parentUniqueName,omitempty"`

	// Pre-backup validation for protectable objects
	Prebackupvalidation *PreBackupValidation `json:"prebackupvalidation,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// For instance or AG, indicates number of DB's present
	Subinquireditemcount *int32 `json:"subinquireditemcount,omitempty"`

	// For instance or AG, indicates number of DB's to be protected
	Subprotectableitemcount *int32 `json:"subprotectableitemcount,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureVMWorkloadSAPHanaDatabaseProtectableItem - Azure VM workload-specific protectable item representing SAP HANA Database.

func (*AzureVMWorkloadSAPHanaDatabaseProtectableItem) GetAzureVMWorkloadProtectableItem added in v0.2.0

func (a *AzureVMWorkloadSAPHanaDatabaseProtectableItem) GetAzureVMWorkloadProtectableItem() *AzureVMWorkloadProtectableItem

GetAzureVMWorkloadProtectableItem implements the AzureVMWorkloadProtectableItemClassification interface for type AzureVMWorkloadSAPHanaDatabaseProtectableItem.

func (*AzureVMWorkloadSAPHanaDatabaseProtectableItem) GetWorkloadProtectableItem added in v0.2.0

GetWorkloadProtectableItem implements the WorkloadProtectableItemClassification interface for type AzureVMWorkloadSAPHanaDatabaseProtectableItem.

func (AzureVMWorkloadSAPHanaDatabaseProtectableItem) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSAPHanaDatabaseProtectableItem.

func (*AzureVMWorkloadSAPHanaDatabaseProtectableItem) UnmarshalJSON added in v0.2.0

func (a *AzureVMWorkloadSAPHanaDatabaseProtectableItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSAPHanaDatabaseProtectableItem.

type AzureVMWorkloadSAPHanaDatabaseProtectedItem

type AzureVMWorkloadSAPHanaDatabaseProtectedItem struct {
	// REQUIRED; backup item type.
	ProtectedItemType *string `json:"protectedItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of the backup set the backup item belongs to
	BackupSetName *string `json:"backupSetName,omitempty"`

	// Unique name of container
	ContainerName *string `json:"containerName,omitempty"`

	// Create mode to indicate recovery of existing soft deleted data source or creation of new data source.
	CreateMode *CreateMode `json:"createMode,omitempty"`

	// Time for deferred deletion in UTC
	DeferredDeleteTimeInUTC *time.Time `json:"deferredDeleteTimeInUTC,omitempty"`

	// Time remaining before the DS marked for deferred delete is permanently deleted
	DeferredDeleteTimeRemaining *string `json:"deferredDeleteTimeRemaining,omitempty"`

	// Additional information for this backup item.
	ExtendedInfo *AzureVMWorkloadProtectedItemExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the DB represented by this backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Flag to identify whether datasource is protected in archive
	IsArchiveEnabled *bool `json:"isArchiveEnabled,omitempty"`

	// Flag to identify whether the deferred deleted DS is to be purged soon
	IsDeferredDeleteScheduleUpcoming *bool `json:"isDeferredDeleteScheduleUpcoming,omitempty"`

	// Flag to identify that deferred deleted DS is to be moved into Pause state
	IsRehydrate *bool `json:"isRehydrate,omitempty"`

	// Flag to identify whether the DS is scheduled for deferred delete
	IsScheduledForDeferredDelete *bool `json:"isScheduledForDeferredDelete,omitempty"`

	// Health details of different KPIs
	KpisHealths map[string]*KPIResourceHealthDetails `json:"kpisHealths,omitempty"`

	// Error details in last backup
	LastBackupErrorDetail *ErrorDetail `json:"lastBackupErrorDetail,omitempty"`

	// Last backup operation status. Possible values: Healthy, Unhealthy.
	LastBackupStatus *LastBackupStatus `json:"lastBackupStatus,omitempty"`

	// Timestamp of the last backup operation on this backup item.
	LastBackupTime *time.Time `json:"lastBackupTime,omitempty"`

	// Timestamp when the last (latest) backup copy was created for this backup item.
	LastRecoveryPoint *time.Time `json:"lastRecoveryPoint,omitempty"`

	// Parent name of the DB such as Instance or Availability Group.
	ParentName *string `json:"parentName,omitempty"`

	// Parent type of protected item, example: for a DB, standalone server or distributed
	ParentType *string `json:"parentType,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Name of the policy used for protection
	PolicyName *string `json:"policyName,omitempty"`

	// Data ID of the protected item.
	ProtectedItemDataSourceID *string `json:"protectedItemDataSourceId,omitempty"`

	// Health status of the backup item, evaluated based on last heartbeat received
	ProtectedItemHealthStatus *ProtectedItemHealthStatus `json:"protectedItemHealthStatus,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionState `json:"protectionState,omitempty"`

	// Backup status of this backup item.
	ProtectionStatus *string `json:"protectionStatus,omitempty"`

	// ResourceGuardOperationRequests on which LAC check will be performed
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Type of workload this item represents.
	WorkloadType *DataSourceType `json:"workloadType,omitempty"`
}

AzureVMWorkloadSAPHanaDatabaseProtectedItem - Azure VM workload-specific protected item representing SAP HANA Database.

func (*AzureVMWorkloadSAPHanaDatabaseProtectedItem) GetAzureVMWorkloadProtectedItem added in v0.2.0

func (a *AzureVMWorkloadSAPHanaDatabaseProtectedItem) GetAzureVMWorkloadProtectedItem() *AzureVMWorkloadProtectedItem

GetAzureVMWorkloadProtectedItem implements the AzureVMWorkloadProtectedItemClassification interface for type AzureVMWorkloadSAPHanaDatabaseProtectedItem.

func (*AzureVMWorkloadSAPHanaDatabaseProtectedItem) GetProtectedItem added in v0.2.0

GetProtectedItem implements the ProtectedItemClassification interface for type AzureVMWorkloadSAPHanaDatabaseProtectedItem.

func (AzureVMWorkloadSAPHanaDatabaseProtectedItem) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSAPHanaDatabaseProtectedItem.

func (*AzureVMWorkloadSAPHanaDatabaseProtectedItem) UnmarshalJSON added in v0.2.0

func (a *AzureVMWorkloadSAPHanaDatabaseProtectedItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSAPHanaDatabaseProtectedItem.

type AzureVMWorkloadSAPHanaDatabaseWorkloadItem

type AzureVMWorkloadSAPHanaDatabaseWorkloadItem struct {
	// REQUIRED; Type of the backup item.
	WorkloadItemType *string `json:"workloadItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Indicates if workload item is auto-protectable
	IsAutoProtectable *bool `json:"isAutoProtectable,omitempty"`

	// Name for instance or AG
	ParentName *string `json:"parentName,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// For instance or AG, indicates number of DB's to be protected
	SubWorkloadItemCount *int32 `json:"subWorkloadItemCount,omitempty"`

	// For instance or AG, indicates number of DB's present
	Subinquireditemcount *int32 `json:"subinquireditemcount,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureVMWorkloadSAPHanaDatabaseWorkloadItem - Azure VM workload-specific workload item representing SAP HANA Database.

func (*AzureVMWorkloadSAPHanaDatabaseWorkloadItem) GetAzureVMWorkloadItem added in v0.2.0

GetAzureVMWorkloadItem implements the AzureVMWorkloadItemClassification interface for type AzureVMWorkloadSAPHanaDatabaseWorkloadItem.

func (*AzureVMWorkloadSAPHanaDatabaseWorkloadItem) GetWorkloadItem added in v0.2.0

GetWorkloadItem implements the WorkloadItemClassification interface for type AzureVMWorkloadSAPHanaDatabaseWorkloadItem.

func (AzureVMWorkloadSAPHanaDatabaseWorkloadItem) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSAPHanaDatabaseWorkloadItem.

func (*AzureVMWorkloadSAPHanaDatabaseWorkloadItem) UnmarshalJSON added in v0.2.0

func (a *AzureVMWorkloadSAPHanaDatabaseWorkloadItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSAPHanaDatabaseWorkloadItem.

type AzureVMWorkloadSAPHanaSystemProtectableItem

type AzureVMWorkloadSAPHanaSystemProtectableItem struct {
	// REQUIRED; Type of the backup item.
	ProtectableItemType *string `json:"protectableItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Indicates if protectable item is auto-protectable
	IsAutoProtectable *bool `json:"isAutoProtectable,omitempty"`

	// Indicates if protectable item is auto-protected
	IsAutoProtected *bool `json:"isAutoProtected,omitempty"`

	// Name for instance or AG
	ParentName *string `json:"parentName,omitempty"`

	// Parent Unique Name is added to provide the service formatted URI Name of the Parent Only Applicable for data bases where
	// the parent would be either Instance or a SQL AG.
	ParentUniqueName *string `json:"parentUniqueName,omitempty"`

	// Pre-backup validation for protectable objects
	Prebackupvalidation *PreBackupValidation `json:"prebackupvalidation,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// For instance or AG, indicates number of DB's present
	Subinquireditemcount *int32 `json:"subinquireditemcount,omitempty"`

	// For instance or AG, indicates number of DB's to be protected
	Subprotectableitemcount *int32 `json:"subprotectableitemcount,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureVMWorkloadSAPHanaSystemProtectableItem - Azure VM workload-specific protectable item representing SAP HANA System.

func (*AzureVMWorkloadSAPHanaSystemProtectableItem) GetAzureVMWorkloadProtectableItem added in v0.2.0

func (a *AzureVMWorkloadSAPHanaSystemProtectableItem) GetAzureVMWorkloadProtectableItem() *AzureVMWorkloadProtectableItem

GetAzureVMWorkloadProtectableItem implements the AzureVMWorkloadProtectableItemClassification interface for type AzureVMWorkloadSAPHanaSystemProtectableItem.

func (*AzureVMWorkloadSAPHanaSystemProtectableItem) GetWorkloadProtectableItem added in v0.2.0

GetWorkloadProtectableItem implements the WorkloadProtectableItemClassification interface for type AzureVMWorkloadSAPHanaSystemProtectableItem.

func (AzureVMWorkloadSAPHanaSystemProtectableItem) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSAPHanaSystemProtectableItem.

func (*AzureVMWorkloadSAPHanaSystemProtectableItem) UnmarshalJSON added in v0.2.0

func (a *AzureVMWorkloadSAPHanaSystemProtectableItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSAPHanaSystemProtectableItem.

type AzureVMWorkloadSAPHanaSystemWorkloadItem

type AzureVMWorkloadSAPHanaSystemWorkloadItem struct {
	// REQUIRED; Type of the backup item.
	WorkloadItemType *string `json:"workloadItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Indicates if workload item is auto-protectable
	IsAutoProtectable *bool `json:"isAutoProtectable,omitempty"`

	// Name for instance or AG
	ParentName *string `json:"parentName,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// For instance or AG, indicates number of DB's to be protected
	SubWorkloadItemCount *int32 `json:"subWorkloadItemCount,omitempty"`

	// For instance or AG, indicates number of DB's present
	Subinquireditemcount *int32 `json:"subinquireditemcount,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureVMWorkloadSAPHanaSystemWorkloadItem - Azure VM workload-specific workload item representing SAP HANA System.

func (*AzureVMWorkloadSAPHanaSystemWorkloadItem) GetAzureVMWorkloadItem added in v0.2.0

GetAzureVMWorkloadItem implements the AzureVMWorkloadItemClassification interface for type AzureVMWorkloadSAPHanaSystemWorkloadItem.

func (*AzureVMWorkloadSAPHanaSystemWorkloadItem) GetWorkloadItem added in v0.2.0

GetWorkloadItem implements the WorkloadItemClassification interface for type AzureVMWorkloadSAPHanaSystemWorkloadItem.

func (AzureVMWorkloadSAPHanaSystemWorkloadItem) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSAPHanaSystemWorkloadItem.

func (*AzureVMWorkloadSAPHanaSystemWorkloadItem) UnmarshalJSON added in v0.2.0

func (a *AzureVMWorkloadSAPHanaSystemWorkloadItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSAPHanaSystemWorkloadItem.

type AzureVMWorkloadSQLAvailabilityGroupProtectableItem

type AzureVMWorkloadSQLAvailabilityGroupProtectableItem struct {
	// REQUIRED; Type of the backup item.
	ProtectableItemType *string `json:"protectableItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Indicates if protectable item is auto-protectable
	IsAutoProtectable *bool `json:"isAutoProtectable,omitempty"`

	// Indicates if protectable item is auto-protected
	IsAutoProtected *bool `json:"isAutoProtected,omitempty"`

	// Name for instance or AG
	ParentName *string `json:"parentName,omitempty"`

	// Parent Unique Name is added to provide the service formatted URI Name of the Parent Only Applicable for data bases where
	// the parent would be either Instance or a SQL AG.
	ParentUniqueName *string `json:"parentUniqueName,omitempty"`

	// Pre-backup validation for protectable objects
	Prebackupvalidation *PreBackupValidation `json:"prebackupvalidation,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// For instance or AG, indicates number of DB's present
	Subinquireditemcount *int32 `json:"subinquireditemcount,omitempty"`

	// For instance or AG, indicates number of DB's to be protected
	Subprotectableitemcount *int32 `json:"subprotectableitemcount,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureVMWorkloadSQLAvailabilityGroupProtectableItem - Azure VM workload-specific protectable item representing SQL Availability Group.

func (*AzureVMWorkloadSQLAvailabilityGroupProtectableItem) GetAzureVMWorkloadProtectableItem added in v0.2.0

GetAzureVMWorkloadProtectableItem implements the AzureVMWorkloadProtectableItemClassification interface for type AzureVMWorkloadSQLAvailabilityGroupProtectableItem.

func (*AzureVMWorkloadSQLAvailabilityGroupProtectableItem) GetWorkloadProtectableItem added in v0.2.0

GetWorkloadProtectableItem implements the WorkloadProtectableItemClassification interface for type AzureVMWorkloadSQLAvailabilityGroupProtectableItem.

func (AzureVMWorkloadSQLAvailabilityGroupProtectableItem) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSQLAvailabilityGroupProtectableItem.

func (*AzureVMWorkloadSQLAvailabilityGroupProtectableItem) UnmarshalJSON added in v0.2.0

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSQLAvailabilityGroupProtectableItem.

type AzureVMWorkloadSQLDatabaseProtectableItem

type AzureVMWorkloadSQLDatabaseProtectableItem struct {
	// REQUIRED; Type of the backup item.
	ProtectableItemType *string `json:"protectableItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Indicates if protectable item is auto-protectable
	IsAutoProtectable *bool `json:"isAutoProtectable,omitempty"`

	// Indicates if protectable item is auto-protected
	IsAutoProtected *bool `json:"isAutoProtected,omitempty"`

	// Name for instance or AG
	ParentName *string `json:"parentName,omitempty"`

	// Parent Unique Name is added to provide the service formatted URI Name of the Parent Only Applicable for data bases where
	// the parent would be either Instance or a SQL AG.
	ParentUniqueName *string `json:"parentUniqueName,omitempty"`

	// Pre-backup validation for protectable objects
	Prebackupvalidation *PreBackupValidation `json:"prebackupvalidation,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// For instance or AG, indicates number of DB's present
	Subinquireditemcount *int32 `json:"subinquireditemcount,omitempty"`

	// For instance or AG, indicates number of DB's to be protected
	Subprotectableitemcount *int32 `json:"subprotectableitemcount,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureVMWorkloadSQLDatabaseProtectableItem - Azure VM workload-specific protectable item representing SQL Database.

func (*AzureVMWorkloadSQLDatabaseProtectableItem) GetAzureVMWorkloadProtectableItem added in v0.2.0

func (a *AzureVMWorkloadSQLDatabaseProtectableItem) GetAzureVMWorkloadProtectableItem() *AzureVMWorkloadProtectableItem

GetAzureVMWorkloadProtectableItem implements the AzureVMWorkloadProtectableItemClassification interface for type AzureVMWorkloadSQLDatabaseProtectableItem.

func (*AzureVMWorkloadSQLDatabaseProtectableItem) GetWorkloadProtectableItem added in v0.2.0

func (a *AzureVMWorkloadSQLDatabaseProtectableItem) GetWorkloadProtectableItem() *WorkloadProtectableItem

GetWorkloadProtectableItem implements the WorkloadProtectableItemClassification interface for type AzureVMWorkloadSQLDatabaseProtectableItem.

func (AzureVMWorkloadSQLDatabaseProtectableItem) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSQLDatabaseProtectableItem.

func (*AzureVMWorkloadSQLDatabaseProtectableItem) UnmarshalJSON added in v0.2.0

func (a *AzureVMWorkloadSQLDatabaseProtectableItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSQLDatabaseProtectableItem.

type AzureVMWorkloadSQLDatabaseProtectedItem

type AzureVMWorkloadSQLDatabaseProtectedItem struct {
	// REQUIRED; backup item type.
	ProtectedItemType *string `json:"protectedItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of the backup set the backup item belongs to
	BackupSetName *string `json:"backupSetName,omitempty"`

	// Unique name of container
	ContainerName *string `json:"containerName,omitempty"`

	// Create mode to indicate recovery of existing soft deleted data source or creation of new data source.
	CreateMode *CreateMode `json:"createMode,omitempty"`

	// Time for deferred deletion in UTC
	DeferredDeleteTimeInUTC *time.Time `json:"deferredDeleteTimeInUTC,omitempty"`

	// Time remaining before the DS marked for deferred delete is permanently deleted
	DeferredDeleteTimeRemaining *string `json:"deferredDeleteTimeRemaining,omitempty"`

	// Additional information for this backup item.
	ExtendedInfo *AzureVMWorkloadProtectedItemExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the DB represented by this backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Flag to identify whether datasource is protected in archive
	IsArchiveEnabled *bool `json:"isArchiveEnabled,omitempty"`

	// Flag to identify whether the deferred deleted DS is to be purged soon
	IsDeferredDeleteScheduleUpcoming *bool `json:"isDeferredDeleteScheduleUpcoming,omitempty"`

	// Flag to identify that deferred deleted DS is to be moved into Pause state
	IsRehydrate *bool `json:"isRehydrate,omitempty"`

	// Flag to identify whether the DS is scheduled for deferred delete
	IsScheduledForDeferredDelete *bool `json:"isScheduledForDeferredDelete,omitempty"`

	// Health details of different KPIs
	KpisHealths map[string]*KPIResourceHealthDetails `json:"kpisHealths,omitempty"`

	// Error details in last backup
	LastBackupErrorDetail *ErrorDetail `json:"lastBackupErrorDetail,omitempty"`

	// Last backup operation status. Possible values: Healthy, Unhealthy.
	LastBackupStatus *LastBackupStatus `json:"lastBackupStatus,omitempty"`

	// Timestamp of the last backup operation on this backup item.
	LastBackupTime *time.Time `json:"lastBackupTime,omitempty"`

	// Timestamp when the last (latest) backup copy was created for this backup item.
	LastRecoveryPoint *time.Time `json:"lastRecoveryPoint,omitempty"`

	// Parent name of the DB such as Instance or Availability Group.
	ParentName *string `json:"parentName,omitempty"`

	// Parent type of protected item, example: for a DB, standalone server or distributed
	ParentType *string `json:"parentType,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Name of the policy used for protection
	PolicyName *string `json:"policyName,omitempty"`

	// Data ID of the protected item.
	ProtectedItemDataSourceID *string `json:"protectedItemDataSourceId,omitempty"`

	// Health status of the backup item, evaluated based on last heartbeat received
	ProtectedItemHealthStatus *ProtectedItemHealthStatus `json:"protectedItemHealthStatus,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionState `json:"protectionState,omitempty"`

	// Backup status of this backup item.
	ProtectionStatus *string `json:"protectionStatus,omitempty"`

	// ResourceGuardOperationRequests on which LAC check will be performed
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Type of workload this item represents.
	WorkloadType *DataSourceType `json:"workloadType,omitempty"`
}

AzureVMWorkloadSQLDatabaseProtectedItem - Azure VM workload-specific protected item representing SQL Database.

func (*AzureVMWorkloadSQLDatabaseProtectedItem) GetAzureVMWorkloadProtectedItem added in v0.2.0

func (a *AzureVMWorkloadSQLDatabaseProtectedItem) GetAzureVMWorkloadProtectedItem() *AzureVMWorkloadProtectedItem

GetAzureVMWorkloadProtectedItem implements the AzureVMWorkloadProtectedItemClassification interface for type AzureVMWorkloadSQLDatabaseProtectedItem.

func (*AzureVMWorkloadSQLDatabaseProtectedItem) GetProtectedItem added in v0.2.0

GetProtectedItem implements the ProtectedItemClassification interface for type AzureVMWorkloadSQLDatabaseProtectedItem.

func (AzureVMWorkloadSQLDatabaseProtectedItem) MarshalJSON

func (a AzureVMWorkloadSQLDatabaseProtectedItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSQLDatabaseProtectedItem.

func (*AzureVMWorkloadSQLDatabaseProtectedItem) UnmarshalJSON added in v0.2.0

func (a *AzureVMWorkloadSQLDatabaseProtectedItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSQLDatabaseProtectedItem.

type AzureVMWorkloadSQLDatabaseWorkloadItem

type AzureVMWorkloadSQLDatabaseWorkloadItem struct {
	// REQUIRED; Type of the backup item.
	WorkloadItemType *string `json:"workloadItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Indicates if workload item is auto-protectable
	IsAutoProtectable *bool `json:"isAutoProtectable,omitempty"`

	// Name for instance or AG
	ParentName *string `json:"parentName,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// For instance or AG, indicates number of DB's to be protected
	SubWorkloadItemCount *int32 `json:"subWorkloadItemCount,omitempty"`

	// For instance or AG, indicates number of DB's present
	Subinquireditemcount *int32 `json:"subinquireditemcount,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureVMWorkloadSQLDatabaseWorkloadItem - Azure VM workload-specific workload item representing SQL Database.

func (*AzureVMWorkloadSQLDatabaseWorkloadItem) GetAzureVMWorkloadItem added in v0.2.0

func (a *AzureVMWorkloadSQLDatabaseWorkloadItem) GetAzureVMWorkloadItem() *AzureVMWorkloadItem

GetAzureVMWorkloadItem implements the AzureVMWorkloadItemClassification interface for type AzureVMWorkloadSQLDatabaseWorkloadItem.

func (*AzureVMWorkloadSQLDatabaseWorkloadItem) GetWorkloadItem added in v0.2.0

GetWorkloadItem implements the WorkloadItemClassification interface for type AzureVMWorkloadSQLDatabaseWorkloadItem.

func (AzureVMWorkloadSQLDatabaseWorkloadItem) MarshalJSON

func (a AzureVMWorkloadSQLDatabaseWorkloadItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSQLDatabaseWorkloadItem.

func (*AzureVMWorkloadSQLDatabaseWorkloadItem) UnmarshalJSON added in v0.2.0

func (a *AzureVMWorkloadSQLDatabaseWorkloadItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSQLDatabaseWorkloadItem.

type AzureVMWorkloadSQLInstanceProtectableItem

type AzureVMWorkloadSQLInstanceProtectableItem struct {
	// REQUIRED; Type of the backup item.
	ProtectableItemType *string `json:"protectableItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Indicates if protectable item is auto-protectable
	IsAutoProtectable *bool `json:"isAutoProtectable,omitempty"`

	// Indicates if protectable item is auto-protected
	IsAutoProtected *bool `json:"isAutoProtected,omitempty"`

	// Name for instance or AG
	ParentName *string `json:"parentName,omitempty"`

	// Parent Unique Name is added to provide the service formatted URI Name of the Parent Only Applicable for data bases where
	// the parent would be either Instance or a SQL AG.
	ParentUniqueName *string `json:"parentUniqueName,omitempty"`

	// Pre-backup validation for protectable objects
	Prebackupvalidation *PreBackupValidation `json:"prebackupvalidation,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// For instance or AG, indicates number of DB's present
	Subinquireditemcount *int32 `json:"subinquireditemcount,omitempty"`

	// For instance or AG, indicates number of DB's to be protected
	Subprotectableitemcount *int32 `json:"subprotectableitemcount,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureVMWorkloadSQLInstanceProtectableItem - Azure VM workload-specific protectable item representing SQL Instance.

func (*AzureVMWorkloadSQLInstanceProtectableItem) GetAzureVMWorkloadProtectableItem added in v0.2.0

func (a *AzureVMWorkloadSQLInstanceProtectableItem) GetAzureVMWorkloadProtectableItem() *AzureVMWorkloadProtectableItem

GetAzureVMWorkloadProtectableItem implements the AzureVMWorkloadProtectableItemClassification interface for type AzureVMWorkloadSQLInstanceProtectableItem.

func (*AzureVMWorkloadSQLInstanceProtectableItem) GetWorkloadProtectableItem added in v0.2.0

func (a *AzureVMWorkloadSQLInstanceProtectableItem) GetWorkloadProtectableItem() *WorkloadProtectableItem

GetWorkloadProtectableItem implements the WorkloadProtectableItemClassification interface for type AzureVMWorkloadSQLInstanceProtectableItem.

func (AzureVMWorkloadSQLInstanceProtectableItem) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSQLInstanceProtectableItem.

func (*AzureVMWorkloadSQLInstanceProtectableItem) UnmarshalJSON added in v0.2.0

func (a *AzureVMWorkloadSQLInstanceProtectableItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSQLInstanceProtectableItem.

type AzureVMWorkloadSQLInstanceWorkloadItem

type AzureVMWorkloadSQLInstanceWorkloadItem struct {
	// REQUIRED; Type of the backup item.
	WorkloadItemType *string `json:"workloadItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Data Directory Paths for default directories
	DataDirectoryPaths []*SQLDataDirectory `json:"dataDirectoryPaths,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Indicates if workload item is auto-protectable
	IsAutoProtectable *bool `json:"isAutoProtectable,omitempty"`

	// Name for instance or AG
	ParentName *string `json:"parentName,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Host/Cluster Name for instance or AG
	ServerName *string `json:"serverName,omitempty"`

	// For instance or AG, indicates number of DB's to be protected
	SubWorkloadItemCount *int32 `json:"subWorkloadItemCount,omitempty"`

	// For instance or AG, indicates number of DB's present
	Subinquireditemcount *int32 `json:"subinquireditemcount,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureVMWorkloadSQLInstanceWorkloadItem - Azure VM workload-specific workload item representing SQL Instance.

func (*AzureVMWorkloadSQLInstanceWorkloadItem) GetAzureVMWorkloadItem added in v0.2.0

func (a *AzureVMWorkloadSQLInstanceWorkloadItem) GetAzureVMWorkloadItem() *AzureVMWorkloadItem

GetAzureVMWorkloadItem implements the AzureVMWorkloadItemClassification interface for type AzureVMWorkloadSQLInstanceWorkloadItem.

func (*AzureVMWorkloadSQLInstanceWorkloadItem) GetWorkloadItem added in v0.2.0

GetWorkloadItem implements the WorkloadItemClassification interface for type AzureVMWorkloadSQLInstanceWorkloadItem.

func (AzureVMWorkloadSQLInstanceWorkloadItem) MarshalJSON

func (a AzureVMWorkloadSQLInstanceWorkloadItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureVMWorkloadSQLInstanceWorkloadItem.

func (*AzureVMWorkloadSQLInstanceWorkloadItem) UnmarshalJSON

func (a *AzureVMWorkloadSQLInstanceWorkloadItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureVMWorkloadSQLInstanceWorkloadItem.

type AzureWorkloadAutoProtectionIntent

type AzureWorkloadAutoProtectionIntent struct {
	// REQUIRED; backup protectionIntent type.
	ProtectionIntentItemType *ProtectionIntentItemType `json:"protectionIntentItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// ID of the item which is getting protected, In case of Azure Vm , it is ProtectedItemId
	ItemID *string `json:"itemId,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`
}

AzureWorkloadAutoProtectionIntent - Azure Recovery Services Vault specific protection intent item.

func (*AzureWorkloadAutoProtectionIntent) GetAzureRecoveryServiceVaultProtectionIntent added in v0.2.0

func (a *AzureWorkloadAutoProtectionIntent) GetAzureRecoveryServiceVaultProtectionIntent() *AzureRecoveryServiceVaultProtectionIntent

GetAzureRecoveryServiceVaultProtectionIntent implements the AzureRecoveryServiceVaultProtectionIntentClassification interface for type AzureWorkloadAutoProtectionIntent.

func (*AzureWorkloadAutoProtectionIntent) GetAzureWorkloadAutoProtectionIntent

func (a *AzureWorkloadAutoProtectionIntent) GetAzureWorkloadAutoProtectionIntent() *AzureWorkloadAutoProtectionIntent

GetAzureWorkloadAutoProtectionIntent implements the AzureWorkloadAutoProtectionIntentClassification interface for type AzureWorkloadAutoProtectionIntent.

func (*AzureWorkloadAutoProtectionIntent) GetProtectionIntent added in v0.2.0

func (a *AzureWorkloadAutoProtectionIntent) GetProtectionIntent() *ProtectionIntent

GetProtectionIntent implements the ProtectionIntentClassification interface for type AzureWorkloadAutoProtectionIntent.

func (AzureWorkloadAutoProtectionIntent) MarshalJSON

func (a AzureWorkloadAutoProtectionIntent) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadAutoProtectionIntent.

func (*AzureWorkloadAutoProtectionIntent) UnmarshalJSON added in v0.2.0

func (a *AzureWorkloadAutoProtectionIntent) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadAutoProtectionIntent.

type AzureWorkloadAutoProtectionIntentClassification

type AzureWorkloadAutoProtectionIntentClassification interface {
	AzureRecoveryServiceVaultProtectionIntentClassification
	// GetAzureWorkloadAutoProtectionIntent returns the AzureWorkloadAutoProtectionIntent content of the underlying type.
	GetAzureWorkloadAutoProtectionIntent() *AzureWorkloadAutoProtectionIntent
}

AzureWorkloadAutoProtectionIntentClassification provides polymorphic access to related types. Call the interface's GetAzureWorkloadAutoProtectionIntent() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureWorkloadAutoProtectionIntent, *AzureWorkloadSQLAutoProtectionIntent

type AzureWorkloadBackupRequest

type AzureWorkloadBackupRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Type of backup, viz. Full, Differential, Log or CopyOnlyFull
	BackupType *BackupType `json:"backupType,omitempty"`

	// Bool for Compression setting
	EnableCompression *bool `json:"enableCompression,omitempty"`

	// Backup copy will expire after the time specified (UTC).
	RecoveryPointExpiryTimeInUTC *time.Time `json:"recoveryPointExpiryTimeInUTC,omitempty"`
}

AzureWorkloadBackupRequest - AzureWorkload workload-specific backup request.

func (*AzureWorkloadBackupRequest) GetBackupRequest added in v0.2.0

func (a *AzureWorkloadBackupRequest) GetBackupRequest() *BackupRequest

GetBackupRequest implements the BackupRequestClassification interface for type AzureWorkloadBackupRequest.

func (AzureWorkloadBackupRequest) MarshalJSON

func (a AzureWorkloadBackupRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadBackupRequest.

func (*AzureWorkloadBackupRequest) UnmarshalJSON

func (a *AzureWorkloadBackupRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadBackupRequest.

type AzureWorkloadContainer

type AzureWorkloadContainer struct {
	// REQUIRED; Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows
	// machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer.
	// 6. Azure workload Backup is VMAppContainer
	ContainerType *ContainerType `json:"containerType,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Additional details of a workload container.
	ExtendedInfo *AzureWorkloadContainerExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// Time stamp when this container was updated.
	LastUpdatedTime *time.Time `json:"lastUpdatedTime,omitempty"`

	// Re-Do Operation
	OperationType *OperationType `json:"operationType,omitempty"`

	// Type of the protectable object associated with this container
	ProtectableObjectType *string `json:"protectableObjectType,omitempty"`

	// Status of registration of the container with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`

	// ARM ID of the virtual machine represented by this Azure Workload Container
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Workload type for which registration was sent.
	WorkloadType *WorkloadType `json:"workloadType,omitempty"`
}

AzureWorkloadContainer - Container for the workloads running inside Azure Compute or Classic Compute.

func (*AzureWorkloadContainer) GetAzureWorkloadContainer

func (a *AzureWorkloadContainer) GetAzureWorkloadContainer() *AzureWorkloadContainer

GetAzureWorkloadContainer implements the AzureWorkloadContainerClassification interface for type AzureWorkloadContainer.

func (*AzureWorkloadContainer) GetProtectionContainer added in v0.2.0

func (a *AzureWorkloadContainer) GetProtectionContainer() *ProtectionContainer

GetProtectionContainer implements the ProtectionContainerClassification interface for type AzureWorkloadContainer.

func (AzureWorkloadContainer) MarshalJSON

func (a AzureWorkloadContainer) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadContainer.

func (*AzureWorkloadContainer) UnmarshalJSON

func (a *AzureWorkloadContainer) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadContainer.

type AzureWorkloadContainerAutoProtectionIntent added in v0.2.0

type AzureWorkloadContainerAutoProtectionIntent struct {
	// REQUIRED; backup protectionIntent type.
	ProtectionIntentItemType *ProtectionIntentItemType `json:"protectionIntentItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// ID of the item which is getting protected, In case of Azure Vm , it is ProtectedItemId
	ItemID *string `json:"itemId,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`
}

AzureWorkloadContainerAutoProtectionIntent - Azure workload specific protection intent item.

func (*AzureWorkloadContainerAutoProtectionIntent) GetProtectionIntent added in v0.2.0

GetProtectionIntent implements the ProtectionIntentClassification interface for type AzureWorkloadContainerAutoProtectionIntent.

func (AzureWorkloadContainerAutoProtectionIntent) MarshalJSON added in v0.2.0

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadContainerAutoProtectionIntent.

func (*AzureWorkloadContainerAutoProtectionIntent) UnmarshalJSON added in v0.2.0

func (a *AzureWorkloadContainerAutoProtectionIntent) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadContainerAutoProtectionIntent.

type AzureWorkloadContainerClassification

type AzureWorkloadContainerClassification interface {
	ProtectionContainerClassification
	// GetAzureWorkloadContainer returns the AzureWorkloadContainer content of the underlying type.
	GetAzureWorkloadContainer() *AzureWorkloadContainer
}

AzureWorkloadContainerClassification provides polymorphic access to related types. Call the interface's GetAzureWorkloadContainer() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureSQLAGWorkloadContainerProtectionContainer, *AzureVMAppContainerProtectionContainer, *AzureWorkloadContainer

type AzureWorkloadContainerExtendedInfo

type AzureWorkloadContainerExtendedInfo struct {
	// Host Os Name in case of Stand Alone and Cluster Name in case of distributed container.
	HostServerName *string `json:"hostServerName,omitempty"`

	// Inquiry Status for the container.
	InquiryInfo *InquiryInfo `json:"inquiryInfo,omitempty"`

	// List of the nodes in case of distributed container.
	NodesList []*DistributedNodesInfo `json:"nodesList,omitempty"`
}

AzureWorkloadContainerExtendedInfo - Extended information of the container.

func (AzureWorkloadContainerExtendedInfo) MarshalJSON

func (a AzureWorkloadContainerExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadContainerExtendedInfo.

type AzureWorkloadErrorInfo

type AzureWorkloadErrorInfo struct {
	// Additional details for above error code.
	AdditionalDetails *string `json:"additionalDetails,omitempty"`

	// Error code.
	ErrorCode *int32 `json:"errorCode,omitempty"`

	// Localized error string.
	ErrorString *string `json:"errorString,omitempty"`

	// Title: Typically, the entity that the error pertains to.
	ErrorTitle *string `json:"errorTitle,omitempty"`

	// List of localized recommendations for above error code.
	Recommendations []*string `json:"recommendations,omitempty"`
}

AzureWorkloadErrorInfo - Azure storage specific error information

func (AzureWorkloadErrorInfo) MarshalJSON

func (a AzureWorkloadErrorInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadErrorInfo.

type AzureWorkloadJob

type AzureWorkloadJob struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	JobType *string `json:"jobType,omitempty"`

	// Gets or sets the state/actions applicable on this job like cancel/retry.
	ActionsInfo []*JobSupportedAction `json:"actionsInfo,omitempty"`

	// ActivityId of job.
	ActivityID *string `json:"activityId,omitempty"`

	// Backup management type to execute the current job.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Time elapsed during the execution of this job.
	Duration *string `json:"duration,omitempty"`

	// The end time.
	EndTime *time.Time `json:"endTime,omitempty"`

	// Friendly name of the entity on which the current job is executing.
	EntityFriendlyName *string `json:"entityFriendlyName,omitempty"`

	// Error details on execution of this job.
	ErrorDetails []*AzureWorkloadErrorInfo `json:"errorDetails,omitempty"`

	// Additional information about the job.
	ExtendedInfo *AzureWorkloadJobExtendedInfo `json:"extendedInfo,omitempty"`

	// The operation name.
	Operation *string `json:"operation,omitempty"`

	// The start time.
	StartTime *time.Time `json:"startTime,omitempty"`

	// Job status.
	Status *string `json:"status,omitempty"`

	// Workload type of the job
	WorkloadType *string `json:"workloadType,omitempty"`
}

AzureWorkloadJob - Azure storage specific job.

func (*AzureWorkloadJob) GetJob added in v0.2.0

func (a *AzureWorkloadJob) GetJob() *Job

GetJob implements the JobClassification interface for type AzureWorkloadJob.

func (AzureWorkloadJob) MarshalJSON

func (a AzureWorkloadJob) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadJob.

func (*AzureWorkloadJob) UnmarshalJSON

func (a *AzureWorkloadJob) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadJob.

type AzureWorkloadJobExtendedInfo

type AzureWorkloadJobExtendedInfo struct {
	// Non localized error message on job execution.
	DynamicErrorMessage *string `json:"dynamicErrorMessage,omitempty"`

	// Job properties.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// List of tasks for this job
	TasksList []*AzureWorkloadJobTaskDetails `json:"tasksList,omitempty"`
}

AzureWorkloadJobExtendedInfo - Azure VM workload-specific additional information for job.

func (AzureWorkloadJobExtendedInfo) MarshalJSON

func (a AzureWorkloadJobExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadJobExtendedInfo.

type AzureWorkloadJobTaskDetails

type AzureWorkloadJobTaskDetails struct {
	// The status.
	Status *string `json:"status,omitempty"`

	// The task display name.
	TaskID *string `json:"taskId,omitempty"`
}

AzureWorkloadJobTaskDetails - Azure VM workload specific job task details.

type AzureWorkloadPointInTimeRecoveryPoint

type AzureWorkloadPointInTimeRecoveryPoint struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Eligibility of RP to be moved to another tier
	RecoveryPointMoveReadinessInfo map[string]*RecoveryPointMoveReadinessInfo `json:"recoveryPointMoveReadinessInfo,omitempty"`

	// Recovery point tier information.
	RecoveryPointTierDetails []*RecoveryPointTierInformationV2 `json:"recoveryPointTierDetails,omitempty"`

	// UTC time at which recovery point was created
	RecoveryPointTimeInUTC *time.Time `json:"recoveryPointTimeInUTC,omitempty"`

	// List of log ranges
	TimeRanges []*PointInTimeRange `json:"timeRanges,omitempty"`

	// Type of restore point
	Type *RestorePointType `json:"type,omitempty"`
}

AzureWorkloadPointInTimeRecoveryPoint - Recovery point specific to PointInTime

func (*AzureWorkloadPointInTimeRecoveryPoint) GetAzureWorkloadPointInTimeRecoveryPoint

func (a *AzureWorkloadPointInTimeRecoveryPoint) GetAzureWorkloadPointInTimeRecoveryPoint() *AzureWorkloadPointInTimeRecoveryPoint

GetAzureWorkloadPointInTimeRecoveryPoint implements the AzureWorkloadPointInTimeRecoveryPointClassification interface for type AzureWorkloadPointInTimeRecoveryPoint.

func (*AzureWorkloadPointInTimeRecoveryPoint) GetAzureWorkloadRecoveryPoint added in v0.2.0

func (a *AzureWorkloadPointInTimeRecoveryPoint) GetAzureWorkloadRecoveryPoint() *AzureWorkloadRecoveryPoint

GetAzureWorkloadRecoveryPoint implements the AzureWorkloadRecoveryPointClassification interface for type AzureWorkloadPointInTimeRecoveryPoint.

func (*AzureWorkloadPointInTimeRecoveryPoint) GetRecoveryPoint added in v0.2.0

GetRecoveryPoint implements the RecoveryPointClassification interface for type AzureWorkloadPointInTimeRecoveryPoint.

func (AzureWorkloadPointInTimeRecoveryPoint) MarshalJSON

func (a AzureWorkloadPointInTimeRecoveryPoint) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadPointInTimeRecoveryPoint.

func (*AzureWorkloadPointInTimeRecoveryPoint) UnmarshalJSON

func (a *AzureWorkloadPointInTimeRecoveryPoint) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadPointInTimeRecoveryPoint.

type AzureWorkloadPointInTimeRecoveryPointClassification

type AzureWorkloadPointInTimeRecoveryPointClassification interface {
	AzureWorkloadRecoveryPointClassification
	// GetAzureWorkloadPointInTimeRecoveryPoint returns the AzureWorkloadPointInTimeRecoveryPoint content of the underlying type.
	GetAzureWorkloadPointInTimeRecoveryPoint() *AzureWorkloadPointInTimeRecoveryPoint
}

AzureWorkloadPointInTimeRecoveryPointClassification provides polymorphic access to related types. Call the interface's GetAzureWorkloadPointInTimeRecoveryPoint() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureWorkloadPointInTimeRecoveryPoint, *AzureWorkloadSAPHanaPointInTimeRecoveryPoint

type AzureWorkloadPointInTimeRestoreRequest

type AzureWorkloadPointInTimeRestoreRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// PointInTime value
	PointInTime *time.Time `json:"pointInTime,omitempty"`

	// Workload specific property bag.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// Defines whether the current recovery mode is file restore or database restore
	RecoveryMode *RecoveryMode `json:"recoveryMode,omitempty"`

	// Type of this recovery.
	RecoveryType *RecoveryType `json:"recoveryType,omitempty"`

	// Fully qualified ARM ID of the VM on which workload that was running is being recovered.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Details of target database
	TargetInfo *TargetRestoreInfo `json:"targetInfo,omitempty"`

	// This is the complete ARM Id of the target VM For e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}
	TargetVirtualMachineID *string `json:"targetVirtualMachineId,omitempty"`
}

AzureWorkloadPointInTimeRestoreRequest - AzureWorkload SAP Hana -specific restore. Specifically for PointInTime/Log restore

func (*AzureWorkloadPointInTimeRestoreRequest) GetAzureWorkloadRestoreRequest added in v0.2.0

func (a *AzureWorkloadPointInTimeRestoreRequest) GetAzureWorkloadRestoreRequest() *AzureWorkloadRestoreRequest

GetAzureWorkloadRestoreRequest implements the AzureWorkloadRestoreRequestClassification interface for type AzureWorkloadPointInTimeRestoreRequest.

func (*AzureWorkloadPointInTimeRestoreRequest) GetRestoreRequest added in v0.2.0

GetRestoreRequest implements the RestoreRequestClassification interface for type AzureWorkloadPointInTimeRestoreRequest.

func (AzureWorkloadPointInTimeRestoreRequest) MarshalJSON

func (a AzureWorkloadPointInTimeRestoreRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadPointInTimeRestoreRequest.

func (*AzureWorkloadPointInTimeRestoreRequest) UnmarshalJSON

func (a *AzureWorkloadPointInTimeRestoreRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadPointInTimeRestoreRequest.

type AzureWorkloadRecoveryPoint

type AzureWorkloadRecoveryPoint struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Eligibility of RP to be moved to another tier
	RecoveryPointMoveReadinessInfo map[string]*RecoveryPointMoveReadinessInfo `json:"recoveryPointMoveReadinessInfo,omitempty"`

	// Recovery point tier information.
	RecoveryPointTierDetails []*RecoveryPointTierInformationV2 `json:"recoveryPointTierDetails,omitempty"`

	// UTC time at which recovery point was created
	RecoveryPointTimeInUTC *time.Time `json:"recoveryPointTimeInUTC,omitempty"`

	// Type of restore point
	Type *RestorePointType `json:"type,omitempty"`
}

AzureWorkloadRecoveryPoint - Workload specific recovery point, specifically encapsulates full/diff recovery point

func (*AzureWorkloadRecoveryPoint) GetAzureWorkloadRecoveryPoint

func (a *AzureWorkloadRecoveryPoint) GetAzureWorkloadRecoveryPoint() *AzureWorkloadRecoveryPoint

GetAzureWorkloadRecoveryPoint implements the AzureWorkloadRecoveryPointClassification interface for type AzureWorkloadRecoveryPoint.

func (*AzureWorkloadRecoveryPoint) GetRecoveryPoint added in v0.2.0

func (a *AzureWorkloadRecoveryPoint) GetRecoveryPoint() *RecoveryPoint

GetRecoveryPoint implements the RecoveryPointClassification interface for type AzureWorkloadRecoveryPoint.

func (AzureWorkloadRecoveryPoint) MarshalJSON added in v0.2.0

func (a AzureWorkloadRecoveryPoint) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadRecoveryPoint.

func (*AzureWorkloadRecoveryPoint) UnmarshalJSON

func (a *AzureWorkloadRecoveryPoint) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadRecoveryPoint.

type AzureWorkloadRecoveryPointClassification

type AzureWorkloadRecoveryPointClassification interface {
	RecoveryPointClassification
	// GetAzureWorkloadRecoveryPoint returns the AzureWorkloadRecoveryPoint content of the underlying type.
	GetAzureWorkloadRecoveryPoint() *AzureWorkloadRecoveryPoint
}

AzureWorkloadRecoveryPointClassification provides polymorphic access to related types. Call the interface's GetAzureWorkloadRecoveryPoint() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureWorkloadPointInTimeRecoveryPoint, *AzureWorkloadRecoveryPoint, *AzureWorkloadSAPHanaPointInTimeRecoveryPoint, *AzureWorkloadSAPHanaRecoveryPoint, - *AzureWorkloadSQLPointInTimeRecoveryPoint, *AzureWorkloadSQLRecoveryPoint

type AzureWorkloadRestoreRequest

type AzureWorkloadRestoreRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Workload specific property bag.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// Defines whether the current recovery mode is file restore or database restore
	RecoveryMode *RecoveryMode `json:"recoveryMode,omitempty"`

	// Type of this recovery.
	RecoveryType *RecoveryType `json:"recoveryType,omitempty"`

	// Fully qualified ARM ID of the VM on which workload that was running is being recovered.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Details of target database
	TargetInfo *TargetRestoreInfo `json:"targetInfo,omitempty"`

	// This is the complete ARM Id of the target VM For e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}
	TargetVirtualMachineID *string `json:"targetVirtualMachineId,omitempty"`
}

AzureWorkloadRestoreRequest - AzureWorkload-specific restore.

func (*AzureWorkloadRestoreRequest) GetAzureWorkloadRestoreRequest

func (a *AzureWorkloadRestoreRequest) GetAzureWorkloadRestoreRequest() *AzureWorkloadRestoreRequest

GetAzureWorkloadRestoreRequest implements the AzureWorkloadRestoreRequestClassification interface for type AzureWorkloadRestoreRequest.

func (*AzureWorkloadRestoreRequest) GetRestoreRequest added in v0.2.0

func (a *AzureWorkloadRestoreRequest) GetRestoreRequest() *RestoreRequest

GetRestoreRequest implements the RestoreRequestClassification interface for type AzureWorkloadRestoreRequest.

func (AzureWorkloadRestoreRequest) MarshalJSON added in v0.2.0

func (a AzureWorkloadRestoreRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadRestoreRequest.

func (*AzureWorkloadRestoreRequest) UnmarshalJSON

func (a *AzureWorkloadRestoreRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadRestoreRequest.

type AzureWorkloadRestoreRequestClassification

type AzureWorkloadRestoreRequestClassification interface {
	RestoreRequestClassification
	// GetAzureWorkloadRestoreRequest returns the AzureWorkloadRestoreRequest content of the underlying type.
	GetAzureWorkloadRestoreRequest() *AzureWorkloadRestoreRequest
}

AzureWorkloadRestoreRequestClassification provides polymorphic access to related types. Call the interface's GetAzureWorkloadRestoreRequest() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureWorkloadPointInTimeRestoreRequest, *AzureWorkloadRestoreRequest, *AzureWorkloadSAPHanaPointInTimeRestoreRequest, - *AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest, *AzureWorkloadSAPHanaRestoreRequest, *AzureWorkloadSAPHanaRestoreWithRehydrateRequest, - *AzureWorkloadSQLPointInTimeRestoreRequest, *AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest, *AzureWorkloadSQLRestoreRequest, - *AzureWorkloadSQLRestoreWithRehydrateRequest

type AzureWorkloadSAPHanaPointInTimeRecoveryPoint

type AzureWorkloadSAPHanaPointInTimeRecoveryPoint struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Eligibility of RP to be moved to another tier
	RecoveryPointMoveReadinessInfo map[string]*RecoveryPointMoveReadinessInfo `json:"recoveryPointMoveReadinessInfo,omitempty"`

	// Recovery point tier information.
	RecoveryPointTierDetails []*RecoveryPointTierInformationV2 `json:"recoveryPointTierDetails,omitempty"`

	// UTC time at which recovery point was created
	RecoveryPointTimeInUTC *time.Time `json:"recoveryPointTimeInUTC,omitempty"`

	// List of log ranges
	TimeRanges []*PointInTimeRange `json:"timeRanges,omitempty"`

	// Type of restore point
	Type *RestorePointType `json:"type,omitempty"`
}

AzureWorkloadSAPHanaPointInTimeRecoveryPoint - Recovery point specific to PointInTime in SAPHana

func (*AzureWorkloadSAPHanaPointInTimeRecoveryPoint) GetAzureWorkloadPointInTimeRecoveryPoint added in v0.2.0

func (a *AzureWorkloadSAPHanaPointInTimeRecoveryPoint) GetAzureWorkloadPointInTimeRecoveryPoint() *AzureWorkloadPointInTimeRecoveryPoint

GetAzureWorkloadPointInTimeRecoveryPoint implements the AzureWorkloadPointInTimeRecoveryPointClassification interface for type AzureWorkloadSAPHanaPointInTimeRecoveryPoint.

func (*AzureWorkloadSAPHanaPointInTimeRecoveryPoint) GetAzureWorkloadRecoveryPoint added in v0.2.0

GetAzureWorkloadRecoveryPoint implements the AzureWorkloadRecoveryPointClassification interface for type AzureWorkloadSAPHanaPointInTimeRecoveryPoint.

func (*AzureWorkloadSAPHanaPointInTimeRecoveryPoint) GetRecoveryPoint added in v0.2.0

GetRecoveryPoint implements the RecoveryPointClassification interface for type AzureWorkloadSAPHanaPointInTimeRecoveryPoint.

func (AzureWorkloadSAPHanaPointInTimeRecoveryPoint) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadSAPHanaPointInTimeRecoveryPoint.

func (*AzureWorkloadSAPHanaPointInTimeRecoveryPoint) UnmarshalJSON added in v0.2.0

func (a *AzureWorkloadSAPHanaPointInTimeRecoveryPoint) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadSAPHanaPointInTimeRecoveryPoint.

type AzureWorkloadSAPHanaPointInTimeRestoreRequest

type AzureWorkloadSAPHanaPointInTimeRestoreRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// PointInTime value
	PointInTime *time.Time `json:"pointInTime,omitempty"`

	// Workload specific property bag.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// Defines whether the current recovery mode is file restore or database restore
	RecoveryMode *RecoveryMode `json:"recoveryMode,omitempty"`

	// Type of this recovery.
	RecoveryType *RecoveryType `json:"recoveryType,omitempty"`

	// Fully qualified ARM ID of the VM on which workload that was running is being recovered.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Details of target database
	TargetInfo *TargetRestoreInfo `json:"targetInfo,omitempty"`

	// This is the complete ARM Id of the target VM For e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}
	TargetVirtualMachineID *string `json:"targetVirtualMachineId,omitempty"`
}

AzureWorkloadSAPHanaPointInTimeRestoreRequest - AzureWorkload SAP Hana -specific restore. Specifically for PointInTime/Log restore

func (*AzureWorkloadSAPHanaPointInTimeRestoreRequest) GetAzureWorkloadRestoreRequest added in v0.2.0

GetAzureWorkloadRestoreRequest implements the AzureWorkloadRestoreRequestClassification interface for type AzureWorkloadSAPHanaPointInTimeRestoreRequest.

func (*AzureWorkloadSAPHanaPointInTimeRestoreRequest) GetAzureWorkloadSAPHanaPointInTimeRestoreRequest

func (a *AzureWorkloadSAPHanaPointInTimeRestoreRequest) GetAzureWorkloadSAPHanaPointInTimeRestoreRequest() *AzureWorkloadSAPHanaPointInTimeRestoreRequest

GetAzureWorkloadSAPHanaPointInTimeRestoreRequest implements the AzureWorkloadSAPHanaPointInTimeRestoreRequestClassification interface for type AzureWorkloadSAPHanaPointInTimeRestoreRequest.

func (*AzureWorkloadSAPHanaPointInTimeRestoreRequest) GetAzureWorkloadSAPHanaRestoreRequest added in v0.2.0

func (a *AzureWorkloadSAPHanaPointInTimeRestoreRequest) GetAzureWorkloadSAPHanaRestoreRequest() *AzureWorkloadSAPHanaRestoreRequest

GetAzureWorkloadSAPHanaRestoreRequest implements the AzureWorkloadSAPHanaRestoreRequestClassification interface for type AzureWorkloadSAPHanaPointInTimeRestoreRequest.

func (*AzureWorkloadSAPHanaPointInTimeRestoreRequest) GetRestoreRequest added in v0.2.0

GetRestoreRequest implements the RestoreRequestClassification interface for type AzureWorkloadSAPHanaPointInTimeRestoreRequest.

func (AzureWorkloadSAPHanaPointInTimeRestoreRequest) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadSAPHanaPointInTimeRestoreRequest.

func (*AzureWorkloadSAPHanaPointInTimeRestoreRequest) UnmarshalJSON

func (a *AzureWorkloadSAPHanaPointInTimeRestoreRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadSAPHanaPointInTimeRestoreRequest.

type AzureWorkloadSAPHanaPointInTimeRestoreRequestClassification

type AzureWorkloadSAPHanaPointInTimeRestoreRequestClassification interface {
	AzureWorkloadSAPHanaRestoreRequestClassification
	// GetAzureWorkloadSAPHanaPointInTimeRestoreRequest returns the AzureWorkloadSAPHanaPointInTimeRestoreRequest content of the underlying type.
	GetAzureWorkloadSAPHanaPointInTimeRestoreRequest() *AzureWorkloadSAPHanaPointInTimeRestoreRequest
}

AzureWorkloadSAPHanaPointInTimeRestoreRequestClassification provides polymorphic access to related types. Call the interface's GetAzureWorkloadSAPHanaPointInTimeRestoreRequest() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureWorkloadSAPHanaPointInTimeRestoreRequest, *AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest

type AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest

type AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// PointInTime value
	PointInTime *time.Time `json:"pointInTime,omitempty"`

	// Workload specific property bag.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// Defines whether the current recovery mode is file restore or database restore
	RecoveryMode *RecoveryMode `json:"recoveryMode,omitempty"`

	// RP Rehydration Info
	RecoveryPointRehydrationInfo *RecoveryPointRehydrationInfo `json:"recoveryPointRehydrationInfo,omitempty"`

	// Type of this recovery.
	RecoveryType *RecoveryType `json:"recoveryType,omitempty"`

	// Fully qualified ARM ID of the VM on which workload that was running is being recovered.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Details of target database
	TargetInfo *TargetRestoreInfo `json:"targetInfo,omitempty"`

	// This is the complete ARM Id of the target VM For e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}
	TargetVirtualMachineID *string `json:"targetVirtualMachineId,omitempty"`
}

AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest - AzureWorkload SAP Hana-specific restore with integrated rehydration of recovery point.

func (*AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest) GetAzureWorkloadRestoreRequest added in v0.2.0

GetAzureWorkloadRestoreRequest implements the AzureWorkloadRestoreRequestClassification interface for type AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest.

func (*AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest) GetAzureWorkloadSAPHanaPointInTimeRestoreRequest added in v0.2.0

GetAzureWorkloadSAPHanaPointInTimeRestoreRequest implements the AzureWorkloadSAPHanaPointInTimeRestoreRequestClassification interface for type AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest.

func (*AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest) GetAzureWorkloadSAPHanaRestoreRequest added in v0.2.0

GetAzureWorkloadSAPHanaRestoreRequest implements the AzureWorkloadSAPHanaRestoreRequestClassification interface for type AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest.

func (*AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest) GetRestoreRequest added in v0.2.0

GetRestoreRequest implements the RestoreRequestClassification interface for type AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest.

func (AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest.

func (*AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest) UnmarshalJSON

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest.

type AzureWorkloadSAPHanaRecoveryPoint

type AzureWorkloadSAPHanaRecoveryPoint struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Eligibility of RP to be moved to another tier
	RecoveryPointMoveReadinessInfo map[string]*RecoveryPointMoveReadinessInfo `json:"recoveryPointMoveReadinessInfo,omitempty"`

	// Recovery point tier information.
	RecoveryPointTierDetails []*RecoveryPointTierInformationV2 `json:"recoveryPointTierDetails,omitempty"`

	// UTC time at which recovery point was created
	RecoveryPointTimeInUTC *time.Time `json:"recoveryPointTimeInUTC,omitempty"`

	// Type of restore point
	Type *RestorePointType `json:"type,omitempty"`
}

AzureWorkloadSAPHanaRecoveryPoint - SAPHana specific recoverypoint, specifically encapsulates full/diff recoverypoints

func (*AzureWorkloadSAPHanaRecoveryPoint) GetAzureWorkloadRecoveryPoint added in v0.2.0

func (a *AzureWorkloadSAPHanaRecoveryPoint) GetAzureWorkloadRecoveryPoint() *AzureWorkloadRecoveryPoint

GetAzureWorkloadRecoveryPoint implements the AzureWorkloadRecoveryPointClassification interface for type AzureWorkloadSAPHanaRecoveryPoint.

func (*AzureWorkloadSAPHanaRecoveryPoint) GetRecoveryPoint added in v0.2.0

func (a *AzureWorkloadSAPHanaRecoveryPoint) GetRecoveryPoint() *RecoveryPoint

GetRecoveryPoint implements the RecoveryPointClassification interface for type AzureWorkloadSAPHanaRecoveryPoint.

func (AzureWorkloadSAPHanaRecoveryPoint) MarshalJSON

func (a AzureWorkloadSAPHanaRecoveryPoint) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadSAPHanaRecoveryPoint.

func (*AzureWorkloadSAPHanaRecoveryPoint) UnmarshalJSON added in v0.2.0

func (a *AzureWorkloadSAPHanaRecoveryPoint) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadSAPHanaRecoveryPoint.

type AzureWorkloadSAPHanaRestoreRequest

type AzureWorkloadSAPHanaRestoreRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Workload specific property bag.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// Defines whether the current recovery mode is file restore or database restore
	RecoveryMode *RecoveryMode `json:"recoveryMode,omitempty"`

	// Type of this recovery.
	RecoveryType *RecoveryType `json:"recoveryType,omitempty"`

	// Fully qualified ARM ID of the VM on which workload that was running is being recovered.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Details of target database
	TargetInfo *TargetRestoreInfo `json:"targetInfo,omitempty"`

	// This is the complete ARM Id of the target VM For e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}
	TargetVirtualMachineID *string `json:"targetVirtualMachineId,omitempty"`
}

AzureWorkloadSAPHanaRestoreRequest - AzureWorkload SAP Hana-specific restore.

func (*AzureWorkloadSAPHanaRestoreRequest) GetAzureWorkloadRestoreRequest added in v0.2.0

func (a *AzureWorkloadSAPHanaRestoreRequest) GetAzureWorkloadRestoreRequest() *AzureWorkloadRestoreRequest

GetAzureWorkloadRestoreRequest implements the AzureWorkloadRestoreRequestClassification interface for type AzureWorkloadSAPHanaRestoreRequest.

func (*AzureWorkloadSAPHanaRestoreRequest) GetAzureWorkloadSAPHanaRestoreRequest

func (a *AzureWorkloadSAPHanaRestoreRequest) GetAzureWorkloadSAPHanaRestoreRequest() *AzureWorkloadSAPHanaRestoreRequest

GetAzureWorkloadSAPHanaRestoreRequest implements the AzureWorkloadSAPHanaRestoreRequestClassification interface for type AzureWorkloadSAPHanaRestoreRequest.

func (*AzureWorkloadSAPHanaRestoreRequest) GetRestoreRequest added in v0.2.0

func (a *AzureWorkloadSAPHanaRestoreRequest) GetRestoreRequest() *RestoreRequest

GetRestoreRequest implements the RestoreRequestClassification interface for type AzureWorkloadSAPHanaRestoreRequest.

func (AzureWorkloadSAPHanaRestoreRequest) MarshalJSON added in v0.2.0

func (a AzureWorkloadSAPHanaRestoreRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadSAPHanaRestoreRequest.

func (*AzureWorkloadSAPHanaRestoreRequest) UnmarshalJSON added in v0.2.0

func (a *AzureWorkloadSAPHanaRestoreRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadSAPHanaRestoreRequest.

type AzureWorkloadSAPHanaRestoreRequestClassification

type AzureWorkloadSAPHanaRestoreRequestClassification interface {
	AzureWorkloadRestoreRequestClassification
	// GetAzureWorkloadSAPHanaRestoreRequest returns the AzureWorkloadSAPHanaRestoreRequest content of the underlying type.
	GetAzureWorkloadSAPHanaRestoreRequest() *AzureWorkloadSAPHanaRestoreRequest
}

AzureWorkloadSAPHanaRestoreRequestClassification provides polymorphic access to related types. Call the interface's GetAzureWorkloadSAPHanaRestoreRequest() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureWorkloadSAPHanaPointInTimeRestoreRequest, *AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest, *AzureWorkloadSAPHanaRestoreRequest, - *AzureWorkloadSAPHanaRestoreWithRehydrateRequest

type AzureWorkloadSAPHanaRestoreWithRehydrateRequest

type AzureWorkloadSAPHanaRestoreWithRehydrateRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Workload specific property bag.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// Defines whether the current recovery mode is file restore or database restore
	RecoveryMode *RecoveryMode `json:"recoveryMode,omitempty"`

	// RP Rehydration Info
	RecoveryPointRehydrationInfo *RecoveryPointRehydrationInfo `json:"recoveryPointRehydrationInfo,omitempty"`

	// Type of this recovery.
	RecoveryType *RecoveryType `json:"recoveryType,omitempty"`

	// Fully qualified ARM ID of the VM on which workload that was running is being recovered.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Details of target database
	TargetInfo *TargetRestoreInfo `json:"targetInfo,omitempty"`

	// This is the complete ARM Id of the target VM For e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}
	TargetVirtualMachineID *string `json:"targetVirtualMachineId,omitempty"`
}

AzureWorkloadSAPHanaRestoreWithRehydrateRequest - AzureWorkload SAP Hana-specific restore with integrated rehydration of recovery point.

func (*AzureWorkloadSAPHanaRestoreWithRehydrateRequest) GetAzureWorkloadRestoreRequest added in v0.2.0

GetAzureWorkloadRestoreRequest implements the AzureWorkloadRestoreRequestClassification interface for type AzureWorkloadSAPHanaRestoreWithRehydrateRequest.

func (*AzureWorkloadSAPHanaRestoreWithRehydrateRequest) GetAzureWorkloadSAPHanaRestoreRequest added in v0.2.0

func (a *AzureWorkloadSAPHanaRestoreWithRehydrateRequest) GetAzureWorkloadSAPHanaRestoreRequest() *AzureWorkloadSAPHanaRestoreRequest

GetAzureWorkloadSAPHanaRestoreRequest implements the AzureWorkloadSAPHanaRestoreRequestClassification interface for type AzureWorkloadSAPHanaRestoreWithRehydrateRequest.

func (*AzureWorkloadSAPHanaRestoreWithRehydrateRequest) GetRestoreRequest added in v0.2.0

GetRestoreRequest implements the RestoreRequestClassification interface for type AzureWorkloadSAPHanaRestoreWithRehydrateRequest.

func (AzureWorkloadSAPHanaRestoreWithRehydrateRequest) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadSAPHanaRestoreWithRehydrateRequest.

func (*AzureWorkloadSAPHanaRestoreWithRehydrateRequest) UnmarshalJSON

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadSAPHanaRestoreWithRehydrateRequest.

type AzureWorkloadSQLAutoProtectionIntent

type AzureWorkloadSQLAutoProtectionIntent struct {
	// REQUIRED; backup protectionIntent type.
	ProtectionIntentItemType *ProtectionIntentItemType `json:"protectionIntentItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// ID of the item which is getting protected, In case of Azure Vm , it is ProtectedItemId
	ItemID *string `json:"itemId,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Workload item type of the item for which intent is to be set
	WorkloadItemType *WorkloadItemType `json:"workloadItemType,omitempty"`
}

AzureWorkloadSQLAutoProtectionIntent - Azure Workload SQL Auto Protection intent item.

func (*AzureWorkloadSQLAutoProtectionIntent) GetAzureRecoveryServiceVaultProtectionIntent added in v0.2.0

func (a *AzureWorkloadSQLAutoProtectionIntent) GetAzureRecoveryServiceVaultProtectionIntent() *AzureRecoveryServiceVaultProtectionIntent

GetAzureRecoveryServiceVaultProtectionIntent implements the AzureRecoveryServiceVaultProtectionIntentClassification interface for type AzureWorkloadSQLAutoProtectionIntent.

func (*AzureWorkloadSQLAutoProtectionIntent) GetAzureWorkloadAutoProtectionIntent added in v0.2.0

func (a *AzureWorkloadSQLAutoProtectionIntent) GetAzureWorkloadAutoProtectionIntent() *AzureWorkloadAutoProtectionIntent

GetAzureWorkloadAutoProtectionIntent implements the AzureWorkloadAutoProtectionIntentClassification interface for type AzureWorkloadSQLAutoProtectionIntent.

func (*AzureWorkloadSQLAutoProtectionIntent) GetProtectionIntent added in v0.2.0

func (a *AzureWorkloadSQLAutoProtectionIntent) GetProtectionIntent() *ProtectionIntent

GetProtectionIntent implements the ProtectionIntentClassification interface for type AzureWorkloadSQLAutoProtectionIntent.

func (AzureWorkloadSQLAutoProtectionIntent) MarshalJSON

func (a AzureWorkloadSQLAutoProtectionIntent) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadSQLAutoProtectionIntent.

func (*AzureWorkloadSQLAutoProtectionIntent) UnmarshalJSON

func (a *AzureWorkloadSQLAutoProtectionIntent) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadSQLAutoProtectionIntent.

type AzureWorkloadSQLPointInTimeRecoveryPoint

type AzureWorkloadSQLPointInTimeRecoveryPoint struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Extended Info that provides data directory details. Will be populated in two cases: When a specific recovery point is accessed
	// using GetRecoveryPoint Or when ListRecoveryPoints is called for Log RP
	// only with ExtendedInfo query filter
	ExtendedInfo *AzureWorkloadSQLRecoveryPointExtendedInfo `json:"extendedInfo,omitempty"`

	// Eligibility of RP to be moved to another tier
	RecoveryPointMoveReadinessInfo map[string]*RecoveryPointMoveReadinessInfo `json:"recoveryPointMoveReadinessInfo,omitempty"`

	// Recovery point tier information.
	RecoveryPointTierDetails []*RecoveryPointTierInformationV2 `json:"recoveryPointTierDetails,omitempty"`

	// UTC time at which recovery point was created
	RecoveryPointTimeInUTC *time.Time `json:"recoveryPointTimeInUTC,omitempty"`

	// List of log ranges
	TimeRanges []*PointInTimeRange `json:"timeRanges,omitempty"`

	// Type of restore point
	Type *RestorePointType `json:"type,omitempty"`
}

AzureWorkloadSQLPointInTimeRecoveryPoint - Recovery point specific to PointInTime

func (*AzureWorkloadSQLPointInTimeRecoveryPoint) GetAzureWorkloadRecoveryPoint added in v0.2.0

func (a *AzureWorkloadSQLPointInTimeRecoveryPoint) GetAzureWorkloadRecoveryPoint() *AzureWorkloadRecoveryPoint

GetAzureWorkloadRecoveryPoint implements the AzureWorkloadRecoveryPointClassification interface for type AzureWorkloadSQLPointInTimeRecoveryPoint.

func (*AzureWorkloadSQLPointInTimeRecoveryPoint) GetAzureWorkloadSQLRecoveryPoint added in v0.2.0

func (a *AzureWorkloadSQLPointInTimeRecoveryPoint) GetAzureWorkloadSQLRecoveryPoint() *AzureWorkloadSQLRecoveryPoint

GetAzureWorkloadSQLRecoveryPoint implements the AzureWorkloadSQLRecoveryPointClassification interface for type AzureWorkloadSQLPointInTimeRecoveryPoint.

func (*AzureWorkloadSQLPointInTimeRecoveryPoint) GetRecoveryPoint added in v0.2.0

GetRecoveryPoint implements the RecoveryPointClassification interface for type AzureWorkloadSQLPointInTimeRecoveryPoint.

func (AzureWorkloadSQLPointInTimeRecoveryPoint) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadSQLPointInTimeRecoveryPoint.

func (*AzureWorkloadSQLPointInTimeRecoveryPoint) UnmarshalJSON

func (a *AzureWorkloadSQLPointInTimeRecoveryPoint) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadSQLPointInTimeRecoveryPoint.

type AzureWorkloadSQLPointInTimeRestoreRequest

type AzureWorkloadSQLPointInTimeRestoreRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Data directory details
	AlternateDirectoryPaths []*SQLDataDirectoryMapping `json:"alternateDirectoryPaths,omitempty"`

	// SQL specific property where user can chose to set no-recovery when restore operation is tried
	IsNonRecoverable *bool `json:"isNonRecoverable,omitempty"`

	// PointInTime value
	PointInTime *time.Time `json:"pointInTime,omitempty"`

	// Workload specific property bag.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// Defines whether the current recovery mode is file restore or database restore
	RecoveryMode *RecoveryMode `json:"recoveryMode,omitempty"`

	// Type of this recovery.
	RecoveryType *RecoveryType `json:"recoveryType,omitempty"`

	// Default option set to true. If this is set to false, alternate data directory must be provided
	ShouldUseAlternateTargetLocation *bool `json:"shouldUseAlternateTargetLocation,omitempty"`

	// Fully qualified ARM ID of the VM on which workload that was running is being recovered.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Details of target database
	TargetInfo *TargetRestoreInfo `json:"targetInfo,omitempty"`

	// This is the complete ARM Id of the target VM For e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}
	TargetVirtualMachineID *string `json:"targetVirtualMachineId,omitempty"`
}

AzureWorkloadSQLPointInTimeRestoreRequest - AzureWorkload SQL -specific restore. Specifically for PointInTime/Log restore

func (*AzureWorkloadSQLPointInTimeRestoreRequest) GetAzureWorkloadRestoreRequest added in v0.2.0

func (a *AzureWorkloadSQLPointInTimeRestoreRequest) GetAzureWorkloadRestoreRequest() *AzureWorkloadRestoreRequest

GetAzureWorkloadRestoreRequest implements the AzureWorkloadRestoreRequestClassification interface for type AzureWorkloadSQLPointInTimeRestoreRequest.

func (*AzureWorkloadSQLPointInTimeRestoreRequest) GetAzureWorkloadSQLPointInTimeRestoreRequest

func (a *AzureWorkloadSQLPointInTimeRestoreRequest) GetAzureWorkloadSQLPointInTimeRestoreRequest() *AzureWorkloadSQLPointInTimeRestoreRequest

GetAzureWorkloadSQLPointInTimeRestoreRequest implements the AzureWorkloadSQLPointInTimeRestoreRequestClassification interface for type AzureWorkloadSQLPointInTimeRestoreRequest.

func (*AzureWorkloadSQLPointInTimeRestoreRequest) GetAzureWorkloadSQLRestoreRequest added in v0.2.0

func (a *AzureWorkloadSQLPointInTimeRestoreRequest) GetAzureWorkloadSQLRestoreRequest() *AzureWorkloadSQLRestoreRequest

GetAzureWorkloadSQLRestoreRequest implements the AzureWorkloadSQLRestoreRequestClassification interface for type AzureWorkloadSQLPointInTimeRestoreRequest.

func (*AzureWorkloadSQLPointInTimeRestoreRequest) GetRestoreRequest added in v0.2.0

GetRestoreRequest implements the RestoreRequestClassification interface for type AzureWorkloadSQLPointInTimeRestoreRequest.

func (AzureWorkloadSQLPointInTimeRestoreRequest) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadSQLPointInTimeRestoreRequest.

func (*AzureWorkloadSQLPointInTimeRestoreRequest) UnmarshalJSON

func (a *AzureWorkloadSQLPointInTimeRestoreRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadSQLPointInTimeRestoreRequest.

type AzureWorkloadSQLPointInTimeRestoreRequestClassification

type AzureWorkloadSQLPointInTimeRestoreRequestClassification interface {
	AzureWorkloadSQLRestoreRequestClassification
	// GetAzureWorkloadSQLPointInTimeRestoreRequest returns the AzureWorkloadSQLPointInTimeRestoreRequest content of the underlying type.
	GetAzureWorkloadSQLPointInTimeRestoreRequest() *AzureWorkloadSQLPointInTimeRestoreRequest
}

AzureWorkloadSQLPointInTimeRestoreRequestClassification provides polymorphic access to related types. Call the interface's GetAzureWorkloadSQLPointInTimeRestoreRequest() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureWorkloadSQLPointInTimeRestoreRequest, *AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest

type AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest

type AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Data directory details
	AlternateDirectoryPaths []*SQLDataDirectoryMapping `json:"alternateDirectoryPaths,omitempty"`

	// SQL specific property where user can chose to set no-recovery when restore operation is tried
	IsNonRecoverable *bool `json:"isNonRecoverable,omitempty"`

	// PointInTime value
	PointInTime *time.Time `json:"pointInTime,omitempty"`

	// Workload specific property bag.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// Defines whether the current recovery mode is file restore or database restore
	RecoveryMode *RecoveryMode `json:"recoveryMode,omitempty"`

	// RP Rehydration Info
	RecoveryPointRehydrationInfo *RecoveryPointRehydrationInfo `json:"recoveryPointRehydrationInfo,omitempty"`

	// Type of this recovery.
	RecoveryType *RecoveryType `json:"recoveryType,omitempty"`

	// Default option set to true. If this is set to false, alternate data directory must be provided
	ShouldUseAlternateTargetLocation *bool `json:"shouldUseAlternateTargetLocation,omitempty"`

	// Fully qualified ARM ID of the VM on which workload that was running is being recovered.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Details of target database
	TargetInfo *TargetRestoreInfo `json:"targetInfo,omitempty"`

	// This is the complete ARM Id of the target VM For e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}
	TargetVirtualMachineID *string `json:"targetVirtualMachineId,omitempty"`
}

AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest - AzureWorkload SQL-specific restore with integrated rehydration of recovery point.

func (*AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest) GetAzureWorkloadRestoreRequest added in v0.2.0

GetAzureWorkloadRestoreRequest implements the AzureWorkloadRestoreRequestClassification interface for type AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest.

func (*AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest) GetAzureWorkloadSQLPointInTimeRestoreRequest added in v0.2.0

GetAzureWorkloadSQLPointInTimeRestoreRequest implements the AzureWorkloadSQLPointInTimeRestoreRequestClassification interface for type AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest.

func (*AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest) GetAzureWorkloadSQLRestoreRequest added in v0.2.0

GetAzureWorkloadSQLRestoreRequest implements the AzureWorkloadSQLRestoreRequestClassification interface for type AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest.

func (*AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest) GetRestoreRequest added in v0.2.0

GetRestoreRequest implements the RestoreRequestClassification interface for type AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest.

func (AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest.

func (*AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest) UnmarshalJSON

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest.

type AzureWorkloadSQLRecoveryPoint

type AzureWorkloadSQLRecoveryPoint struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Extended Info that provides data directory details. Will be populated in two cases: When a specific recovery point is accessed
	// using GetRecoveryPoint Or when ListRecoveryPoints is called for Log RP
	// only with ExtendedInfo query filter
	ExtendedInfo *AzureWorkloadSQLRecoveryPointExtendedInfo `json:"extendedInfo,omitempty"`

	// Eligibility of RP to be moved to another tier
	RecoveryPointMoveReadinessInfo map[string]*RecoveryPointMoveReadinessInfo `json:"recoveryPointMoveReadinessInfo,omitempty"`

	// Recovery point tier information.
	RecoveryPointTierDetails []*RecoveryPointTierInformationV2 `json:"recoveryPointTierDetails,omitempty"`

	// UTC time at which recovery point was created
	RecoveryPointTimeInUTC *time.Time `json:"recoveryPointTimeInUTC,omitempty"`

	// Type of restore point
	Type *RestorePointType `json:"type,omitempty"`
}

AzureWorkloadSQLRecoveryPoint - SQL specific recoverypoint, specifically encapsulates full/diff recoverypoint along with extended info

func (*AzureWorkloadSQLRecoveryPoint) GetAzureWorkloadRecoveryPoint added in v0.2.0

func (a *AzureWorkloadSQLRecoveryPoint) GetAzureWorkloadRecoveryPoint() *AzureWorkloadRecoveryPoint

GetAzureWorkloadRecoveryPoint implements the AzureWorkloadRecoveryPointClassification interface for type AzureWorkloadSQLRecoveryPoint.

func (*AzureWorkloadSQLRecoveryPoint) GetAzureWorkloadSQLRecoveryPoint

func (a *AzureWorkloadSQLRecoveryPoint) GetAzureWorkloadSQLRecoveryPoint() *AzureWorkloadSQLRecoveryPoint

GetAzureWorkloadSQLRecoveryPoint implements the AzureWorkloadSQLRecoveryPointClassification interface for type AzureWorkloadSQLRecoveryPoint.

func (*AzureWorkloadSQLRecoveryPoint) GetRecoveryPoint added in v0.2.0

func (a *AzureWorkloadSQLRecoveryPoint) GetRecoveryPoint() *RecoveryPoint

GetRecoveryPoint implements the RecoveryPointClassification interface for type AzureWorkloadSQLRecoveryPoint.

func (AzureWorkloadSQLRecoveryPoint) MarshalJSON

func (a AzureWorkloadSQLRecoveryPoint) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadSQLRecoveryPoint.

func (*AzureWorkloadSQLRecoveryPoint) UnmarshalJSON

func (a *AzureWorkloadSQLRecoveryPoint) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadSQLRecoveryPoint.

type AzureWorkloadSQLRecoveryPointClassification

type AzureWorkloadSQLRecoveryPointClassification interface {
	AzureWorkloadRecoveryPointClassification
	// GetAzureWorkloadSQLRecoveryPoint returns the AzureWorkloadSQLRecoveryPoint content of the underlying type.
	GetAzureWorkloadSQLRecoveryPoint() *AzureWorkloadSQLRecoveryPoint
}

AzureWorkloadSQLRecoveryPointClassification provides polymorphic access to related types. Call the interface's GetAzureWorkloadSQLRecoveryPoint() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureWorkloadSQLPointInTimeRecoveryPoint, *AzureWorkloadSQLRecoveryPoint

type AzureWorkloadSQLRecoveryPointExtendedInfo

type AzureWorkloadSQLRecoveryPointExtendedInfo struct {
	// List of data directory paths during restore operation.
	DataDirectoryPaths []*SQLDataDirectory `json:"dataDirectoryPaths,omitempty"`

	// UTC time at which data directory info was captured
	DataDirectoryTimeInUTC *time.Time `json:"dataDirectoryTimeInUTC,omitempty"`
}

AzureWorkloadSQLRecoveryPointExtendedInfo - Extended info class details

func (AzureWorkloadSQLRecoveryPointExtendedInfo) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadSQLRecoveryPointExtendedInfo.

func (*AzureWorkloadSQLRecoveryPointExtendedInfo) UnmarshalJSON

func (a *AzureWorkloadSQLRecoveryPointExtendedInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadSQLRecoveryPointExtendedInfo.

type AzureWorkloadSQLRestoreRequest

type AzureWorkloadSQLRestoreRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Data directory details
	AlternateDirectoryPaths []*SQLDataDirectoryMapping `json:"alternateDirectoryPaths,omitempty"`

	// SQL specific property where user can chose to set no-recovery when restore operation is tried
	IsNonRecoverable *bool `json:"isNonRecoverable,omitempty"`

	// Workload specific property bag.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// Defines whether the current recovery mode is file restore or database restore
	RecoveryMode *RecoveryMode `json:"recoveryMode,omitempty"`

	// Type of this recovery.
	RecoveryType *RecoveryType `json:"recoveryType,omitempty"`

	// Default option set to true. If this is set to false, alternate data directory must be provided
	ShouldUseAlternateTargetLocation *bool `json:"shouldUseAlternateTargetLocation,omitempty"`

	// Fully qualified ARM ID of the VM on which workload that was running is being recovered.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Details of target database
	TargetInfo *TargetRestoreInfo `json:"targetInfo,omitempty"`

	// This is the complete ARM Id of the target VM For e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}
	TargetVirtualMachineID *string `json:"targetVirtualMachineId,omitempty"`
}

AzureWorkloadSQLRestoreRequest - AzureWorkload SQL -specific restore. Specifically for full/diff restore

func (*AzureWorkloadSQLRestoreRequest) GetAzureWorkloadRestoreRequest added in v0.2.0

func (a *AzureWorkloadSQLRestoreRequest) GetAzureWorkloadRestoreRequest() *AzureWorkloadRestoreRequest

GetAzureWorkloadRestoreRequest implements the AzureWorkloadRestoreRequestClassification interface for type AzureWorkloadSQLRestoreRequest.

func (*AzureWorkloadSQLRestoreRequest) GetAzureWorkloadSQLRestoreRequest

func (a *AzureWorkloadSQLRestoreRequest) GetAzureWorkloadSQLRestoreRequest() *AzureWorkloadSQLRestoreRequest

GetAzureWorkloadSQLRestoreRequest implements the AzureWorkloadSQLRestoreRequestClassification interface for type AzureWorkloadSQLRestoreRequest.

func (*AzureWorkloadSQLRestoreRequest) GetRestoreRequest added in v0.2.0

func (a *AzureWorkloadSQLRestoreRequest) GetRestoreRequest() *RestoreRequest

GetRestoreRequest implements the RestoreRequestClassification interface for type AzureWorkloadSQLRestoreRequest.

func (AzureWorkloadSQLRestoreRequest) MarshalJSON added in v0.2.0

func (a AzureWorkloadSQLRestoreRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadSQLRestoreRequest.

func (*AzureWorkloadSQLRestoreRequest) UnmarshalJSON

func (a *AzureWorkloadSQLRestoreRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadSQLRestoreRequest.

type AzureWorkloadSQLRestoreRequestClassification

type AzureWorkloadSQLRestoreRequestClassification interface {
	AzureWorkloadRestoreRequestClassification
	// GetAzureWorkloadSQLRestoreRequest returns the AzureWorkloadSQLRestoreRequest content of the underlying type.
	GetAzureWorkloadSQLRestoreRequest() *AzureWorkloadSQLRestoreRequest
}

AzureWorkloadSQLRestoreRequestClassification provides polymorphic access to related types. Call the interface's GetAzureWorkloadSQLRestoreRequest() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureWorkloadSQLPointInTimeRestoreRequest, *AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest, *AzureWorkloadSQLRestoreRequest, - *AzureWorkloadSQLRestoreWithRehydrateRequest

type AzureWorkloadSQLRestoreWithRehydrateRequest

type AzureWorkloadSQLRestoreWithRehydrateRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Data directory details
	AlternateDirectoryPaths []*SQLDataDirectoryMapping `json:"alternateDirectoryPaths,omitempty"`

	// SQL specific property where user can chose to set no-recovery when restore operation is tried
	IsNonRecoverable *bool `json:"isNonRecoverable,omitempty"`

	// Workload specific property bag.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// Defines whether the current recovery mode is file restore or database restore
	RecoveryMode *RecoveryMode `json:"recoveryMode,omitempty"`

	// RP Rehydration Info
	RecoveryPointRehydrationInfo *RecoveryPointRehydrationInfo `json:"recoveryPointRehydrationInfo,omitempty"`

	// Type of this recovery.
	RecoveryType *RecoveryType `json:"recoveryType,omitempty"`

	// Default option set to true. If this is set to false, alternate data directory must be provided
	ShouldUseAlternateTargetLocation *bool `json:"shouldUseAlternateTargetLocation,omitempty"`

	// Fully qualified ARM ID of the VM on which workload that was running is being recovered.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Details of target database
	TargetInfo *TargetRestoreInfo `json:"targetInfo,omitempty"`

	// This is the complete ARM Id of the target VM For e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}
	TargetVirtualMachineID *string `json:"targetVirtualMachineId,omitempty"`
}

AzureWorkloadSQLRestoreWithRehydrateRequest - AzureWorkload SQL-specific restore with integrated rehydration of recovery point

func (*AzureWorkloadSQLRestoreWithRehydrateRequest) GetAzureWorkloadRestoreRequest added in v0.2.0

func (a *AzureWorkloadSQLRestoreWithRehydrateRequest) GetAzureWorkloadRestoreRequest() *AzureWorkloadRestoreRequest

GetAzureWorkloadRestoreRequest implements the AzureWorkloadRestoreRequestClassification interface for type AzureWorkloadSQLRestoreWithRehydrateRequest.

func (*AzureWorkloadSQLRestoreWithRehydrateRequest) GetAzureWorkloadSQLRestoreRequest added in v0.2.0

func (a *AzureWorkloadSQLRestoreWithRehydrateRequest) GetAzureWorkloadSQLRestoreRequest() *AzureWorkloadSQLRestoreRequest

GetAzureWorkloadSQLRestoreRequest implements the AzureWorkloadSQLRestoreRequestClassification interface for type AzureWorkloadSQLRestoreWithRehydrateRequest.

func (*AzureWorkloadSQLRestoreWithRehydrateRequest) GetRestoreRequest added in v0.2.0

GetRestoreRequest implements the RestoreRequestClassification interface for type AzureWorkloadSQLRestoreWithRehydrateRequest.

func (AzureWorkloadSQLRestoreWithRehydrateRequest) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type AzureWorkloadSQLRestoreWithRehydrateRequest.

func (*AzureWorkloadSQLRestoreWithRehydrateRequest) UnmarshalJSON

func (a *AzureWorkloadSQLRestoreWithRehydrateRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureWorkloadSQLRestoreWithRehydrateRequest.

type BEKDetails

type BEKDetails struct {
	// BEK data.
	SecretData *string `json:"secretData,omitempty"`

	// Secret is BEK.
	SecretURL *string `json:"secretUrl,omitempty"`

	// ID of the Key Vault where this Secret is stored.
	SecretVaultID *string `json:"secretVaultId,omitempty"`
}

BEKDetails - BEK is bitlocker encryption key.

type BMSBackupEngineQueryObject

type BMSBackupEngineQueryObject struct {
	// attribute to add extended info
	Expand *string `json:"expand,omitempty"`
}

BMSBackupEngineQueryObject - Query parameters to fetch list of backup engines.

type BMSBackupEnginesQueryObject

type BMSBackupEnginesQueryObject struct {
	// Backup management type for the backup engine.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Attribute to add extended info.
	Expand *string `json:"expand,omitempty"`

	// Friendly name of the backup engine.
	FriendlyName *string `json:"friendlyName,omitempty"`
}

BMSBackupEnginesQueryObject - Query parameters to fetch list of backup engines.

type BMSBackupSummariesQueryObject

type BMSBackupSummariesQueryObject struct {
	// Backup management type for this container.
	Type *Type `json:"type,omitempty"`
}

BMSBackupSummariesQueryObject - Query parameters to fetch backup summaries.

type BMSContainerQueryObject

type BMSContainerQueryObject struct {
	// REQUIRED; Backup management type for this container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Backup engine name
	BackupEngineName *string `json:"backupEngineName,omitempty"`

	// Type of container for filter
	ContainerType *ContainerType `json:"containerType,omitempty"`

	// Fabric name for filter
	FabricName *string `json:"fabricName,omitempty"`

	// Friendly name of this container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of registration of this container with the Recovery Services Vault.
	Status *string `json:"status,omitempty"`
}

BMSContainerQueryObject - The query filters that can be used with the list containers API.

type BMSContainersInquiryQueryObject

type BMSContainersInquiryQueryObject struct {
	// Backup management type for this container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Workload type for this container.
	WorkloadType *WorkloadType `json:"workloadType,omitempty"`
}

BMSContainersInquiryQueryObject - The query filters that can be used with the inquire container API.

type BMSPOQueryObject

type BMSPOQueryObject struct {
	// Backup management type.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Full name of the container whose Protectable Objects should be returned.
	ContainerName *string `json:"containerName,omitempty"`

	// Friendly name.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Backup status query parameter.
	Status *string `json:"status,omitempty"`

	// Workload type
	WorkloadType *WorkloadType `json:"workloadType,omitempty"`
}

BMSPOQueryObject - Filters to list items that can be backed up.

type BMSPrepareDataMoveOperationResultClient

type BMSPrepareDataMoveOperationResultClient struct {
	// contains filtered or unexported fields
}

BMSPrepareDataMoveOperationResultClient contains the methods for the BMSPrepareDataMoveOperationResult group. Don't use this type directly, use NewBMSPrepareDataMoveOperationResultClient() instead.

func NewBMSPrepareDataMoveOperationResultClient

func NewBMSPrepareDataMoveOperationResultClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BMSPrepareDataMoveOperationResultClient, error)

NewBMSPrepareDataMoveOperationResultClient creates a new instance of BMSPrepareDataMoveOperationResultClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BMSPrepareDataMoveOperationResultClient) Get

Get - Fetches Operation Result for Prepare Data Move If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - BMSPrepareDataMoveOperationResultClientGetOptions contains the optional parameters for the BMSPrepareDataMoveOperationResultClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/BackupDataMove/PrepareDataMoveOperationResult_Get.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBMSPrepareDataMoveOperationResultClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"source-rsv",
		"sourceRG",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type BMSPrepareDataMoveOperationResultClientGetOptions added in v0.2.0

type BMSPrepareDataMoveOperationResultClientGetOptions struct {
}

BMSPrepareDataMoveOperationResultClientGetOptions contains the optional parameters for the BMSPrepareDataMoveOperationResultClient.Get method.

type BMSPrepareDataMoveOperationResultClientGetResponse added in v0.2.0

type BMSPrepareDataMoveOperationResultClientGetResponse struct {
	VaultStorageConfigOperationResultResponseClassification
}

BMSPrepareDataMoveOperationResultClientGetResponse contains the response from method BMSPrepareDataMoveOperationResultClient.Get.

func (*BMSPrepareDataMoveOperationResultClientGetResponse) UnmarshalJSON added in v0.4.0

UnmarshalJSON implements the json.Unmarshaller interface for type BMSPrepareDataMoveOperationResultClientGetResponse.

type BMSRPQueryObject

type BMSRPQueryObject struct {
	// Backup copies created before this time.
	EndDate *time.Time `json:"endDate,omitempty"`

	// In Get Recovery Point, it tells whether extended information about recovery point is asked.
	ExtendedInfo *bool `json:"extendedInfo,omitempty"`

	// Whether the RP can be moved to another tier
	MoveReadyRPOnly *bool `json:"moveReadyRPOnly,omitempty"`

	// RestorePoint type
	RestorePointQueryType *RestorePointQueryType `json:"restorePointQueryType,omitempty"`

	// Backup copies created after this time.
	StartDate *time.Time `json:"startDate,omitempty"`
}

BMSRPQueryObject - Filters to list backup copies.

func (*BMSRPQueryObject) UnmarshalJSON

func (b *BMSRPQueryObject) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type BMSRPQueryObject.

type BMSRefreshContainersQueryObject

type BMSRefreshContainersQueryObject struct {
	// Backup management type for this container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`
}

BMSRefreshContainersQueryObject - The query filters that can be used with the refresh container API.

type BMSWorkloadItemQueryObject

type BMSWorkloadItemQueryObject struct {
	// Backup management type.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Backup status query parameter.
	ProtectionStatus *ProtectionStatus `json:"protectionStatus,omitempty"`

	// Workload Item type
	WorkloadItemType *WorkloadItemType `json:"workloadItemType,omitempty"`

	// Workload type
	WorkloadType *WorkloadType `json:"workloadType,omitempty"`
}

BMSWorkloadItemQueryObject - Filters to list items that can be backed up.

type BackupEngineBase

type BackupEngineBase struct {
	// REQUIRED; Type of the backup engine.
	BackupEngineType *BackupEngineType `json:"backupEngineType,omitempty"`

	// Backup agent version
	AzureBackupAgentVersion *string `json:"azureBackupAgentVersion,omitempty"`

	// ID of the backup engine.
	BackupEngineID *string `json:"backupEngineId,omitempty"`

	// Status of the backup engine with the Recovery Services Vault. = {Active/Deleting/DeleteFailed}
	BackupEngineState *string `json:"backupEngineState,omitempty"`

	// Type of backup management for the backup engine.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Flag indicating if the backup engine be registered, once already registered.
	CanReRegister *bool `json:"canReRegister,omitempty"`

	// Backup engine version
	DpmVersion *string `json:"dpmVersion,omitempty"`

	// Extended info of the backupengine
	ExtendedInfo *BackupEngineExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the backup engine.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Backup status of the backup engine.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// To check if backup agent upgrade available
	IsAzureBackupAgentUpgradeAvailable *bool `json:"isAzureBackupAgentUpgradeAvailable,omitempty"`

	// To check if backup engine upgrade available
	IsDpmUpgradeAvailable *bool `json:"isDpmUpgradeAvailable,omitempty"`

	// Registration status of the backup engine with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`
}

BackupEngineBase - The base backup engine class. All workload specific backup engines derive from this class.

func (*BackupEngineBase) GetBackupEngineBase

func (b *BackupEngineBase) GetBackupEngineBase() *BackupEngineBase

GetBackupEngineBase implements the BackupEngineBaseClassification interface for type BackupEngineBase.

type BackupEngineBaseClassification

type BackupEngineBaseClassification interface {
	// GetBackupEngineBase returns the BackupEngineBase content of the underlying type.
	GetBackupEngineBase() *BackupEngineBase
}

BackupEngineBaseClassification provides polymorphic access to related types. Call the interface's GetBackupEngineBase() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureBackupServerEngine, *BackupEngineBase, *DpmBackupEngine

type BackupEngineBaseResource

type BackupEngineBaseResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// BackupEngineBaseResource properties
	Properties BackupEngineBaseClassification `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

BackupEngineBaseResource - The base backup engine class. All workload specific backup engines derive from this class.

func (BackupEngineBaseResource) MarshalJSON

func (b BackupEngineBaseResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type BackupEngineBaseResource.

func (*BackupEngineBaseResource) UnmarshalJSON

func (b *BackupEngineBaseResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type BackupEngineBaseResource.

type BackupEngineBaseResourceList

type BackupEngineBaseResourceList struct {
	// The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.
	NextLink *string `json:"nextLink,omitempty"`

	// List of resources.
	Value []*BackupEngineBaseResource `json:"value,omitempty"`
}

BackupEngineBaseResourceList - List of BackupEngineBase resources

type BackupEngineExtendedInfo

type BackupEngineExtendedInfo struct {
	// Disk space currently available in the backup engine.
	AvailableDiskSpace *float64 `json:"availableDiskSpace,omitempty"`

	// Protected instances in the backup engine.
	AzureProtectedInstances *int32 `json:"azureProtectedInstances,omitempty"`

	// Database name of backup engine.
	DatabaseName *string `json:"databaseName,omitempty"`

	// Number of disks in the backup engine.
	DiskCount *int32 `json:"diskCount,omitempty"`

	// Number of protected items in the backup engine.
	ProtectedItemsCount *int32 `json:"protectedItemsCount,omitempty"`

	// Number of protected servers in the backup engine.
	ProtectedServersCount *int32 `json:"protectedServersCount,omitempty"`

	// Last refresh time in the backup engine.
	RefreshedAt *time.Time `json:"refreshedAt,omitempty"`

	// Disk space used in the backup engine.
	UsedDiskSpace *float64 `json:"usedDiskSpace,omitempty"`
}

BackupEngineExtendedInfo - Additional information on backup engine.

func (BackupEngineExtendedInfo) MarshalJSON

func (b BackupEngineExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type BackupEngineExtendedInfo.

func (*BackupEngineExtendedInfo) UnmarshalJSON

func (b *BackupEngineExtendedInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type BackupEngineExtendedInfo.

type BackupEngineType

type BackupEngineType string

BackupEngineType - Type of the backup engine.

const (
	BackupEngineTypeAzureBackupServerEngine BackupEngineType = "AzureBackupServerEngine"
	BackupEngineTypeDpmBackupEngine         BackupEngineType = "DpmBackupEngine"
	BackupEngineTypeInvalid                 BackupEngineType = "Invalid"
)

func PossibleBackupEngineTypeValues

func PossibleBackupEngineTypeValues() []BackupEngineType

PossibleBackupEngineTypeValues returns the possible values for the BackupEngineType const type.

type BackupEnginesClient

type BackupEnginesClient struct {
	// contains filtered or unexported fields
}

BackupEnginesClient contains the methods for the BackupEngines group. Don't use this type directly, use NewBackupEnginesClient() instead.

func NewBackupEnginesClient

func NewBackupEnginesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupEnginesClient, error)

NewBackupEnginesClient creates a new instance of BackupEnginesClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupEnginesClient) Get

func (client *BackupEnginesClient) Get(ctx context.Context, vaultName string, resourceGroupName string, backupEngineName string, options *BackupEnginesClientGetOptions) (BackupEnginesClientGetResponse, error)

Get - Returns backup management server registered to Recovery Services Vault. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. backupEngineName - Name of the backup management server. options - BackupEnginesClientGetOptions contains the optional parameters for the BackupEnginesClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Dpm/BackupEngines_Get.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupEnginesClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"testVault",
		"testRG",
		"testServer",
		&armrecoveryservicesbackup.BackupEnginesClientGetOptions{Filter: nil,
			SkipToken: nil,
		})
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*BackupEnginesClient) NewListPager added in v0.5.0

func (client *BackupEnginesClient) NewListPager(vaultName string, resourceGroupName string, options *BackupEnginesClientListOptions) *runtime.Pager[BackupEnginesClientListResponse]

NewListPager - Backup management servers registered to Recovery Services Vault. Returns a pageable list of servers. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - BackupEnginesClientListOptions contains the optional parameters for the BackupEnginesClient.List method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Dpm/BackupEngines_List.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupEnginesClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := client.NewListPager("testVault",
		"testRG",
		&armrecoveryservicesbackup.BackupEnginesClientListOptions{Filter: nil,
			SkipToken: nil,
		})
	for pager.More() {
		nextResult, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range nextResult.Value {
			// TODO: use page item
			_ = v
		}
	}
}
Output:

type BackupEnginesClientGetOptions added in v0.2.0

type BackupEnginesClientGetOptions struct {
	// OData filter options.
	Filter *string
	// skipToken Filter.
	SkipToken *string
}

BackupEnginesClientGetOptions contains the optional parameters for the BackupEnginesClient.Get method.

type BackupEnginesClientGetResponse added in v0.2.0

type BackupEnginesClientGetResponse struct {
	BackupEngineBaseResource
}

BackupEnginesClientGetResponse contains the response from method BackupEnginesClient.Get.

type BackupEnginesClientListOptions added in v0.2.0

type BackupEnginesClientListOptions struct {
	// OData filter options.
	Filter *string
	// skipToken Filter.
	SkipToken *string
}

BackupEnginesClientListOptions contains the optional parameters for the BackupEnginesClient.List method.

type BackupEnginesClientListResponse added in v0.2.0

type BackupEnginesClientListResponse struct {
	BackupEngineBaseResourceList
}

BackupEnginesClientListResponse contains the response from method BackupEnginesClient.List.

type BackupItemType

type BackupItemType string

BackupItemType - Type of backup items associated with this container.

const (
	BackupItemTypeAzureFileShare    BackupItemType = "AzureFileShare"
	BackupItemTypeAzureSQLDb        BackupItemType = "AzureSqlDb"
	BackupItemTypeClient            BackupItemType = "Client"
	BackupItemTypeExchange          BackupItemType = "Exchange"
	BackupItemTypeFileFolder        BackupItemType = "FileFolder"
	BackupItemTypeGenericDataSource BackupItemType = "GenericDataSource"
	BackupItemTypeInvalid           BackupItemType = "Invalid"
	BackupItemTypeSAPAseDatabase    BackupItemType = "SAPAseDatabase"
	BackupItemTypeSAPHanaDatabase   BackupItemType = "SAPHanaDatabase"
	BackupItemTypeSQLDB             BackupItemType = "SQLDB"
	BackupItemTypeSQLDataBase       BackupItemType = "SQLDataBase"
	BackupItemTypeSharepoint        BackupItemType = "Sharepoint"
	BackupItemTypeSystemState       BackupItemType = "SystemState"
	BackupItemTypeVM                BackupItemType = "VM"
	BackupItemTypeVMwareVM          BackupItemType = "VMwareVM"
)

func PossibleBackupItemTypeValues

func PossibleBackupItemTypeValues() []BackupItemType

PossibleBackupItemTypeValues returns the possible values for the BackupItemType const type.

type BackupJobsClient

type BackupJobsClient struct {
	// contains filtered or unexported fields
}

BackupJobsClient contains the methods for the BackupJobs group. Don't use this type directly, use NewBackupJobsClient() instead.

func NewBackupJobsClient

func NewBackupJobsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupJobsClient, error)

NewBackupJobsClient creates a new instance of BackupJobsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupJobsClient) NewListPager added in v0.5.0

func (client *BackupJobsClient) NewListPager(vaultName string, resourceGroupName string, options *BackupJobsClientListOptions) *runtime.Pager[BackupJobsClientListResponse]

NewListPager - Provides a pageable list of jobs. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - BackupJobsClientListOptions contains the optional parameters for the BackupJobsClient.List method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/ListJobs.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupJobsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := client.NewListPager("NetSDKTestRsVault",
		"SwaggerTestRg",
		&armrecoveryservicesbackup.BackupJobsClientListOptions{Filter: nil,
			SkipToken: nil,
		})
	for pager.More() {
		nextResult, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range nextResult.Value {
			// TODO: use page item
			_ = v
		}
	}
}
Output:

type BackupJobsClientListOptions added in v0.2.0

type BackupJobsClientListOptions struct {
	// OData filter options.
	Filter *string
	// skipToken Filter.
	SkipToken *string
}

BackupJobsClientListOptions contains the optional parameters for the BackupJobsClient.List method.

type BackupJobsClientListResponse added in v0.2.0

type BackupJobsClientListResponse struct {
	JobResourceList
}

BackupJobsClientListResponse contains the response from method BackupJobsClient.List.

type BackupManagementType

type BackupManagementType string

BackupManagementType - Backup management type to execute the current job.

const (
	BackupManagementTypeAzureBackupServer BackupManagementType = "AzureBackupServer"
	BackupManagementTypeAzureIaasVM       BackupManagementType = "AzureIaasVM"
	BackupManagementTypeAzureSQL          BackupManagementType = "AzureSql"
	BackupManagementTypeAzureStorage      BackupManagementType = "AzureStorage"
	BackupManagementTypeAzureWorkload     BackupManagementType = "AzureWorkload"
	BackupManagementTypeDPM               BackupManagementType = "DPM"
	BackupManagementTypeDefaultBackup     BackupManagementType = "DefaultBackup"
	BackupManagementTypeInvalid           BackupManagementType = "Invalid"
	BackupManagementTypeMAB               BackupManagementType = "MAB"
)

func PossibleBackupManagementTypeValues

func PossibleBackupManagementTypeValues() []BackupManagementType

PossibleBackupManagementTypeValues returns the possible values for the BackupManagementType const type.

type BackupManagementUsage

type BackupManagementUsage struct {
	// Current value of usage.
	CurrentValue *int64 `json:"currentValue,omitempty"`

	// Limit of usage.
	Limit *int64 `json:"limit,omitempty"`

	// Name of usage.
	Name *NameInfo `json:"name,omitempty"`

	// Next reset time of usage.
	NextResetTime *time.Time `json:"nextResetTime,omitempty"`

	// Quota period of usage.
	QuotaPeriod *string `json:"quotaPeriod,omitempty"`

	// Unit of the usage.
	Unit *UsagesUnit `json:"unit,omitempty"`
}

BackupManagementUsage - Backup management usages of a vault.

func (*BackupManagementUsage) UnmarshalJSON

func (b *BackupManagementUsage) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type BackupManagementUsage.

type BackupManagementUsageList

type BackupManagementUsageList struct {
	// The list of backup management usages for the given vault.
	Value []*BackupManagementUsage `json:"value,omitempty"`
}

BackupManagementUsageList - Backup management usage for vault.

type BackupOperationResultsClient

type BackupOperationResultsClient struct {
	// contains filtered or unexported fields
}

BackupOperationResultsClient contains the methods for the BackupOperationResults group. Don't use this type directly, use NewBackupOperationResultsClient() instead.

func NewBackupOperationResultsClient

func NewBackupOperationResultsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupOperationResultsClient, error)

NewBackupOperationResultsClient creates a new instance of BackupOperationResultsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupOperationResultsClient) Get

Get - Provides the status of the delete operations such as deleting backed up item. Once the operation has started, the status code in the response would be Accepted. It will continue to be in this state till it reaches completion. On successful completion, the status code will be OK. This method expects OperationID as an argument. OperationID is part of the Location header of the operation response. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. operationID - OperationID which represents the operation. options - BackupOperationResultsClientGetOptions contains the optional parameters for the BackupOperationResultsClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/ProtectedItem_Delete_OperationResult.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupOperationResultsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Get(ctx,
		"PySDKBackupTestRsVault",
		"PythonSDKBackupTestRg",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

type BackupOperationResultsClientGetOptions added in v0.2.0

type BackupOperationResultsClientGetOptions struct {
}

BackupOperationResultsClientGetOptions contains the optional parameters for the BackupOperationResultsClient.Get method.

type BackupOperationResultsClientGetResponse added in v0.2.0

type BackupOperationResultsClientGetResponse struct {
}

BackupOperationResultsClientGetResponse contains the response from method BackupOperationResultsClient.Get.

type BackupOperationStatusesClient

type BackupOperationStatusesClient struct {
	// contains filtered or unexported fields
}

BackupOperationStatusesClient contains the methods for the BackupOperationStatuses group. Don't use this type directly, use NewBackupOperationStatusesClient() instead.

func NewBackupOperationStatusesClient

func NewBackupOperationStatusesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupOperationStatusesClient, error)

NewBackupOperationStatusesClient creates a new instance of BackupOperationStatusesClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupOperationStatusesClient) Get

Get - Fetches the status of an operation such as triggering a backup, restore. The status can be in progress, completed or failed. You can refer to the OperationStatus enum for all the possible states of an operation. Some operations create jobs. This method returns the list of jobs when the operation is complete. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. operationID - OperationID which represents the operation. options - BackupOperationStatusesClientGetOptions contains the optional parameters for the BackupOperationStatusesClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/ProtectedItem_Delete_OperationStatus.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupOperationStatusesClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"PySDKBackupTestRsVault",
		"PythonSDKBackupTestRg",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type BackupOperationStatusesClientGetOptions added in v0.2.0

type BackupOperationStatusesClientGetOptions struct {
}

BackupOperationStatusesClientGetOptions contains the optional parameters for the BackupOperationStatusesClient.Get method.

type BackupOperationStatusesClientGetResponse added in v0.2.0

type BackupOperationStatusesClientGetResponse struct {
	OperationStatus
}

BackupOperationStatusesClientGetResponse contains the response from method BackupOperationStatusesClient.Get.

type BackupPoliciesClient

type BackupPoliciesClient struct {
	// contains filtered or unexported fields
}

BackupPoliciesClient contains the methods for the BackupPolicies group. Don't use this type directly, use NewBackupPoliciesClient() instead.

func NewBackupPoliciesClient

func NewBackupPoliciesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupPoliciesClient, error)

NewBackupPoliciesClient creates a new instance of BackupPoliciesClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupPoliciesClient) NewListPager added in v0.5.0

func (client *BackupPoliciesClient) NewListPager(vaultName string, resourceGroupName string, options *BackupPoliciesClientListOptions) *runtime.Pager[BackupPoliciesClientListResponse]

NewListPager - Lists of backup policies associated with Recovery Services Vault. API provides pagination parameters to fetch scoped results. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - BackupPoliciesClientListOptions contains the optional parameters for the BackupPoliciesClient.List method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/BackupPolicies_List.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupPoliciesClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := client.NewListPager("NetSDKTestRsVault",
		"SwaggerTestRg",
		&armrecoveryservicesbackup.BackupPoliciesClientListOptions{Filter: to.Ptr("backupManagementType eq 'AzureIaasVM'")})
	for pager.More() {
		nextResult, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range nextResult.Value {
			// TODO: use page item
			_ = v
		}
	}
}
Output:

type BackupPoliciesClientListOptions added in v0.2.0

type BackupPoliciesClientListOptions struct {
	// OData filter options.
	Filter *string
}

BackupPoliciesClientListOptions contains the optional parameters for the BackupPoliciesClient.List method.

type BackupPoliciesClientListResponse added in v0.2.0

type BackupPoliciesClientListResponse struct {
	ProtectionPolicyResourceList
}

BackupPoliciesClientListResponse contains the response from method BackupPoliciesClient.List.

type BackupProtectableItemsClient

type BackupProtectableItemsClient struct {
	// contains filtered or unexported fields
}

BackupProtectableItemsClient contains the methods for the BackupProtectableItems group. Don't use this type directly, use NewBackupProtectableItemsClient() instead.

func NewBackupProtectableItemsClient

func NewBackupProtectableItemsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupProtectableItemsClient, error)

NewBackupProtectableItemsClient creates a new instance of BackupProtectableItemsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupProtectableItemsClient) NewListPager added in v0.5.0

NewListPager - Provides a pageable list of protectable objects within your subscription according to the query filter and the pagination parameters. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - BackupProtectableItemsClientListOptions contains the optional parameters for the BackupProtectableItemsClient.List method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/BackupProtectableItems_List.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupProtectableItemsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := client.NewListPager("NetSDKTestRsVault",
		"SwaggerTestRg",
		&armrecoveryservicesbackup.BackupProtectableItemsClientListOptions{Filter: to.Ptr("backupManagementType eq 'AzureIaasVM'"),
			SkipToken: nil,
		})
	for pager.More() {
		nextResult, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range nextResult.Value {
			// TODO: use page item
			_ = v
		}
	}
}
Output:

type BackupProtectableItemsClientListOptions added in v0.2.0

type BackupProtectableItemsClientListOptions struct {
	// OData filter options.
	Filter *string
	// skipToken Filter.
	SkipToken *string
}

BackupProtectableItemsClientListOptions contains the optional parameters for the BackupProtectableItemsClient.List method.

type BackupProtectableItemsClientListResponse added in v0.2.0

type BackupProtectableItemsClientListResponse struct {
	WorkloadProtectableItemResourceList
}

BackupProtectableItemsClientListResponse contains the response from method BackupProtectableItemsClient.List.

type BackupProtectedItemsClient

type BackupProtectedItemsClient struct {
	// contains filtered or unexported fields
}

BackupProtectedItemsClient contains the methods for the BackupProtectedItems group. Don't use this type directly, use NewBackupProtectedItemsClient() instead.

func NewBackupProtectedItemsClient

func NewBackupProtectedItemsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupProtectedItemsClient, error)

NewBackupProtectedItemsClient creates a new instance of BackupProtectedItemsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupProtectedItemsClient) NewListPager added in v0.5.0

NewListPager - Provides a pageable list of all items that are backed up within a vault. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - BackupProtectedItemsClientListOptions contains the optional parameters for the BackupProtectedItemsClient.List method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/BackupProtectedItems_List.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupProtectedItemsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := client.NewListPager("NetSDKTestRsVault",
		"SwaggerTestRg",
		&armrecoveryservicesbackup.BackupProtectedItemsClientListOptions{Filter: to.Ptr("backupManagementType eq 'AzureIaasVM' and itemType eq 'VM'"),
			SkipToken: nil,
		})
	for pager.More() {
		nextResult, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range nextResult.Value {
			// TODO: use page item
			_ = v
		}
	}
}
Output:

type BackupProtectedItemsClientListOptions added in v0.2.0

type BackupProtectedItemsClientListOptions struct {
	// OData filter options.
	Filter *string
	// skipToken Filter.
	SkipToken *string
}

BackupProtectedItemsClientListOptions contains the optional parameters for the BackupProtectedItemsClient.List method.

type BackupProtectedItemsClientListResponse added in v0.2.0

type BackupProtectedItemsClientListResponse struct {
	ProtectedItemResourceList
}

BackupProtectedItemsClientListResponse contains the response from method BackupProtectedItemsClient.List.

type BackupProtectionContainersClient

type BackupProtectionContainersClient struct {
	// contains filtered or unexported fields
}

BackupProtectionContainersClient contains the methods for the BackupProtectionContainers group. Don't use this type directly, use NewBackupProtectionContainersClient() instead.

func NewBackupProtectionContainersClient

func NewBackupProtectionContainersClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupProtectionContainersClient, error)

NewBackupProtectionContainersClient creates a new instance of BackupProtectionContainersClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupProtectionContainersClient) NewListPager added in v0.5.0

NewListPager - Lists the containers registered to Recovery Services Vault. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - BackupProtectionContainersClientListOptions contains the optional parameters for the BackupProtectionContainersClient.List method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureStorage/ProtectionContainers_List.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupProtectionContainersClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := client.NewListPager("testVault",
		"testRg",
		&armrecoveryservicesbackup.BackupProtectionContainersClientListOptions{Filter: to.Ptr("backupManagementType eq 'AzureWorkload'")})
	for pager.More() {
		nextResult, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range nextResult.Value {
			// TODO: use page item
			_ = v
		}
	}
}
Output:

type BackupProtectionContainersClientListOptions added in v0.2.0

type BackupProtectionContainersClientListOptions struct {
	// OData filter options.
	Filter *string
}

BackupProtectionContainersClientListOptions contains the optional parameters for the BackupProtectionContainersClient.List method.

type BackupProtectionContainersClientListResponse added in v0.2.0

type BackupProtectionContainersClientListResponse struct {
	ProtectionContainerResourceList
}

BackupProtectionContainersClientListResponse contains the response from method BackupProtectionContainersClient.List.

type BackupProtectionIntentClient

type BackupProtectionIntentClient struct {
	// contains filtered or unexported fields
}

BackupProtectionIntentClient contains the methods for the BackupProtectionIntent group. Don't use this type directly, use NewBackupProtectionIntentClient() instead.

func NewBackupProtectionIntentClient

func NewBackupProtectionIntentClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupProtectionIntentClient, error)

NewBackupProtectionIntentClient creates a new instance of BackupProtectionIntentClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupProtectionIntentClient) NewListPager added in v0.5.0

NewListPager - Provides a pageable list of all intents that are present within a vault. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - BackupProtectionIntentClientListOptions contains the optional parameters for the BackupProtectionIntentClient.List method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureWorkload/BackupProtectionIntent_List.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupProtectionIntentClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := client.NewListPager("myVault",
		"myRG",
		&armrecoveryservicesbackup.BackupProtectionIntentClientListOptions{Filter: nil,
			SkipToken: nil,
		})
	for pager.More() {
		nextResult, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range nextResult.Value {
			// TODO: use page item
			_ = v
		}
	}
}
Output:

type BackupProtectionIntentClientListOptions added in v0.2.0

type BackupProtectionIntentClientListOptions struct {
	// OData filter options.
	Filter *string
	// skipToken Filter.
	SkipToken *string
}

BackupProtectionIntentClientListOptions contains the optional parameters for the BackupProtectionIntentClient.List method.

type BackupProtectionIntentClientListResponse added in v0.2.0

type BackupProtectionIntentClientListResponse struct {
	ProtectionIntentResourceList
}

BackupProtectionIntentClientListResponse contains the response from method BackupProtectionIntentClient.List.

type BackupRequest

type BackupRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`
}

BackupRequest - Base class for backup request. Workload-specific backup requests are derived from this class.

func (*BackupRequest) GetBackupRequest

func (b *BackupRequest) GetBackupRequest() *BackupRequest

GetBackupRequest implements the BackupRequestClassification interface for type BackupRequest.

type BackupRequestClassification

type BackupRequestClassification interface {
	// GetBackupRequest returns the BackupRequest content of the underlying type.
	GetBackupRequest() *BackupRequest
}

BackupRequestClassification provides polymorphic access to related types. Call the interface's GetBackupRequest() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureFileShareBackupRequest, *AzureWorkloadBackupRequest, *BackupRequest, *IaasVMBackupRequest

type BackupRequestResource

type BackupRequestResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// BackupRequestResource properties
	Properties BackupRequestClassification `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

BackupRequestResource - Base class for backup request. Workload-specific backup requests are derived from this class.

func (BackupRequestResource) MarshalJSON

func (b BackupRequestResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type BackupRequestResource.

func (*BackupRequestResource) UnmarshalJSON

func (b *BackupRequestResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type BackupRequestResource.

type BackupResourceConfig

type BackupResourceConfig struct {
	// Opt in details of Cross Region Restore feature.
	CrossRegionRestoreFlag *bool `json:"crossRegionRestoreFlag,omitempty"`

	// Vault Dedup state
	DedupState *DedupState `json:"dedupState,omitempty"`

	// Storage type
	StorageModelType *StorageType `json:"storageModelType,omitempty"`

	// Storage type.
	StorageType *StorageType `json:"storageType,omitempty"`

	// Locked or Unlocked. Once a machine is registered against a resource, the storageTypeState is always Locked.
	StorageTypeState *StorageTypeState `json:"storageTypeState,omitempty"`

	// Vault x-cool state
	XcoolState *XcoolState `json:"xcoolState,omitempty"`
}

BackupResourceConfig - The resource storage details.

type BackupResourceConfigResource

type BackupResourceConfigResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// BackupResourceConfigResource properties
	Properties *BackupResourceConfig `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

BackupResourceConfigResource - The resource storage details.

func (BackupResourceConfigResource) MarshalJSON

func (b BackupResourceConfigResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type BackupResourceConfigResource.

type BackupResourceEncryptionConfig

type BackupResourceEncryptionConfig struct {
	// Encryption At Rest Type
	EncryptionAtRestType          *EncryptionAtRestType          `json:"encryptionAtRestType,omitempty"`
	InfrastructureEncryptionState *InfrastructureEncryptionState `json:"infrastructureEncryptionState,omitempty"`

	// Key Vault Key URI
	KeyURI           *string           `json:"keyUri,omitempty"`
	LastUpdateStatus *LastUpdateStatus `json:"lastUpdateStatus,omitempty"`

	// Key Vault Subscription Id
	SubscriptionID *string `json:"subscriptionId,omitempty"`
}

type BackupResourceEncryptionConfigExtended

type BackupResourceEncryptionConfigExtended struct {
	// Encryption At Rest Type
	EncryptionAtRestType          *EncryptionAtRestType          `json:"encryptionAtRestType,omitempty"`
	InfrastructureEncryptionState *InfrastructureEncryptionState `json:"infrastructureEncryptionState,omitempty"`

	// Key Vault Key URI
	KeyURI           *string           `json:"keyUri,omitempty"`
	LastUpdateStatus *LastUpdateStatus `json:"lastUpdateStatus,omitempty"`

	// Key Vault Subscription Id
	SubscriptionID *string `json:"subscriptionId,omitempty"`

	// bool to indicate whether to use system Assigned Identity or not
	UseSystemAssignedIdentity *bool `json:"useSystemAssignedIdentity,omitempty"`

	// User Assigned Identity Id
	UserAssignedIdentity *string `json:"userAssignedIdentity,omitempty"`
}

type BackupResourceEncryptionConfigExtendedResource

type BackupResourceEncryptionConfigExtendedResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// BackupResourceEncryptionConfigExtendedResource properties
	Properties *BackupResourceEncryptionConfigExtended `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

func (BackupResourceEncryptionConfigExtendedResource) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type BackupResourceEncryptionConfigExtendedResource.

type BackupResourceEncryptionConfigResource

type BackupResourceEncryptionConfigResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// BackupResourceEncryptionConfigResource properties
	Properties *BackupResourceEncryptionConfig `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

func (BackupResourceEncryptionConfigResource) MarshalJSON

func (b BackupResourceEncryptionConfigResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type BackupResourceEncryptionConfigResource.

type BackupResourceEncryptionConfigsClient

type BackupResourceEncryptionConfigsClient struct {
	// contains filtered or unexported fields
}

BackupResourceEncryptionConfigsClient contains the methods for the BackupResourceEncryptionConfigs group. Don't use this type directly, use NewBackupResourceEncryptionConfigsClient() instead.

func NewBackupResourceEncryptionConfigsClient

func NewBackupResourceEncryptionConfigsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupResourceEncryptionConfigsClient, error)

NewBackupResourceEncryptionConfigsClient creates a new instance of BackupResourceEncryptionConfigsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupResourceEncryptionConfigsClient) Get

Get - Fetches Vault Encryption config. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - BackupResourceEncryptionConfigsClientGetOptions contains the optional parameters for the BackupResourceEncryptionConfigsClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/BackupResourceEncryptionConfig_Get.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupResourceEncryptionConfigsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"rishTestVault",
		"rishgrp",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*BackupResourceEncryptionConfigsClient) Update

Update - Updates Vault encryption config. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. parameters - Vault encryption input config request options - BackupResourceEncryptionConfigsClientUpdateOptions contains the optional parameters for the BackupResourceEncryptionConfigsClient.Update method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/BackupResourceEncryptionConfig_Put.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupResourceEncryptionConfigsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Update(ctx,
		"source-rsv",
		"test-rg",
		armrecoveryservicesbackup.BackupResourceEncryptionConfigResource{
			Properties: &armrecoveryservicesbackup.BackupResourceEncryptionConfig{
				EncryptionAtRestType:          to.Ptr(armrecoveryservicesbackup.EncryptionAtRestTypeCustomerManaged),
				InfrastructureEncryptionState: to.Ptr(armrecoveryservicesbackup.InfrastructureEncryptionState("true")),
				KeyURI:                        to.Ptr("https://gktestkv1.vault.azure.net/keys/Test1/ed2e8cdc7f86477ebf0c6462b504a9ed"),
				SubscriptionID:                to.Ptr("1a2311d9-66f5-47d3-a9fb-7a37da63934b"),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

type BackupResourceEncryptionConfigsClientGetOptions added in v0.2.0

type BackupResourceEncryptionConfigsClientGetOptions struct {
}

BackupResourceEncryptionConfigsClientGetOptions contains the optional parameters for the BackupResourceEncryptionConfigsClient.Get method.

type BackupResourceEncryptionConfigsClientGetResponse added in v0.2.0

type BackupResourceEncryptionConfigsClientGetResponse struct {
	BackupResourceEncryptionConfigExtendedResource
}

BackupResourceEncryptionConfigsClientGetResponse contains the response from method BackupResourceEncryptionConfigsClient.Get.

type BackupResourceEncryptionConfigsClientUpdateOptions added in v0.2.0

type BackupResourceEncryptionConfigsClientUpdateOptions struct {
}

BackupResourceEncryptionConfigsClientUpdateOptions contains the optional parameters for the BackupResourceEncryptionConfigsClient.Update method.

type BackupResourceEncryptionConfigsClientUpdateResponse added in v0.2.0

type BackupResourceEncryptionConfigsClientUpdateResponse struct {
}

BackupResourceEncryptionConfigsClientUpdateResponse contains the response from method BackupResourceEncryptionConfigsClient.Update.

type BackupResourceStorageConfigsNonCRRClient

type BackupResourceStorageConfigsNonCRRClient struct {
	// contains filtered or unexported fields
}

BackupResourceStorageConfigsNonCRRClient contains the methods for the BackupResourceStorageConfigsNonCRR group. Don't use this type directly, use NewBackupResourceStorageConfigsNonCRRClient() instead.

func NewBackupResourceStorageConfigsNonCRRClient

func NewBackupResourceStorageConfigsNonCRRClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupResourceStorageConfigsNonCRRClient, error)

NewBackupResourceStorageConfigsNonCRRClient creates a new instance of BackupResourceStorageConfigsNonCRRClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupResourceStorageConfigsNonCRRClient) Get

Get - Fetches resource storage config. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - BackupResourceStorageConfigsNonCRRClientGetOptions contains the optional parameters for the BackupResourceStorageConfigsNonCRRClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/BackupStorageConfig_Get.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupResourceStorageConfigsNonCRRClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"PySDKBackupTestRsVault",
		"PythonSDKBackupTestRg",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*BackupResourceStorageConfigsNonCRRClient) Patch

Patch - Updates vault storage model type. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. parameters - Vault storage config request options - BackupResourceStorageConfigsNonCRRClientPatchOptions contains the optional parameters for the BackupResourceStorageConfigsNonCRRClient.Patch method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/BackupStorageConfig_Patch.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupResourceStorageConfigsNonCRRClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Patch(ctx,
		"PySDKBackupTestRsVault",
		"PythonSDKBackupTestRg",
		armrecoveryservicesbackup.BackupResourceConfigResource{
			Properties: &armrecoveryservicesbackup.BackupResourceConfig{
				StorageType:      to.Ptr(armrecoveryservicesbackup.StorageTypeLocallyRedundant),
				StorageTypeState: to.Ptr(armrecoveryservicesbackup.StorageTypeStateUnlocked),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

func (*BackupResourceStorageConfigsNonCRRClient) Update

Update - Updates vault storage model type. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. parameters - Vault storage config request options - BackupResourceStorageConfigsNonCRRClientUpdateOptions contains the optional parameters for the BackupResourceStorageConfigsNonCRRClient.Update method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/BackupStorageConfig_Put.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupResourceStorageConfigsNonCRRClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Update(ctx,
		"PySDKBackupTestRsVault",
		"PythonSDKBackupTestRg",
		armrecoveryservicesbackup.BackupResourceConfigResource{
			Properties: &armrecoveryservicesbackup.BackupResourceConfig{
				StorageType:      to.Ptr(armrecoveryservicesbackup.StorageTypeLocallyRedundant),
				StorageTypeState: to.Ptr(armrecoveryservicesbackup.StorageTypeStateUnlocked),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type BackupResourceStorageConfigsNonCRRClientGetOptions added in v0.2.0

type BackupResourceStorageConfigsNonCRRClientGetOptions struct {
}

BackupResourceStorageConfigsNonCRRClientGetOptions contains the optional parameters for the BackupResourceStorageConfigsNonCRRClient.Get method.

type BackupResourceStorageConfigsNonCRRClientGetResponse added in v0.2.0

type BackupResourceStorageConfigsNonCRRClientGetResponse struct {
	BackupResourceConfigResource
}

BackupResourceStorageConfigsNonCRRClientGetResponse contains the response from method BackupResourceStorageConfigsNonCRRClient.Get.

type BackupResourceStorageConfigsNonCRRClientPatchOptions added in v0.2.0

type BackupResourceStorageConfigsNonCRRClientPatchOptions struct {
}

BackupResourceStorageConfigsNonCRRClientPatchOptions contains the optional parameters for the BackupResourceStorageConfigsNonCRRClient.Patch method.

type BackupResourceStorageConfigsNonCRRClientPatchResponse added in v0.2.0

type BackupResourceStorageConfigsNonCRRClientPatchResponse struct {
}

BackupResourceStorageConfigsNonCRRClientPatchResponse contains the response from method BackupResourceStorageConfigsNonCRRClient.Patch.

type BackupResourceStorageConfigsNonCRRClientUpdateOptions added in v0.2.0

type BackupResourceStorageConfigsNonCRRClientUpdateOptions struct {
}

BackupResourceStorageConfigsNonCRRClientUpdateOptions contains the optional parameters for the BackupResourceStorageConfigsNonCRRClient.Update method.

type BackupResourceStorageConfigsNonCRRClientUpdateResponse added in v0.2.0

type BackupResourceStorageConfigsNonCRRClientUpdateResponse struct {
	BackupResourceConfigResource
}

BackupResourceStorageConfigsNonCRRClientUpdateResponse contains the response from method BackupResourceStorageConfigsNonCRRClient.Update.

type BackupResourceVaultConfig

type BackupResourceVaultConfig struct {
	// Enabled or Disabled.
	EnhancedSecurityState *EnhancedSecurityState `json:"enhancedSecurityState,omitempty"`

	// Is soft delete feature state editable
	IsSoftDeleteFeatureStateEditable *bool `json:"isSoftDeleteFeatureStateEditable,omitempty"`

	// ResourceGuard Operation Requests
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// Soft Delete feature state
	SoftDeleteFeatureState *SoftDeleteFeatureState `json:"softDeleteFeatureState,omitempty"`

	// Storage type.
	StorageModelType *StorageType `json:"storageModelType,omitempty"`

	// Storage type.
	StorageType *StorageType `json:"storageType,omitempty"`

	// Locked or Unlocked. Once a machine is registered against a resource, the storageTypeState is always Locked.
	StorageTypeState *StorageTypeState `json:"storageTypeState,omitempty"`
}

BackupResourceVaultConfig - Backup resource vault config details.

func (BackupResourceVaultConfig) MarshalJSON

func (b BackupResourceVaultConfig) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type BackupResourceVaultConfig.

type BackupResourceVaultConfigResource

type BackupResourceVaultConfigResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// BackupResourceVaultConfigResource properties
	Properties *BackupResourceVaultConfig `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

BackupResourceVaultConfigResource - Backup resource vault config details.

func (BackupResourceVaultConfigResource) MarshalJSON

func (b BackupResourceVaultConfigResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type BackupResourceVaultConfigResource.

type BackupResourceVaultConfigsClient

type BackupResourceVaultConfigsClient struct {
	// contains filtered or unexported fields
}

BackupResourceVaultConfigsClient contains the methods for the BackupResourceVaultConfigs group. Don't use this type directly, use NewBackupResourceVaultConfigsClient() instead.

func NewBackupResourceVaultConfigsClient

func NewBackupResourceVaultConfigsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupResourceVaultConfigsClient, error)

NewBackupResourceVaultConfigsClient creates a new instance of BackupResourceVaultConfigsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupResourceVaultConfigsClient) Get

Get - Fetches resource vault config. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - BackupResourceVaultConfigsClientGetOptions contains the optional parameters for the BackupResourceVaultConfigsClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/BackupResourceVaultConfigs_Get.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupResourceVaultConfigsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"SwaggerTest",
		"SwaggerTestRg",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*BackupResourceVaultConfigsClient) Put

Put - Updates vault security config. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. parameters - resource config request options - BackupResourceVaultConfigsClientPutOptions contains the optional parameters for the BackupResourceVaultConfigsClient.Put method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/BackupResourceVaultConfigs_Put.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupResourceVaultConfigsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Put(ctx,
		"SwaggerTest",
		"SwaggerTestRg",
		armrecoveryservicesbackup.BackupResourceVaultConfigResource{
			Properties: &armrecoveryservicesbackup.BackupResourceVaultConfig{
				EnhancedSecurityState:  to.Ptr(armrecoveryservicesbackup.EnhancedSecurityStateEnabled),
				SoftDeleteFeatureState: to.Ptr(armrecoveryservicesbackup.SoftDeleteFeatureStateEnabled),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*BackupResourceVaultConfigsClient) Update

Update - Updates vault security config. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. parameters - resource config request options - BackupResourceVaultConfigsClientUpdateOptions contains the optional parameters for the BackupResourceVaultConfigsClient.Update method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/BackupResourceVaultConfigs_Patch.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupResourceVaultConfigsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Update(ctx,
		"SwaggerTest",
		"SwaggerTestRg",
		armrecoveryservicesbackup.BackupResourceVaultConfigResource{
			Properties: &armrecoveryservicesbackup.BackupResourceVaultConfig{
				EnhancedSecurityState: to.Ptr(armrecoveryservicesbackup.EnhancedSecurityStateEnabled),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type BackupResourceVaultConfigsClientGetOptions added in v0.2.0

type BackupResourceVaultConfigsClientGetOptions struct {
}

BackupResourceVaultConfigsClientGetOptions contains the optional parameters for the BackupResourceVaultConfigsClient.Get method.

type BackupResourceVaultConfigsClientGetResponse added in v0.2.0

type BackupResourceVaultConfigsClientGetResponse struct {
	BackupResourceVaultConfigResource
}

BackupResourceVaultConfigsClientGetResponse contains the response from method BackupResourceVaultConfigsClient.Get.

type BackupResourceVaultConfigsClientPutOptions added in v0.2.0

type BackupResourceVaultConfigsClientPutOptions struct {
}

BackupResourceVaultConfigsClientPutOptions contains the optional parameters for the BackupResourceVaultConfigsClient.Put method.

type BackupResourceVaultConfigsClientPutResponse added in v0.2.0

type BackupResourceVaultConfigsClientPutResponse struct {
	BackupResourceVaultConfigResource
}

BackupResourceVaultConfigsClientPutResponse contains the response from method BackupResourceVaultConfigsClient.Put.

type BackupResourceVaultConfigsClientUpdateOptions added in v0.2.0

type BackupResourceVaultConfigsClientUpdateOptions struct {
}

BackupResourceVaultConfigsClientUpdateOptions contains the optional parameters for the BackupResourceVaultConfigsClient.Update method.

type BackupResourceVaultConfigsClientUpdateResponse added in v0.2.0

type BackupResourceVaultConfigsClientUpdateResponse struct {
	BackupResourceVaultConfigResource
}

BackupResourceVaultConfigsClientUpdateResponse contains the response from method BackupResourceVaultConfigsClient.Update.

type BackupStatusClient

type BackupStatusClient struct {
	// contains filtered or unexported fields
}

BackupStatusClient contains the methods for the BackupStatus group. Don't use this type directly, use NewBackupStatusClient() instead.

func NewBackupStatusClient

func NewBackupStatusClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupStatusClient, error)

NewBackupStatusClient creates a new instance of BackupStatusClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupStatusClient) Get

Get - Get the container backup status If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 azureRegion - Azure region to hit Api parameters - Container Backup Status Request options - BackupStatusClientGetOptions contains the optional parameters for the BackupStatusClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/GetBackupStatus.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupStatusClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"southeastasia",
		armrecoveryservicesbackup.BackupStatusRequest{
			ResourceID:   to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm"),
			ResourceType: to.Ptr(armrecoveryservicesbackup.DataSourceTypeVM),
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type BackupStatusClientGetOptions added in v0.2.0

type BackupStatusClientGetOptions struct {
}

BackupStatusClientGetOptions contains the optional parameters for the BackupStatusClient.Get method.

type BackupStatusClientGetResponse added in v0.2.0

type BackupStatusClientGetResponse struct {
	BackupStatusResponse
}

BackupStatusClientGetResponse contains the response from method BackupStatusClient.Get.

type BackupStatusRequest

type BackupStatusRequest struct {
	// Protectable Item Logical Name
	PoLogicalName *string `json:"poLogicalName,omitempty"`

	// Entire ARM resource id of the resource
	ResourceID *string `json:"resourceId,omitempty"`

	// Container Type - VM, SQLPaaS, DPM, AzureFileShare…
	ResourceType *DataSourceType `json:"resourceType,omitempty"`
}

BackupStatusRequest - BackupStatus request.

type BackupStatusResponse

type BackupStatusResponse struct {
	// Specifies the product specific container name. E.g. iaasvmcontainer;iaasvmcontainer;csname;vmname.
	ContainerName *string `json:"containerName,omitempty"`

	// ErrorCode in case of intent failed
	ErrorCode *string `json:"errorCode,omitempty"`

	// ErrorMessage in case of intent failed.
	ErrorMessage *string `json:"errorMessage,omitempty"`

	// Specifies the fabric name - Azure or AD
	FabricName *FabricName `json:"fabricName,omitempty"`

	// Specifies the policy name which is used for protection
	PolicyName *string `json:"policyName,omitempty"`

	// Specifies the product specific ds name. E.g. vm;iaasvmcontainer;csname;vmname.
	ProtectedItemName *string `json:"protectedItemName,omitempty"`

	// Specifies whether the container is registered or not
	ProtectionStatus *ProtectionStatus `json:"protectionStatus,omitempty"`

	// Container registration status
	RegistrationStatus *string `json:"registrationStatus,omitempty"`

	// Specifies the arm resource id of the vault
	VaultID *string `json:"vaultId,omitempty"`
}

BackupStatusResponse - BackupStatus response.

type BackupType

type BackupType string

BackupType - Type of backup, viz. Full, Differential, Log or CopyOnlyFull

const (
	BackupTypeCopyOnlyFull BackupType = "CopyOnlyFull"
	BackupTypeDifferential BackupType = "Differential"
	BackupTypeFull         BackupType = "Full"
	BackupTypeIncremental  BackupType = "Incremental"
	BackupTypeInvalid      BackupType = "Invalid"
	BackupTypeLog          BackupType = "Log"
)

func PossibleBackupTypeValues

func PossibleBackupTypeValues() []BackupType

PossibleBackupTypeValues returns the possible values for the BackupType const type.

type BackupUsageSummariesClient

type BackupUsageSummariesClient struct {
	// contains filtered or unexported fields
}

BackupUsageSummariesClient contains the methods for the BackupUsageSummaries group. Don't use this type directly, use NewBackupUsageSummariesClient() instead.

func NewBackupUsageSummariesClient

func NewBackupUsageSummariesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupUsageSummariesClient, error)

NewBackupUsageSummariesClient creates a new instance of BackupUsageSummariesClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupUsageSummariesClient) NewListPager added in v0.5.0

NewListPager - Fetches the backup management usage summaries of the vault. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - BackupUsageSummariesClientListOptions contains the optional parameters for the BackupUsageSummariesClient.List method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/BackupProtectionContainers_UsageSummary_Get.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupUsageSummariesClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := client.NewListPager("testVault",
		"testRG",
		&armrecoveryservicesbackup.BackupUsageSummariesClientListOptions{Filter: to.Ptr("type eq 'BackupProtectionContainerCountSummary'"),
			SkipToken: nil,
		})
	for pager.More() {
		nextResult, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range nextResult.Value {
			// TODO: use page item
			_ = v
		}
	}
}
Output:

type BackupUsageSummariesClientListOptions added in v0.2.0

type BackupUsageSummariesClientListOptions struct {
	// OData filter options.
	Filter *string
	// skipToken Filter.
	SkipToken *string
}

BackupUsageSummariesClientListOptions contains the optional parameters for the BackupUsageSummariesClient.List method.

type BackupUsageSummariesClientListResponse added in v0.2.0

type BackupUsageSummariesClientListResponse struct {
	BackupManagementUsageList
}

BackupUsageSummariesClientListResponse contains the response from method BackupUsageSummariesClient.List.

type BackupWorkloadItemsClient

type BackupWorkloadItemsClient struct {
	// contains filtered or unexported fields
}

BackupWorkloadItemsClient contains the methods for the BackupWorkloadItems group. Don't use this type directly, use NewBackupWorkloadItemsClient() instead.

func NewBackupWorkloadItemsClient

func NewBackupWorkloadItemsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupWorkloadItemsClient, error)

NewBackupWorkloadItemsClient creates a new instance of BackupWorkloadItemsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupWorkloadItemsClient) NewListPager added in v0.5.0

func (client *BackupWorkloadItemsClient) NewListPager(vaultName string, resourceGroupName string, fabricName string, containerName string, options *BackupWorkloadItemsClientListOptions) *runtime.Pager[BackupWorkloadItemsClientListResponse]

NewListPager - Provides a pageable list of workload item of a specific container according to the query filter and the pagination parameters. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the container. containerName - Name of the container. options - BackupWorkloadItemsClientListOptions contains the optional parameters for the BackupWorkloadItemsClient.List method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureWorkload/BackupWorkloadItems_List.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupWorkloadItemsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := client.NewListPager("suchandr-seacan-rsv",
		"testRg",
		"Azure",
		"VMAppContainer;Compute;bvtdtestag;sqlserver-1",
		&armrecoveryservicesbackup.BackupWorkloadItemsClientListOptions{Filter: to.Ptr("backupManagementType eq 'AzureWorkload'"),
			SkipToken: nil,
		})
	for pager.More() {
		nextResult, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range nextResult.Value {
			// TODO: use page item
			_ = v
		}
	}
}
Output:

type BackupWorkloadItemsClientListOptions added in v0.2.0

type BackupWorkloadItemsClientListOptions struct {
	// OData filter options.
	Filter *string
	// skipToken Filter.
	SkipToken *string
}

BackupWorkloadItemsClientListOptions contains the optional parameters for the BackupWorkloadItemsClient.List method.

type BackupWorkloadItemsClientListResponse added in v0.2.0

type BackupWorkloadItemsClientListResponse struct {
	WorkloadItemResourceList
}

BackupWorkloadItemsClientListResponse contains the response from method BackupWorkloadItemsClient.List.

type BackupsClient

type BackupsClient struct {
	// contains filtered or unexported fields
}

BackupsClient contains the methods for the Backups group. Don't use this type directly, use NewBackupsClient() instead.

func NewBackupsClient

func NewBackupsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*BackupsClient, error)

NewBackupsClient creates a new instance of BackupsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*BackupsClient) Trigger

func (client *BackupsClient) Trigger(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, protectedItemName string, parameters BackupRequestResource, options *BackupsClientTriggerOptions) (BackupsClientTriggerResponse, error)

Trigger - Triggers backup for specified backed up item. This is an asynchronous operation. To know the status of the operation, call GetProtectedItemOperationResult API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the backup item. containerName - Container name associated with the backup item. protectedItemName - Backup item for which backup needs to be triggered. parameters - resource backup request options - BackupsClientTriggerOptions contains the optional parameters for the BackupsClient.Trigger method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/TriggerBackup_Post.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewBackupsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Trigger(ctx,
		"linuxRsVault",
		"linuxRsVaultRG",
		"Azure",
		"IaasVMContainer;iaasvmcontainerv2;testrg;v1win2012r",
		"VM;iaasvmcontainerv2;testrg;v1win2012r",
		armrecoveryservicesbackup.BackupRequestResource{
			Properties: &armrecoveryservicesbackup.IaasVMBackupRequest{
				ObjectType: to.Ptr("IaasVMBackupRequest"),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

type BackupsClientTriggerOptions added in v0.2.0

type BackupsClientTriggerOptions struct {
}

BackupsClientTriggerOptions contains the optional parameters for the BackupsClient.Trigger method.

type BackupsClientTriggerResponse added in v0.2.0

type BackupsClientTriggerResponse struct {
}

BackupsClientTriggerResponse contains the response from method BackupsClient.Trigger.

type Client added in v0.2.0

type Client struct {
	// contains filtered or unexported fields
}

Client contains the methods for the RecoveryServicesBackupClient group. Don't use this type directly, use NewClient() instead.

func NewClient added in v0.2.0

func NewClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*Client, error)

NewClient creates a new instance of Client with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*Client) BeginBMSPrepareDataMove added in v0.2.0

func (client *Client) BeginBMSPrepareDataMove(ctx context.Context, vaultName string, resourceGroupName string, parameters PrepareDataMoveRequest, options *ClientBeginBMSPrepareDataMoveOptions) (*runtime.Poller[ClientBMSPrepareDataMoveResponse], error)

BeginBMSPrepareDataMove - Prepares source vault for Data Move operation If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. parameters - Prepare data move request options - ClientBeginBMSPrepareDataMoveOptions contains the optional parameters for the Client.BeginBMSPrepareDataMove method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/BackupDataMove/PrepareDataMove_Post.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := client.BeginBMSPrepareDataMove(ctx,
		"source-rsv",
		"sourceRG",
		armrecoveryservicesbackup.PrepareDataMoveRequest{
			DataMoveLevel:    to.Ptr(armrecoveryservicesbackup.DataMoveLevelVault),
			TargetRegion:     to.Ptr("USGov Virginia"),
			TargetResourceID: to.Ptr("/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/targetRG/providers/Microsoft.RecoveryServices/vaults/target-rsv"),
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
}
Output:

func (*Client) BeginBMSTriggerDataMove added in v0.2.0

func (client *Client) BeginBMSTriggerDataMove(ctx context.Context, vaultName string, resourceGroupName string, parameters TriggerDataMoveRequest, options *ClientBeginBMSTriggerDataMoveOptions) (*runtime.Poller[ClientBMSTriggerDataMoveResponse], error)

BeginBMSTriggerDataMove - Triggers Data Move Operation on target vault If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. parameters - Trigger data move request options - ClientBeginBMSTriggerDataMoveOptions contains the optional parameters for the Client.BeginBMSTriggerDataMove method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/BackupDataMove/TriggerDataMove_Post.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := client.BeginBMSTriggerDataMove(ctx,
		"target-rsv",
		"targetRG",
		armrecoveryservicesbackup.TriggerDataMoveRequest{
			CorrelationID:    to.Ptr("MTg2OTcyMzM4NzYyMjc1NDY3Nzs1YmUzYmVmNi04YjJiLTRhOTItOTllYi01NTM0MDllYjk2NjE="),
			DataMoveLevel:    to.Ptr(armrecoveryservicesbackup.DataMoveLevelVault),
			SourceRegion:     to.Ptr("USGov Iowa"),
			SourceResourceID: to.Ptr("/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/sourceRG/providers/Microsoft.RecoveryServices/vaults/source-rsv"),
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
}
Output:

func (*Client) BeginMoveRecoveryPoint added in v0.2.0

func (client *Client) BeginMoveRecoveryPoint(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, protectedItemName string, recoveryPointID string, parameters MoveRPAcrossTiersRequest, options *ClientBeginMoveRecoveryPointOptions) (*runtime.Poller[ClientMoveRecoveryPointResponse], error)

BeginMoveRecoveryPoint - Move recovery point from one datastore to another store. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. parameters - Move Resource Across Tiers Request options - ClientBeginMoveRecoveryPointOptions contains the optional parameters for the Client.BeginMoveRecoveryPoint method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/TriggerRecoveryPointMove_Post.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := client.BeginMoveRecoveryPoint(ctx,
		"testVault",
		"netsdktestrg",
		"Azure",
		"IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1",
		"VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1",
		"348916168024334",
		armrecoveryservicesbackup.MoveRPAcrossTiersRequest{
			ObjectType:     to.Ptr("MoveRPAcrossTiersRequest"),
			SourceTierType: to.Ptr(armrecoveryservicesbackup.RecoveryPointTierTypeHardenedRP),
			TargetTierType: to.Ptr(armrecoveryservicesbackup.RecoveryPointTierTypeArchivedRP),
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
}
Output:

func (*Client) GetOperationStatus added in v0.2.0

func (client *Client) GetOperationStatus(ctx context.Context, vaultName string, resourceGroupName string, operationID string, options *ClientGetOperationStatusOptions) (ClientGetOperationStatusResponse, error)

GetOperationStatus - Fetches operation status for data move operation on vault If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - ClientGetOperationStatusOptions contains the optional parameters for the Client.GetOperationStatus method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/BackupDataMove/BackupDataMoveOperationStatus_Get.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.GetOperationStatus(ctx,
		"source-rsv",
		"sourceRG",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type ClientBMSPrepareDataMoveResponse added in v0.2.0

type ClientBMSPrepareDataMoveResponse struct {
}

ClientBMSPrepareDataMoveResponse contains the response from method Client.BMSPrepareDataMove.

type ClientBMSTriggerDataMoveResponse added in v0.2.0

type ClientBMSTriggerDataMoveResponse struct {
}

ClientBMSTriggerDataMoveResponse contains the response from method Client.BMSTriggerDataMove.

type ClientBeginBMSPrepareDataMoveOptions added in v0.2.0

type ClientBeginBMSPrepareDataMoveOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

ClientBeginBMSPrepareDataMoveOptions contains the optional parameters for the Client.BeginBMSPrepareDataMove method.

type ClientBeginBMSTriggerDataMoveOptions added in v0.2.0

type ClientBeginBMSTriggerDataMoveOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

ClientBeginBMSTriggerDataMoveOptions contains the optional parameters for the Client.BeginBMSTriggerDataMove method.

type ClientBeginMoveRecoveryPointOptions added in v0.2.0

type ClientBeginMoveRecoveryPointOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

ClientBeginMoveRecoveryPointOptions contains the optional parameters for the Client.BeginMoveRecoveryPoint method.

type ClientDiscoveryDisplay

type ClientDiscoveryDisplay struct {
	// Description of the operation having details of what operation is about.
	Description *string `json:"description,omitempty"`

	// Operations Name itself.
	Operation *string `json:"operation,omitempty"`

	// Name of the provider for display purposes
	Provider *string `json:"provider,omitempty"`

	// ResourceType for which this Operation can be performed.
	Resource *string `json:"resource,omitempty"`
}

ClientDiscoveryDisplay - Localized display information of an operation.

type ClientDiscoveryForLogSpecification

type ClientDiscoveryForLogSpecification struct {
	// blob duration of shoebox log specification
	BlobDuration *string `json:"blobDuration,omitempty"`

	// Localized display name
	DisplayName *string `json:"displayName,omitempty"`

	// Name for shoebox log specification.
	Name *string `json:"name,omitempty"`
}

ClientDiscoveryForLogSpecification - Class to represent shoebox log specification in json client discovery.

type ClientDiscoveryForProperties

type ClientDiscoveryForProperties struct {
	// Operation properties.
	ServiceSpecification *ClientDiscoveryForServiceSpecification `json:"serviceSpecification,omitempty"`
}

ClientDiscoveryForProperties - Class to represent shoebox properties in json client discovery.

type ClientDiscoveryForServiceSpecification

type ClientDiscoveryForServiceSpecification struct {
	// List of log specifications of this operation.
	LogSpecifications []*ClientDiscoveryForLogSpecification `json:"logSpecifications,omitempty"`
}

ClientDiscoveryForServiceSpecification - Class to represent shoebox service specification in json client discovery.

type ClientDiscoveryResponse

type ClientDiscoveryResponse struct {
	// Link to the next chunk of Response.
	NextLink *string `json:"nextLink,omitempty"`

	// List of available operations.
	Value []*ClientDiscoveryValueForSingleAPI `json:"value,omitempty"`
}

ClientDiscoveryResponse - Operations List response which contains list of available APIs.

type ClientDiscoveryValueForSingleAPI

type ClientDiscoveryValueForSingleAPI struct {
	// Contains the localized display information for this particular operation
	Display *ClientDiscoveryDisplay `json:"display,omitempty"`

	// Name of the Operation.
	Name *string `json:"name,omitempty"`

	// The intended executor of the operation;governs the display of the operation in the RBAC UX and the audit logs UX
	Origin *string `json:"origin,omitempty"`

	// ShoeBox properties for the given operation.
	Properties *ClientDiscoveryForProperties `json:"properties,omitempty"`
}

ClientDiscoveryValueForSingleAPI - Available operation details.

type ClientGetOperationStatusOptions added in v0.2.0

type ClientGetOperationStatusOptions struct {
}

ClientGetOperationStatusOptions contains the optional parameters for the Client.GetOperationStatus method.

type ClientGetOperationStatusResponse added in v0.2.0

type ClientGetOperationStatusResponse struct {
	OperationStatus
}

ClientGetOperationStatusResponse contains the response from method Client.GetOperationStatus.

type ClientMoveRecoveryPointResponse added in v0.2.0

type ClientMoveRecoveryPointResponse struct {
}

ClientMoveRecoveryPointResponse contains the response from method Client.MoveRecoveryPoint.

type ClientScriptForConnect

type ClientScriptForConnect struct {
	// OS type - Windows, Linux etc. for which this file / folder restore client script works.
	OSType *string `json:"osType,omitempty"`

	// File content of the client script for file / folder restore.
	ScriptContent *string `json:"scriptContent,omitempty"`

	// File extension of the client script for file / folder restore - .ps1 , .sh , etc.
	ScriptExtension *string `json:"scriptExtension,omitempty"`

	// Mandatory suffix that should be added to the name of script that is given for download to user. If its null or empty then
	// , ignore it.
	ScriptNameSuffix *string `json:"scriptNameSuffix,omitempty"`

	// URL of Executable from where to source the content. If this is not null then ScriptContent should not be used
	URL *string `json:"url,omitempty"`
}

ClientScriptForConnect - Client script details for file / folder restore.

type CloudError

type CloudError struct {
	// The error object.
	Error *CloudErrorBody `json:"error,omitempty"`
}

CloudError - An error response from the Container Instance service.

type CloudErrorBody

type CloudErrorBody struct {
	// READ-ONLY; The error additional info.
	AdditionalInfo []*ErrorAdditionalInfo `json:"additionalInfo,omitempty" azure:"ro"`

	// READ-ONLY; An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
	Code *string `json:"code,omitempty" azure:"ro"`

	// READ-ONLY; A list of additional details about the error.
	Details []*CloudErrorBody `json:"details,omitempty" azure:"ro"`

	// READ-ONLY; A message describing the error, intended to be suitable for display in a user interface.
	Message *string `json:"message,omitempty" azure:"ro"`

	// READ-ONLY; The target of the particular error. For example, the name of the property in error.
	Target *string `json:"target,omitempty" azure:"ro"`
}

CloudErrorBody - An error response from the Container Instance service.

type ContainerIdentityInfo

type ContainerIdentityInfo struct {
	// Protection container identity - AAD Tenant
	AADTenantID *string `json:"aadTenantId,omitempty"`

	// Protection container identity - Audience
	Audience *string `json:"audience,omitempty"`

	// Protection container identity - AAD Service Principal
	ServicePrincipalClientID *string `json:"servicePrincipalClientId,omitempty"`

	// Unique name of the container
	UniqueName *string `json:"uniqueName,omitempty"`
}

ContainerIdentityInfo - Container identity information

type ContainerType

type ContainerType string

ContainerType - Type of container for filter

const (
	ContainerTypeAzureBackupServerContainer             ContainerType = "AzureBackupServerContainer"
	ContainerTypeAzureSQLContainer                      ContainerType = "AzureSqlContainer"
	ContainerTypeAzureWorkloadContainer                 ContainerType = "AzureWorkloadContainer"
	ContainerTypeCluster                                ContainerType = "Cluster"
	ContainerTypeDPMContainer                           ContainerType = "DPMContainer"
	ContainerTypeGenericContainer                       ContainerType = "GenericContainer"
	ContainerTypeIaasVMContainer                        ContainerType = "IaasVMContainer"
	ContainerTypeIaasVMServiceContainer                 ContainerType = "IaasVMServiceContainer"
	ContainerTypeInvalid                                ContainerType = "Invalid"
	ContainerTypeMABContainer                           ContainerType = "MABContainer"
	ContainerTypeMicrosoftClassicComputeVirtualMachines ContainerType = "Microsoft.ClassicCompute/virtualMachines"
	ContainerTypeMicrosoftComputeVirtualMachines        ContainerType = "Microsoft.Compute/virtualMachines"
	ContainerTypeSQLAGWorkLoadContainer                 ContainerType = "SQLAGWorkLoadContainer"
	ContainerTypeStorageContainer                       ContainerType = "StorageContainer"
	ContainerTypeUnknown                                ContainerType = "Unknown"
	ContainerTypeVCenter                                ContainerType = "VCenter"
	ContainerTypeVMAppContainer                         ContainerType = "VMAppContainer"
	ContainerTypeWindows                                ContainerType = "Windows"
)

func PossibleContainerTypeValues

func PossibleContainerTypeValues() []ContainerType

PossibleContainerTypeValues returns the possible values for the ContainerType const type.

type CopyOptions

type CopyOptions string

CopyOptions - Options to resolve copy conflicts.

const (
	CopyOptionsCreateCopy     CopyOptions = "CreateCopy"
	CopyOptionsFailOnConflict CopyOptions = "FailOnConflict"
	CopyOptionsInvalid        CopyOptions = "Invalid"
	CopyOptionsOverwrite      CopyOptions = "Overwrite"
	CopyOptionsSkip           CopyOptions = "Skip"
)

func PossibleCopyOptionsValues

func PossibleCopyOptionsValues() []CopyOptions

PossibleCopyOptionsValues returns the possible values for the CopyOptions const type.

type CreateMode

type CreateMode string

CreateMode - Create mode to indicate recovery of existing soft deleted data source or creation of new data source.

const (
	CreateModeDefault CreateMode = "Default"
	CreateModeInvalid CreateMode = "Invalid"
	CreateModeRecover CreateMode = "Recover"
)

func PossibleCreateModeValues

func PossibleCreateModeValues() []CreateMode

PossibleCreateModeValues returns the possible values for the CreateMode const type.

type DPMContainerExtendedInfo

type DPMContainerExtendedInfo struct {
	// Last refresh time of the DPMContainer.
	LastRefreshedAt *time.Time `json:"lastRefreshedAt,omitempty"`
}

DPMContainerExtendedInfo - Additional information of the DPMContainer.

func (DPMContainerExtendedInfo) MarshalJSON

func (d DPMContainerExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DPMContainerExtendedInfo.

func (*DPMContainerExtendedInfo) UnmarshalJSON

func (d *DPMContainerExtendedInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DPMContainerExtendedInfo.

type DPMProtectedItem

type DPMProtectedItem struct {
	// REQUIRED; backup item type.
	ProtectedItemType *string `json:"protectedItemType,omitempty"`

	// Backup Management server protecting this backup item
	BackupEngineName *string `json:"backupEngineName,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of the backup set the backup item belongs to
	BackupSetName *string `json:"backupSetName,omitempty"`

	// Unique name of container
	ContainerName *string `json:"containerName,omitempty"`

	// Create mode to indicate recovery of existing soft deleted data source or creation of new data source.
	CreateMode *CreateMode `json:"createMode,omitempty"`

	// Time for deferred deletion in UTC
	DeferredDeleteTimeInUTC *time.Time `json:"deferredDeleteTimeInUTC,omitempty"`

	// Time remaining before the DS marked for deferred delete is permanently deleted
	DeferredDeleteTimeRemaining *string `json:"deferredDeleteTimeRemaining,omitempty"`

	// Extended info of the backup item.
	ExtendedInfo *DPMProtectedItemExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the managed item
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Flag to identify whether datasource is protected in archive
	IsArchiveEnabled *bool `json:"isArchiveEnabled,omitempty"`

	// Flag to identify whether the deferred deleted DS is to be purged soon
	IsDeferredDeleteScheduleUpcoming *bool `json:"isDeferredDeleteScheduleUpcoming,omitempty"`

	// Flag to identify that deferred deleted DS is to be moved into Pause state
	IsRehydrate *bool `json:"isRehydrate,omitempty"`

	// Flag to identify whether the DS is scheduled for deferred delete
	IsScheduledForDeferredDelete *bool `json:"isScheduledForDeferredDelete,omitempty"`

	// Timestamp when the last (latest) backup copy was created for this backup item.
	LastRecoveryPoint *time.Time `json:"lastRecoveryPoint,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Name of the policy used for protection
	PolicyName *string `json:"policyName,omitempty"`

	// Protection state of the backup engine
	ProtectionState *ProtectedItemState `json:"protectionState,omitempty"`

	// ResourceGuardOperationRequests on which LAC check will be performed
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Type of workload this item represents.
	WorkloadType *DataSourceType `json:"workloadType,omitempty"`
}

DPMProtectedItem - Additional information on Backup engine specific backup item.

func (*DPMProtectedItem) GetProtectedItem added in v0.2.0

func (d *DPMProtectedItem) GetProtectedItem() *ProtectedItem

GetProtectedItem implements the ProtectedItemClassification interface for type DPMProtectedItem.

func (DPMProtectedItem) MarshalJSON

func (d DPMProtectedItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DPMProtectedItem.

func (*DPMProtectedItem) UnmarshalJSON

func (d *DPMProtectedItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DPMProtectedItem.

type DPMProtectedItemExtendedInfo

type DPMProtectedItemExtendedInfo struct {
	// Used Disk storage in bytes.
	DiskStorageUsedInBytes *string `json:"diskStorageUsedInBytes,omitempty"`

	// To check if backup item is collocated.
	IsCollocated *bool `json:"isCollocated,omitempty"`

	// To check if backup item is cloud protected.
	IsPresentOnCloud *bool `json:"isPresentOnCloud,omitempty"`

	// Last backup status information on backup item.
	LastBackupStatus *string `json:"lastBackupStatus,omitempty"`

	// Last refresh time on backup item.
	LastRefreshedAt *time.Time `json:"lastRefreshedAt,omitempty"`

	// Oldest cloud recovery point time.
	OldestRecoveryPoint *time.Time `json:"oldestRecoveryPoint,omitempty"`

	// latest disk recovery point time.
	OnPremiseLatestRecoveryPoint *time.Time `json:"onPremiseLatestRecoveryPoint,omitempty"`

	// Oldest disk recovery point time.
	OnPremiseOldestRecoveryPoint *time.Time `json:"onPremiseOldestRecoveryPoint,omitempty"`

	// disk recovery point count.
	OnPremiseRecoveryPointCount *int32 `json:"onPremiseRecoveryPointCount,omitempty"`

	// Attribute to provide information on various DBs.
	ProtectableObjectLoadPath map[string]*string `json:"protectableObjectLoadPath,omitempty"`

	// To check if backup item is disk protected.
	Protected *bool `json:"protected,omitempty"`

	// Protection group name of the backup item.
	ProtectionGroupName *string `json:"protectionGroupName,omitempty"`

	// cloud recovery point count.
	RecoveryPointCount *int32 `json:"recoveryPointCount,omitempty"`

	// total Disk storage in bytes.
	TotalDiskStorageSizeInBytes *string `json:"totalDiskStorageSizeInBytes,omitempty"`
}

DPMProtectedItemExtendedInfo - Additional information of DPM Protected item.

func (DPMProtectedItemExtendedInfo) MarshalJSON

func (d DPMProtectedItemExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DPMProtectedItemExtendedInfo.

func (*DPMProtectedItemExtendedInfo) UnmarshalJSON

func (d *DPMProtectedItemExtendedInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DPMProtectedItemExtendedInfo.

type DailyRetentionFormat

type DailyRetentionFormat struct {
	// List of days of the month.
	DaysOfTheMonth []*Day `json:"daysOfTheMonth,omitempty"`
}

DailyRetentionFormat - Daily retention format.

func (DailyRetentionFormat) MarshalJSON

func (d DailyRetentionFormat) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DailyRetentionFormat.

type DailyRetentionSchedule

type DailyRetentionSchedule struct {
	// Retention duration of retention Policy.
	RetentionDuration *RetentionDuration `json:"retentionDuration,omitempty"`

	// Retention times of retention policy.
	RetentionTimes []*time.Time `json:"retentionTimes,omitempty"`
}

DailyRetentionSchedule - Daily retention schedule.

func (DailyRetentionSchedule) MarshalJSON

func (d DailyRetentionSchedule) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DailyRetentionSchedule.

type DailySchedule added in v0.3.0

type DailySchedule struct {
	// List of times of day this schedule has to be run.
	ScheduleRunTimes []*time.Time `json:"scheduleRunTimes,omitempty"`
}

func (DailySchedule) MarshalJSON added in v0.3.0

func (d DailySchedule) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DailySchedule.

type DataMoveLevel

type DataMoveLevel string

DataMoveLevel - DataMove Level

const (
	DataMoveLevelContainer DataMoveLevel = "Container"
	DataMoveLevelInvalid   DataMoveLevel = "Invalid"
	DataMoveLevelVault     DataMoveLevel = "Vault"
)

func PossibleDataMoveLevelValues

func PossibleDataMoveLevelValues() []DataMoveLevel

PossibleDataMoveLevelValues returns the possible values for the DataMoveLevel const type.

type DataSourceType

type DataSourceType string

DataSourceType - Type of workload this item represents.

const (
	DataSourceTypeAzureFileShare    DataSourceType = "AzureFileShare"
	DataSourceTypeAzureSQLDb        DataSourceType = "AzureSqlDb"
	DataSourceTypeClient            DataSourceType = "Client"
	DataSourceTypeExchange          DataSourceType = "Exchange"
	DataSourceTypeFileFolder        DataSourceType = "FileFolder"
	DataSourceTypeGenericDataSource DataSourceType = "GenericDataSource"
	DataSourceTypeInvalid           DataSourceType = "Invalid"
	DataSourceTypeSAPAseDatabase    DataSourceType = "SAPAseDatabase"
	DataSourceTypeSAPHanaDatabase   DataSourceType = "SAPHanaDatabase"
	DataSourceTypeSQLDB             DataSourceType = "SQLDB"
	DataSourceTypeSQLDataBase       DataSourceType = "SQLDataBase"
	DataSourceTypeSharepoint        DataSourceType = "Sharepoint"
	DataSourceTypeSystemState       DataSourceType = "SystemState"
	DataSourceTypeVM                DataSourceType = "VM"
	DataSourceTypeVMwareVM          DataSourceType = "VMwareVM"
)

func PossibleDataSourceTypeValues

func PossibleDataSourceTypeValues() []DataSourceType

PossibleDataSourceTypeValues returns the possible values for the DataSourceType const type.

type Day

type Day struct {
	// Date of the month
	Date *int32 `json:"date,omitempty"`

	// Whether Date is last date of month
	IsLast *bool `json:"isLast,omitempty"`
}

Day of the week.

type DayOfWeek

type DayOfWeek string
const (
	DayOfWeekSunday    DayOfWeek = "Sunday"
	DayOfWeekMonday    DayOfWeek = "Monday"
	DayOfWeekTuesday   DayOfWeek = "Tuesday"
	DayOfWeekWednesday DayOfWeek = "Wednesday"
	DayOfWeekThursday  DayOfWeek = "Thursday"
	DayOfWeekFriday    DayOfWeek = "Friday"
	DayOfWeekSaturday  DayOfWeek = "Saturday"
)

func PossibleDayOfWeekValues

func PossibleDayOfWeekValues() []DayOfWeek

PossibleDayOfWeekValues returns the possible values for the DayOfWeek const type.

type DedupState added in v0.2.0

type DedupState string

DedupState - Vault Dedup state

const (
	DedupStateDisabled DedupState = "Disabled"
	DedupStateEnabled  DedupState = "Enabled"
	DedupStateInvalid  DedupState = "Invalid"
)

func PossibleDedupStateValues added in v0.2.0

func PossibleDedupStateValues() []DedupState

PossibleDedupStateValues returns the possible values for the DedupState const type.

type DiskExclusionProperties

type DiskExclusionProperties struct {
	// List of Disks' Logical Unit Numbers (LUN) to be used for VM Protection.
	DiskLunList []*int32 `json:"diskLunList,omitempty"`

	// Flag to indicate whether DiskLunList is to be included/ excluded from backup.
	IsInclusionList *bool `json:"isInclusionList,omitempty"`
}

func (DiskExclusionProperties) MarshalJSON

func (d DiskExclusionProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DiskExclusionProperties.

type DiskInformation

type DiskInformation struct {
	Lun  *int32  `json:"lun,omitempty"`
	Name *string `json:"name,omitempty"`
}

DiskInformation - Disk information

type DistributedNodesInfo

type DistributedNodesInfo struct {
	// Error Details if the Status is non-success.
	ErrorDetail *ErrorDetail `json:"errorDetail,omitempty"`

	// Name of the node under a distributed container.
	NodeName *string `json:"nodeName,omitempty"`

	// Status of this Node. Failed | Succeeded
	Status *string `json:"status,omitempty"`
}

DistributedNodesInfo - This is used to represent the various nodes of the distributed container.

type DpmBackupEngine

type DpmBackupEngine struct {
	// REQUIRED; Type of the backup engine.
	BackupEngineType *BackupEngineType `json:"backupEngineType,omitempty"`

	// Backup agent version
	AzureBackupAgentVersion *string `json:"azureBackupAgentVersion,omitempty"`

	// ID of the backup engine.
	BackupEngineID *string `json:"backupEngineId,omitempty"`

	// Status of the backup engine with the Recovery Services Vault. = {Active/Deleting/DeleteFailed}
	BackupEngineState *string `json:"backupEngineState,omitempty"`

	// Type of backup management for the backup engine.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Flag indicating if the backup engine be registered, once already registered.
	CanReRegister *bool `json:"canReRegister,omitempty"`

	// Backup engine version
	DpmVersion *string `json:"dpmVersion,omitempty"`

	// Extended info of the backupengine
	ExtendedInfo *BackupEngineExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the backup engine.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Backup status of the backup engine.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// To check if backup agent upgrade available
	IsAzureBackupAgentUpgradeAvailable *bool `json:"isAzureBackupAgentUpgradeAvailable,omitempty"`

	// To check if backup engine upgrade available
	IsDpmUpgradeAvailable *bool `json:"isDpmUpgradeAvailable,omitempty"`

	// Registration status of the backup engine with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`
}

DpmBackupEngine - Data Protection Manager (DPM) specific backup engine.

func (*DpmBackupEngine) GetBackupEngineBase added in v0.2.0

func (d *DpmBackupEngine) GetBackupEngineBase() *BackupEngineBase

GetBackupEngineBase implements the BackupEngineBaseClassification interface for type DpmBackupEngine.

func (DpmBackupEngine) MarshalJSON

func (d DpmBackupEngine) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DpmBackupEngine.

func (*DpmBackupEngine) UnmarshalJSON added in v0.2.0

func (d *DpmBackupEngine) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DpmBackupEngine.

type DpmContainer

type DpmContainer struct {
	// REQUIRED; Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows
	// machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer.
	// 6. Azure workload Backup is VMAppContainer
	ContainerType *ContainerType `json:"containerType,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Specifies whether the container is re-registrable.
	CanReRegister *bool `json:"canReRegister,omitempty"`

	// ID of container.
	ContainerID *string `json:"containerId,omitempty"`

	// Backup engine Agent version
	DpmAgentVersion *string `json:"dpmAgentVersion,omitempty"`

	// List of BackupEngines protecting the container
	DpmServers []*string `json:"dpmServers,omitempty"`

	// Extended Info of the container.
	ExtendedInfo *DPMContainerExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// Type of the protectable object associated with this container
	ProtectableObjectType *string `json:"protectableObjectType,omitempty"`

	// Number of protected items in the BackupEngine
	ProtectedItemCount *int64 `json:"protectedItemCount,omitempty"`

	// Protection status of the container.
	ProtectionStatus *string `json:"protectionStatus,omitempty"`

	// Status of registration of the container with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`

	// To check if upgrade available
	UpgradeAvailable *bool `json:"upgradeAvailable,omitempty"`
}

DpmContainer - DPM workload-specific protection container.

func (*DpmContainer) GetDpmContainer

func (d *DpmContainer) GetDpmContainer() *DpmContainer

GetDpmContainer implements the DpmContainerClassification interface for type DpmContainer.

func (*DpmContainer) GetProtectionContainer added in v0.2.0

func (d *DpmContainer) GetProtectionContainer() *ProtectionContainer

GetProtectionContainer implements the ProtectionContainerClassification interface for type DpmContainer.

func (DpmContainer) MarshalJSON

func (d DpmContainer) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DpmContainer.

func (*DpmContainer) UnmarshalJSON

func (d *DpmContainer) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DpmContainer.

type DpmContainerClassification

type DpmContainerClassification interface {
	ProtectionContainerClassification
	// GetDpmContainer returns the DpmContainer content of the underlying type.
	GetDpmContainer() *DpmContainer
}

DpmContainerClassification provides polymorphic access to related types. Call the interface's GetDpmContainer() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureBackupServerContainer, *DpmContainer

type DpmErrorInfo

type DpmErrorInfo struct {
	// Localized error string.
	ErrorString *string `json:"errorString,omitempty"`

	// List of localized recommendations for above error code.
	Recommendations []*string `json:"recommendations,omitempty"`
}

DpmErrorInfo - DPM workload-specific error information.

func (DpmErrorInfo) MarshalJSON

func (d DpmErrorInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DpmErrorInfo.

type DpmJob

type DpmJob struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	JobType *string `json:"jobType,omitempty"`

	// The state/actions applicable on this job like cancel/retry.
	ActionsInfo []*JobSupportedAction `json:"actionsInfo,omitempty"`

	// ActivityId of job.
	ActivityID *string `json:"activityId,omitempty"`

	// Backup management type to execute the current job.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of cluster/server protecting current backup item, if any.
	ContainerName *string `json:"containerName,omitempty"`

	// Type of container.
	ContainerType *string `json:"containerType,omitempty"`

	// DPM server name managing the backup item or backup job.
	DpmServerName *string `json:"dpmServerName,omitempty"`

	// Time elapsed for job.
	Duration *string `json:"duration,omitempty"`

	// The end time.
	EndTime *time.Time `json:"endTime,omitempty"`

	// Friendly name of the entity on which the current job is executing.
	EntityFriendlyName *string `json:"entityFriendlyName,omitempty"`

	// The errors.
	ErrorDetails []*DpmErrorInfo `json:"errorDetails,omitempty"`

	// Additional information for this job.
	ExtendedInfo *DpmJobExtendedInfo `json:"extendedInfo,omitempty"`

	// The operation name.
	Operation *string `json:"operation,omitempty"`

	// The start time.
	StartTime *time.Time `json:"startTime,omitempty"`

	// Job status.
	Status *string `json:"status,omitempty"`

	// Type of backup item.
	WorkloadType *string `json:"workloadType,omitempty"`
}

DpmJob - DPM workload-specific job object.

func (*DpmJob) GetJob added in v0.2.0

func (d *DpmJob) GetJob() *Job

GetJob implements the JobClassification interface for type DpmJob.

func (DpmJob) MarshalJSON

func (d DpmJob) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DpmJob.

func (*DpmJob) UnmarshalJSON

func (d *DpmJob) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DpmJob.

type DpmJobExtendedInfo

type DpmJobExtendedInfo struct {
	// Non localized error message on job execution.
	DynamicErrorMessage *string `json:"dynamicErrorMessage,omitempty"`

	// The job properties.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// List of tasks associated with this job.
	TasksList []*DpmJobTaskDetails `json:"tasksList,omitempty"`
}

DpmJobExtendedInfo - Additional information on the DPM workload-specific job.

func (DpmJobExtendedInfo) MarshalJSON

func (d DpmJobExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DpmJobExtendedInfo.

type DpmJobTaskDetails

type DpmJobTaskDetails struct {
	// Time elapsed for task.
	Duration *string `json:"duration,omitempty"`

	// The end time.
	EndTime *time.Time `json:"endTime,omitempty"`

	// The start time.
	StartTime *time.Time `json:"startTime,omitempty"`

	// The status.
	Status *string `json:"status,omitempty"`

	// The task display name.
	TaskID *string `json:"taskId,omitempty"`
}

DpmJobTaskDetails - DPM workload-specific job task details.

func (DpmJobTaskDetails) MarshalJSON

func (d DpmJobTaskDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DpmJobTaskDetails.

func (*DpmJobTaskDetails) UnmarshalJSON

func (d *DpmJobTaskDetails) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DpmJobTaskDetails.

type EncryptionAtRestType

type EncryptionAtRestType string

EncryptionAtRestType - Encryption At Rest Type

const (
	EncryptionAtRestTypeCustomerManaged  EncryptionAtRestType = "CustomerManaged"
	EncryptionAtRestTypeInvalid          EncryptionAtRestType = "Invalid"
	EncryptionAtRestTypeMicrosoftManaged EncryptionAtRestType = "MicrosoftManaged"
)

func PossibleEncryptionAtRestTypeValues

func PossibleEncryptionAtRestTypeValues() []EncryptionAtRestType

PossibleEncryptionAtRestTypeValues returns the possible values for the EncryptionAtRestType const type.

type EncryptionDetails

type EncryptionDetails struct {
	// Identifies whether this backup copy represents an encrypted VM at the time of backup.
	EncryptionEnabled *bool `json:"encryptionEnabled,omitempty"`

	// Key Url.
	KekURL *string `json:"kekUrl,omitempty"`

	// ID of Key Vault where KEK is stored.
	KekVaultID *string `json:"kekVaultId,omitempty"`

	// Secret Url.
	SecretKeyURL *string `json:"secretKeyUrl,omitempty"`

	// ID of Key Vault where Secret is stored.
	SecretKeyVaultID *string `json:"secretKeyVaultId,omitempty"`
}

EncryptionDetails - Details needed if the VM was encrypted at the time of backup.

type EnhancedSecurityState

type EnhancedSecurityState string

EnhancedSecurityState - Enabled or Disabled.

const (
	EnhancedSecurityStateDisabled EnhancedSecurityState = "Disabled"
	EnhancedSecurityStateEnabled  EnhancedSecurityState = "Enabled"
	EnhancedSecurityStateInvalid  EnhancedSecurityState = "Invalid"
)

func PossibleEnhancedSecurityStateValues

func PossibleEnhancedSecurityStateValues() []EnhancedSecurityState

PossibleEnhancedSecurityStateValues returns the possible values for the EnhancedSecurityState const type.

type ErrorAdditionalInfo

type ErrorAdditionalInfo struct {
	// READ-ONLY; The additional info.
	Info interface{} `json:"info,omitempty" azure:"ro"`

	// READ-ONLY; The additional info type.
	Type *string `json:"type,omitempty" azure:"ro"`
}

ErrorAdditionalInfo - The resource management error additional info.

type ErrorDetail

type ErrorDetail struct {
	// READ-ONLY; Error code.
	Code *string `json:"code,omitempty" azure:"ro"`

	// READ-ONLY; Error Message related to the Code.
	Message *string `json:"message,omitempty" azure:"ro"`

	// READ-ONLY; List of recommendation strings.
	Recommendations []*string `json:"recommendations,omitempty" azure:"ro"`
}

ErrorDetail - Error Detail class which encapsulates Code, Message and Recommendations.

func (ErrorDetail) MarshalJSON

func (e ErrorDetail) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ErrorDetail.

type ExportJobsOperationResultInfo

type ExportJobsOperationResultInfo struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// SAS key to access the blob. It expires in 15 mins.
	BlobSasKey *string `json:"blobSasKey,omitempty"`

	// URL of the blob into which the serialized string of list of jobs is exported.
	BlobURL *string `json:"blobUrl,omitempty"`

	// SAS key to access the blob. It expires in 15 mins.
	ExcelFileBlobSasKey *string `json:"excelFileBlobSasKey,omitempty"`

	// URL of the blob into which the ExcelFile is uploaded.
	ExcelFileBlobURL *string `json:"excelFileBlobUrl,omitempty"`
}

ExportJobsOperationResultInfo - This class is used to send blob details after exporting jobs.

func (*ExportJobsOperationResultInfo) GetOperationResultInfoBase added in v0.2.0

func (e *ExportJobsOperationResultInfo) GetOperationResultInfoBase() *OperationResultInfoBase

GetOperationResultInfoBase implements the OperationResultInfoBaseClassification interface for type ExportJobsOperationResultInfo.

func (*ExportJobsOperationResultInfo) UnmarshalJSON

func (e *ExportJobsOperationResultInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ExportJobsOperationResultInfo.

type ExportJobsOperationResultsClient

type ExportJobsOperationResultsClient struct {
	// contains filtered or unexported fields
}

ExportJobsOperationResultsClient contains the methods for the ExportJobsOperationResults group. Don't use this type directly, use NewExportJobsOperationResultsClient() instead.

func NewExportJobsOperationResultsClient

func NewExportJobsOperationResultsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ExportJobsOperationResultsClient, error)

NewExportJobsOperationResultsClient creates a new instance of ExportJobsOperationResultsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ExportJobsOperationResultsClient) Get

Get - Gets the operation result of operation triggered by Export Jobs API. If the operation is successful, then it also contains URL of a Blob and a SAS key to access the same. The blob contains exported jobs in JSON serialized format. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. operationID - OperationID which represents the export job. options - ExportJobsOperationResultsClientGetOptions contains the optional parameters for the ExportJobsOperationResultsClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/ExportJobsOperationResult.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewExportJobsOperationResultsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type ExportJobsOperationResultsClientGetOptions added in v0.2.0

type ExportJobsOperationResultsClientGetOptions struct {
}

ExportJobsOperationResultsClientGetOptions contains the optional parameters for the ExportJobsOperationResultsClient.Get method.

type ExportJobsOperationResultsClientGetResponse added in v0.2.0

type ExportJobsOperationResultsClientGetResponse struct {
	OperationResultInfoBaseResource
}

ExportJobsOperationResultsClientGetResponse contains the response from method ExportJobsOperationResultsClient.Get.

type ExtendedProperties

type ExtendedProperties struct {
	// Extended Properties for Disk Exclusion.
	DiskExclusionProperties *DiskExclusionProperties `json:"diskExclusionProperties,omitempty"`

	// Linux VM name
	LinuxVMApplicationName *string `json:"linuxVmApplicationName,omitempty"`
}

ExtendedProperties - Extended Properties for Azure IaasVM Backup.

type FabricName

type FabricName string

FabricName - Specifies the fabric name - Azure or AD

const (
	FabricNameAzure   FabricName = "Azure"
	FabricNameInvalid FabricName = "Invalid"
)

func PossibleFabricNameValues

func PossibleFabricNameValues() []FabricName

PossibleFabricNameValues returns the possible values for the FabricName const type.

type FeatureSupportClient

type FeatureSupportClient struct {
	// contains filtered or unexported fields
}

FeatureSupportClient contains the methods for the FeatureSupport group. Don't use this type directly, use NewFeatureSupportClient() instead.

func NewFeatureSupportClient

func NewFeatureSupportClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*FeatureSupportClient, error)

NewFeatureSupportClient creates a new instance of FeatureSupportClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*FeatureSupportClient) Validate

Validate - It will validate if given feature with resource properties is supported in service If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 azureRegion - Azure region to hit Api parameters - Feature support request object options - FeatureSupportClientValidateOptions contains the optional parameters for the FeatureSupportClient.Validate method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/BackupFeature_Validate.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewFeatureSupportClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Validate(ctx,
		"southeastasia",
		&armrecoveryservicesbackup.AzureVMResourceFeatureSupportRequest{
			FeatureType: to.Ptr("AzureVMResourceBackup"),
			VMSize:      to.Ptr("Basic_A0"),
			VMSKU:       to.Ptr("Premium"),
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type FeatureSupportClientValidateOptions added in v0.2.0

type FeatureSupportClientValidateOptions struct {
}

FeatureSupportClientValidateOptions contains the optional parameters for the FeatureSupportClient.Validate method.

type FeatureSupportClientValidateResponse added in v0.2.0

type FeatureSupportClientValidateResponse struct {
	AzureVMResourceFeatureSupportResponse
}

FeatureSupportClientValidateResponse contains the response from method FeatureSupportClient.Validate.

type FeatureSupportRequest

type FeatureSupportRequest struct {
	// REQUIRED; backup support feature type.
	FeatureType *string `json:"featureType,omitempty"`
}

FeatureSupportRequest - Base class for feature request

func (*FeatureSupportRequest) GetFeatureSupportRequest

func (f *FeatureSupportRequest) GetFeatureSupportRequest() *FeatureSupportRequest

GetFeatureSupportRequest implements the FeatureSupportRequestClassification interface for type FeatureSupportRequest.

type FeatureSupportRequestClassification

type FeatureSupportRequestClassification interface {
	// GetFeatureSupportRequest returns the FeatureSupportRequest content of the underlying type.
	GetFeatureSupportRequest() *FeatureSupportRequest
}

FeatureSupportRequestClassification provides polymorphic access to related types. Call the interface's GetFeatureSupportRequest() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureBackupGoalFeatureSupportRequest, *AzureVMResourceFeatureSupportRequest, *FeatureSupportRequest

type GenericContainer

type GenericContainer struct {
	// REQUIRED; Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows
	// machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer.
	// 6. Azure workload Backup is VMAppContainer
	ContainerType *ContainerType `json:"containerType,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Extended information (not returned in List container API calls)
	ExtendedInformation *GenericContainerExtendedInfo `json:"extendedInformation,omitempty"`

	// Name of the container's fabric
	FabricName *string `json:"fabricName,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// Type of the protectable object associated with this container
	ProtectableObjectType *string `json:"protectableObjectType,omitempty"`

	// Status of registration of the container with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`
}

GenericContainer - Base class for generic container of backup items

func (*GenericContainer) GetProtectionContainer added in v0.2.0

func (g *GenericContainer) GetProtectionContainer() *ProtectionContainer

GetProtectionContainer implements the ProtectionContainerClassification interface for type GenericContainer.

func (GenericContainer) MarshalJSON

func (g GenericContainer) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type GenericContainer.

func (*GenericContainer) UnmarshalJSON

func (g *GenericContainer) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type GenericContainer.

type GenericContainerExtendedInfo

type GenericContainerExtendedInfo struct {
	// Container identity information
	ContainerIdentityInfo *ContainerIdentityInfo `json:"containerIdentityInfo,omitempty"`

	// Public key of container cert
	RawCertData *string `json:"rawCertData,omitempty"`

	// Azure Backup Service Endpoints for the container
	ServiceEndpoints map[string]*string `json:"serviceEndpoints,omitempty"`
}

GenericContainerExtendedInfo - Container extended information

func (GenericContainerExtendedInfo) MarshalJSON

func (g GenericContainerExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type GenericContainerExtendedInfo.

type GenericProtectedItem

type GenericProtectedItem struct {
	// REQUIRED; backup item type.
	ProtectedItemType *string `json:"protectedItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of the backup set the backup item belongs to
	BackupSetName *string `json:"backupSetName,omitempty"`

	// Unique name of container
	ContainerName *string `json:"containerName,omitempty"`

	// Create mode to indicate recovery of existing soft deleted data source or creation of new data source.
	CreateMode *CreateMode `json:"createMode,omitempty"`

	// Time for deferred deletion in UTC
	DeferredDeleteTimeInUTC *time.Time `json:"deferredDeleteTimeInUTC,omitempty"`

	// Time remaining before the DS marked for deferred delete is permanently deleted
	DeferredDeleteTimeRemaining *string `json:"deferredDeleteTimeRemaining,omitempty"`

	// Name of this backup item's fabric.
	FabricName *string `json:"fabricName,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Flag to identify whether datasource is protected in archive
	IsArchiveEnabled *bool `json:"isArchiveEnabled,omitempty"`

	// Flag to identify whether the deferred deleted DS is to be purged soon
	IsDeferredDeleteScheduleUpcoming *bool `json:"isDeferredDeleteScheduleUpcoming,omitempty"`

	// Flag to identify that deferred deleted DS is to be moved into Pause state
	IsRehydrate *bool `json:"isRehydrate,omitempty"`

	// Flag to identify whether the DS is scheduled for deferred delete
	IsScheduledForDeferredDelete *bool `json:"isScheduledForDeferredDelete,omitempty"`

	// Timestamp when the last (latest) backup copy was created for this backup item.
	LastRecoveryPoint *time.Time `json:"lastRecoveryPoint,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Name of the policy used for protection
	PolicyName *string `json:"policyName,omitempty"`

	// Indicates consistency of policy object and policy applied to this backup item.
	PolicyState *string `json:"policyState,omitempty"`

	// Data Plane Service ID of the protected item.
	ProtectedItemID *int64 `json:"protectedItemId,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionState `json:"protectionState,omitempty"`

	// ResourceGuardOperationRequests on which LAC check will be performed
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// Loosely coupled (type, value) associations (example - parent of a protected item)
	SourceAssociations map[string]*string `json:"sourceAssociations,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Type of workload this item represents.
	WorkloadType *DataSourceType `json:"workloadType,omitempty"`
}

GenericProtectedItem - Base class for backup items.

func (*GenericProtectedItem) GetProtectedItem added in v0.2.0

func (g *GenericProtectedItem) GetProtectedItem() *ProtectedItem

GetProtectedItem implements the ProtectedItemClassification interface for type GenericProtectedItem.

func (GenericProtectedItem) MarshalJSON

func (g GenericProtectedItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type GenericProtectedItem.

func (*GenericProtectedItem) UnmarshalJSON

func (g *GenericProtectedItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type GenericProtectedItem.

type GenericProtectionPolicy

type GenericProtectionPolicy struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Name of this policy's fabric.
	FabricName *string `json:"fabricName,omitempty"`

	// Number of items associated with this policy.
	ProtectedItemsCount *int32 `json:"protectedItemsCount,omitempty"`

	// ResourceGuard Operation Requests
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// List of sub-protection policies which includes schedule and retention
	SubProtectionPolicy []*SubProtectionPolicy `json:"subProtectionPolicy,omitempty"`

	// TimeZone optional input as string. For example: TimeZone = "Pacific Standard Time".
	TimeZone *string `json:"timeZone,omitempty"`
}

GenericProtectionPolicy - Azure VM (Mercury) workload-specific backup policy.

func (*GenericProtectionPolicy) GetProtectionPolicy added in v0.2.0

func (g *GenericProtectionPolicy) GetProtectionPolicy() *ProtectionPolicy

GetProtectionPolicy implements the ProtectionPolicyClassification interface for type GenericProtectionPolicy.

func (GenericProtectionPolicy) MarshalJSON

func (g GenericProtectionPolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type GenericProtectionPolicy.

func (*GenericProtectionPolicy) UnmarshalJSON

func (g *GenericProtectionPolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type GenericProtectionPolicy.

type GenericRecoveryPoint

type GenericRecoveryPoint struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Friendly name of the backup copy.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Additional information associated with this backup copy.
	RecoveryPointAdditionalInfo *string `json:"recoveryPointAdditionalInfo,omitempty"`

	// Time at which this backup copy was created.
	RecoveryPointTime *time.Time `json:"recoveryPointTime,omitempty"`

	// Type of the backup copy.
	RecoveryPointType *string `json:"recoveryPointType,omitempty"`
}

GenericRecoveryPoint - Generic backup copy.

func (*GenericRecoveryPoint) GetRecoveryPoint added in v0.2.0

func (g *GenericRecoveryPoint) GetRecoveryPoint() *RecoveryPoint

GetRecoveryPoint implements the RecoveryPointClassification interface for type GenericRecoveryPoint.

func (GenericRecoveryPoint) MarshalJSON

func (g GenericRecoveryPoint) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type GenericRecoveryPoint.

func (*GenericRecoveryPoint) UnmarshalJSON

func (g *GenericRecoveryPoint) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type GenericRecoveryPoint.

type GetProtectedItemQueryObject

type GetProtectedItemQueryObject struct {
	// Specifies if the additional information should be provided for this item.
	Expand *string `json:"expand,omitempty"`
}

GetProtectedItemQueryObject - Filters to list backup items.

type HTTPStatusCode

type HTTPStatusCode string

HTTPStatusCode - HTTP Status Code of the operation.

const (
	HTTPStatusCodeContinue                     HTTPStatusCode = "Continue"
	HTTPStatusCodeSwitchingProtocols           HTTPStatusCode = "SwitchingProtocols"
	HTTPStatusCodeOK                           HTTPStatusCode = "OK"
	HTTPStatusCodeCreated                      HTTPStatusCode = "Created"
	HTTPStatusCodeAccepted                     HTTPStatusCode = "Accepted"
	HTTPStatusCodeNonAuthoritativeInformation  HTTPStatusCode = "NonAuthoritativeInformation"
	HTTPStatusCodeNoContent                    HTTPStatusCode = "NoContent"
	HTTPStatusCodeResetContent                 HTTPStatusCode = "ResetContent"
	HTTPStatusCodePartialContent               HTTPStatusCode = "PartialContent"
	HTTPStatusCodeMultipleChoices              HTTPStatusCode = "MultipleChoices"
	HTTPStatusCodeAmbiguous                    HTTPStatusCode = "Ambiguous"
	HTTPStatusCodeMovedPermanently             HTTPStatusCode = "MovedPermanently"
	HTTPStatusCodeMoved                        HTTPStatusCode = "Moved"
	HTTPStatusCodeFound                        HTTPStatusCode = "Found"
	HTTPStatusCodeRedirect                     HTTPStatusCode = "Redirect"
	HTTPStatusCodeSeeOther                     HTTPStatusCode = "SeeOther"
	HTTPStatusCodeRedirectMethod               HTTPStatusCode = "RedirectMethod"
	HTTPStatusCodeNotModified                  HTTPStatusCode = "NotModified"
	HTTPStatusCodeUseProxy                     HTTPStatusCode = "UseProxy"
	HTTPStatusCodeUnused                       HTTPStatusCode = "Unused"
	HTTPStatusCodeTemporaryRedirect            HTTPStatusCode = "TemporaryRedirect"
	HTTPStatusCodeRedirectKeepVerb             HTTPStatusCode = "RedirectKeepVerb"
	HTTPStatusCodeBadRequest                   HTTPStatusCode = "BadRequest"
	HTTPStatusCodeUnauthorized                 HTTPStatusCode = "Unauthorized"
	HTTPStatusCodePaymentRequired              HTTPStatusCode = "PaymentRequired"
	HTTPStatusCodeForbidden                    HTTPStatusCode = "Forbidden"
	HTTPStatusCodeNotFound                     HTTPStatusCode = "NotFound"
	HTTPStatusCodeMethodNotAllowed             HTTPStatusCode = "MethodNotAllowed"
	HTTPStatusCodeNotAcceptable                HTTPStatusCode = "NotAcceptable"
	HTTPStatusCodeProxyAuthenticationRequired  HTTPStatusCode = "ProxyAuthenticationRequired"
	HTTPStatusCodeRequestTimeout               HTTPStatusCode = "RequestTimeout"
	HTTPStatusCodeConflict                     HTTPStatusCode = "Conflict"
	HTTPStatusCodeGone                         HTTPStatusCode = "Gone"
	HTTPStatusCodeLengthRequired               HTTPStatusCode = "LengthRequired"
	HTTPStatusCodePreconditionFailed           HTTPStatusCode = "PreconditionFailed"
	HTTPStatusCodeRequestEntityTooLarge        HTTPStatusCode = "RequestEntityTooLarge"
	HTTPStatusCodeRequestURITooLong            HTTPStatusCode = "RequestUriTooLong"
	HTTPStatusCodeUnsupportedMediaType         HTTPStatusCode = "UnsupportedMediaType"
	HTTPStatusCodeRequestedRangeNotSatisfiable HTTPStatusCode = "RequestedRangeNotSatisfiable"
	HTTPStatusCodeExpectationFailed            HTTPStatusCode = "ExpectationFailed"
	HTTPStatusCodeUpgradeRequired              HTTPStatusCode = "UpgradeRequired"
	HTTPStatusCodeInternalServerError          HTTPStatusCode = "InternalServerError"
	HTTPStatusCodeNotImplemented               HTTPStatusCode = "NotImplemented"
	HTTPStatusCodeBadGateway                   HTTPStatusCode = "BadGateway"
	HTTPStatusCodeServiceUnavailable           HTTPStatusCode = "ServiceUnavailable"
	HTTPStatusCodeGatewayTimeout               HTTPStatusCode = "GatewayTimeout"
	HTTPStatusCodeHTTPVersionNotSupported      HTTPStatusCode = "HttpVersionNotSupported"
)

func PossibleHTTPStatusCodeValues

func PossibleHTTPStatusCodeValues() []HTTPStatusCode

PossibleHTTPStatusCodeValues returns the possible values for the HTTPStatusCode const type.

type HealthState

type HealthState string

HealthState - Health State for the backed up item.

const (
	HealthStateActionRequired  HealthState = "ActionRequired"
	HealthStateActionSuggested HealthState = "ActionSuggested"
	HealthStateInvalid         HealthState = "Invalid"
	HealthStatePassed          HealthState = "Passed"
)

func PossibleHealthStateValues

func PossibleHealthStateValues() []HealthState

PossibleHealthStateValues returns the possible values for the HealthState const type.

type HealthStatus

type HealthStatus string

HealthStatus - Health status of protected item.

const (
	HealthStatusActionRequired  HealthStatus = "ActionRequired"
	HealthStatusActionSuggested HealthStatus = "ActionSuggested"
	HealthStatusInvalid         HealthStatus = "Invalid"
	HealthStatusPassed          HealthStatus = "Passed"
)

func PossibleHealthStatusValues

func PossibleHealthStatusValues() []HealthStatus

PossibleHealthStatusValues returns the possible values for the HealthStatus const type.

type HourlySchedule added in v0.2.0

type HourlySchedule struct {
	// Interval at which backup needs to be triggered. For hourly the value can be 4/6/8/12
	Interval *int32 `json:"interval,omitempty"`

	// To specify duration of the backup window
	ScheduleWindowDuration *int32 `json:"scheduleWindowDuration,omitempty"`

	// To specify start time of the backup window
	ScheduleWindowStartTime *time.Time `json:"scheduleWindowStartTime,omitempty"`
}

func (HourlySchedule) MarshalJSON added in v0.2.0

func (h HourlySchedule) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type HourlySchedule.

func (*HourlySchedule) UnmarshalJSON added in v0.2.0

func (h *HourlySchedule) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type HourlySchedule.

type IAASVMPolicyType added in v0.3.0

type IAASVMPolicyType string
const (
	IAASVMPolicyTypeInvalid IAASVMPolicyType = "Invalid"
	IAASVMPolicyTypeV1      IAASVMPolicyType = "V1"
	IAASVMPolicyTypeV2      IAASVMPolicyType = "V2"
)

func PossibleIAASVMPolicyTypeValues added in v0.3.0

func PossibleIAASVMPolicyTypeValues() []IAASVMPolicyType

PossibleIAASVMPolicyTypeValues returns the possible values for the IAASVMPolicyType const type.

type ILRRequest

type ILRRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`
}

ILRRequest - Parameters to Provision ILR API.

func (*ILRRequest) GetILRRequest

func (i *ILRRequest) GetILRRequest() *ILRRequest

GetILRRequest implements the ILRRequestClassification interface for type ILRRequest.

type ILRRequestClassification

type ILRRequestClassification interface {
	// GetILRRequest returns the ILRRequest content of the underlying type.
	GetILRRequest() *ILRRequest
}

ILRRequestClassification provides polymorphic access to related types. Call the interface's GetILRRequest() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureFileShareProvisionILRRequest, *ILRRequest, *IaasVMILRRegistrationRequest

type ILRRequestResource

type ILRRequestResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// ILRRequestResource properties
	Properties ILRRequestClassification `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

ILRRequestResource - Parameters to Provision ILR API.

func (ILRRequestResource) MarshalJSON

func (i ILRRequestResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ILRRequestResource.

func (*ILRRequestResource) UnmarshalJSON

func (i *ILRRequestResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ILRRequestResource.

type IaaSVMContainer

type IaaSVMContainer struct {
	// REQUIRED; Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows
	// machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer.
	// 6. Azure workload Backup is VMAppContainer
	ContainerType *ContainerType `json:"containerType,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// Type of the protectable object associated with this container
	ProtectableObjectType *string `json:"protectableObjectType,omitempty"`

	// Status of registration of the container with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`

	// Resource group name of Recovery Services Vault.
	ResourceGroup *string `json:"resourceGroup,omitempty"`

	// Fully qualified ARM url of the virtual machine represented by this Azure IaaS VM container.
	VirtualMachineID *string `json:"virtualMachineId,omitempty"`

	// Specifies whether the container represents a Classic or an Azure Resource Manager VM.
	VirtualMachineVersion *string `json:"virtualMachineVersion,omitempty"`
}

IaaSVMContainer - IaaS VM workload-specific container.

func (*IaaSVMContainer) GetIaaSVMContainer

func (i *IaaSVMContainer) GetIaaSVMContainer() *IaaSVMContainer

GetIaaSVMContainer implements the IaaSVMContainerClassification interface for type IaaSVMContainer.

func (*IaaSVMContainer) GetProtectionContainer added in v0.2.0

func (i *IaaSVMContainer) GetProtectionContainer() *ProtectionContainer

GetProtectionContainer implements the ProtectionContainerClassification interface for type IaaSVMContainer.

func (IaaSVMContainer) MarshalJSON

func (i IaaSVMContainer) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type IaaSVMContainer.

func (*IaaSVMContainer) UnmarshalJSON

func (i *IaaSVMContainer) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type IaaSVMContainer.

type IaaSVMContainerClassification

type IaaSVMContainerClassification interface {
	ProtectionContainerClassification
	// GetIaaSVMContainer returns the IaaSVMContainer content of the underlying type.
	GetIaaSVMContainer() *IaaSVMContainer
}

IaaSVMContainerClassification provides polymorphic access to related types. Call the interface's GetIaaSVMContainer() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureIaaSClassicComputeVMContainer, *AzureIaaSComputeVMContainer, *IaaSVMContainer

type IaaSVMProtectableItem

type IaaSVMProtectableItem struct {
	// REQUIRED; Type of the backup item.
	ProtectableItemType *string `json:"protectableItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Resource group name of Recovery Services Vault.
	ResourceGroup *string `json:"resourceGroup,omitempty"`

	// Fully qualified ARM ID of the virtual machine.
	VirtualMachineID *string `json:"virtualMachineId,omitempty"`

	// Specifies whether the container represents a Classic or an Azure Resource Manager VM.
	VirtualMachineVersion *string `json:"virtualMachineVersion,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

IaaSVMProtectableItem - IaaS VM workload-specific backup item.

func (*IaaSVMProtectableItem) GetIaaSVMProtectableItem

func (i *IaaSVMProtectableItem) GetIaaSVMProtectableItem() *IaaSVMProtectableItem

GetIaaSVMProtectableItem implements the IaaSVMProtectableItemClassification interface for type IaaSVMProtectableItem.

func (*IaaSVMProtectableItem) GetWorkloadProtectableItem added in v0.2.0

func (i *IaaSVMProtectableItem) GetWorkloadProtectableItem() *WorkloadProtectableItem

GetWorkloadProtectableItem implements the WorkloadProtectableItemClassification interface for type IaaSVMProtectableItem.

func (IaaSVMProtectableItem) MarshalJSON

func (i IaaSVMProtectableItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type IaaSVMProtectableItem.

func (*IaaSVMProtectableItem) UnmarshalJSON

func (i *IaaSVMProtectableItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type IaaSVMProtectableItem.

type IaaSVMProtectableItemClassification

type IaaSVMProtectableItemClassification interface {
	WorkloadProtectableItemClassification
	// GetIaaSVMProtectableItem returns the IaaSVMProtectableItem content of the underlying type.
	GetIaaSVMProtectableItem() *IaaSVMProtectableItem
}

IaaSVMProtectableItemClassification provides polymorphic access to related types. Call the interface's GetIaaSVMProtectableItem() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureIaaSClassicComputeVMProtectableItem, *AzureIaaSComputeVMProtectableItem, *IaaSVMProtectableItem

type IaasVMBackupRequest

type IaasVMBackupRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Backup copy will expire after the time specified (UTC).
	RecoveryPointExpiryTimeInUTC *time.Time `json:"recoveryPointExpiryTimeInUTC,omitempty"`
}

IaasVMBackupRequest - IaaS VM workload-specific backup request.

func (*IaasVMBackupRequest) GetBackupRequest added in v0.2.0

func (i *IaasVMBackupRequest) GetBackupRequest() *BackupRequest

GetBackupRequest implements the BackupRequestClassification interface for type IaasVMBackupRequest.

func (IaasVMBackupRequest) MarshalJSON

func (i IaasVMBackupRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type IaasVMBackupRequest.

func (*IaasVMBackupRequest) UnmarshalJSON

func (i *IaasVMBackupRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type IaasVMBackupRequest.

type IaasVMILRRegistrationRequest

type IaasVMILRRegistrationRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// iSCSI initiator name.
	InitiatorName *string `json:"initiatorName,omitempty"`

	// ID of the IaaS VM backup copy from where the files/folders have to be restored.
	RecoveryPointID *string `json:"recoveryPointId,omitempty"`

	// Whether to renew existing registration with the iSCSI server.
	RenewExistingRegistration *bool `json:"renewExistingRegistration,omitempty"`

	// Fully qualified ARM ID of the virtual machine whose the files / folders have to be restored.
	VirtualMachineID *string `json:"virtualMachineId,omitempty"`
}

IaasVMILRRegistrationRequest - Restore files/folders from a backup copy of IaaS VM.

func (*IaasVMILRRegistrationRequest) GetILRRequest added in v0.2.0

func (i *IaasVMILRRegistrationRequest) GetILRRequest() *ILRRequest

GetILRRequest implements the ILRRequestClassification interface for type IaasVMILRRegistrationRequest.

func (IaasVMILRRegistrationRequest) MarshalJSON

func (i IaasVMILRRegistrationRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type IaasVMILRRegistrationRequest.

func (*IaasVMILRRegistrationRequest) UnmarshalJSON

func (i *IaasVMILRRegistrationRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type IaasVMILRRegistrationRequest.

type IaasVMRecoveryPoint

type IaasVMRecoveryPoint struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Is the session to recover items from this backup copy still active.
	IsInstantIlrSessionActive *bool `json:"isInstantIlrSessionActive,omitempty"`

	// Whether VM is with Managed Disks
	IsManagedVirtualMachine *bool `json:"isManagedVirtualMachine,omitempty"`

	// Identifies whether the VM was encrypted when the backup copy is created.
	IsSourceVMEncrypted *bool `json:"isSourceVMEncrypted,omitempty"`

	// Required details for recovering an encrypted VM. Applicable only when IsSourceVMEncrypted is true.
	KeyAndSecret *KeyAndSecretDetails `json:"keyAndSecret,omitempty"`

	// OS type
	OSType *string `json:"osType,omitempty"`

	// Original Storage Account Option
	OriginalStorageAccountOption *bool `json:"originalStorageAccountOption,omitempty"`

	// Additional information associated with this backup copy.
	RecoveryPointAdditionalInfo *string `json:"recoveryPointAdditionalInfo,omitempty"`

	// Disk configuration
	RecoveryPointDiskConfiguration *RecoveryPointDiskConfiguration `json:"recoveryPointDiskConfiguration,omitempty"`

	// Eligibility of RP to be moved to another tier
	RecoveryPointMoveReadinessInfo map[string]*RecoveryPointMoveReadinessInfo `json:"recoveryPointMoveReadinessInfo,omitempty"`

	// Recovery point tier information.
	RecoveryPointTierDetails []*RecoveryPointTierInformationV2 `json:"recoveryPointTierDetails,omitempty"`

	// Time at which this backup copy was created.
	RecoveryPointTime *time.Time `json:"recoveryPointTime,omitempty"`

	// Type of the backup copy.
	RecoveryPointType *string `json:"recoveryPointType,omitempty"`

	// Storage type of the VM whose backup copy is created.
	SourceVMStorageType *string `json:"sourceVMStorageType,omitempty"`

	// Virtual Machine Size
	VirtualMachineSize *string `json:"virtualMachineSize,omitempty"`

	// Identifies the zone of the VM at the time of backup. Applicable only for zone-pinned Vms
	Zones []*string `json:"zones,omitempty"`
}

IaasVMRecoveryPoint - IaaS VM workload specific backup copy.

func (*IaasVMRecoveryPoint) GetRecoveryPoint added in v0.2.0

func (i *IaasVMRecoveryPoint) GetRecoveryPoint() *RecoveryPoint

GetRecoveryPoint implements the RecoveryPointClassification interface for type IaasVMRecoveryPoint.

func (IaasVMRecoveryPoint) MarshalJSON

func (i IaasVMRecoveryPoint) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type IaasVMRecoveryPoint.

func (*IaasVMRecoveryPoint) UnmarshalJSON

func (i *IaasVMRecoveryPoint) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type IaasVMRecoveryPoint.

type IaasVMRestoreRequest

type IaasVMRestoreRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Affinity group associated to VM to be restored. Used only for Classic Compute Virtual Machines.
	AffinityGroup *string `json:"affinityGroup,omitempty"`

	// Should a new cloud service be created while restoring the VM. If this is false, VM will be restored to the same cloud service
	// as it was at the time of backup.
	CreateNewCloudService *bool `json:"createNewCloudService,omitempty"`

	// DiskEncryptionSet's ID - needed if the VM needs to be encrypted at rest during restore with customer managed key.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty"`

	// Details needed if the VM was encrypted at the time of backup.
	EncryptionDetails *EncryptionDetails `json:"encryptionDetails,omitempty"`

	// IaaS VM workload specific restore details for restores using managed identity.
	IdentityBasedRestoreDetails *IdentityBasedRestoreDetails `json:"identityBasedRestoreDetails,omitempty"`

	// Managed Identity information required to access customer storage account.
	IdentityInfo *IdentityInfo `json:"identityInfo,omitempty"`

	// Original Storage Account Option
	OriginalStorageAccountOption *bool `json:"originalStorageAccountOption,omitempty"`

	// ID of the backup copy to be recovered.
	RecoveryPointID *string `json:"recoveryPointId,omitempty"`

	// Type of this recovery.
	RecoveryType *RecoveryType `json:"recoveryType,omitempty"`

	// Region in which the virtual machine is restored.
	Region *string `json:"region,omitempty"`

	// List of Disk LUNs for partial restore
	RestoreDiskLunList []*int32 `json:"restoreDiskLunList,omitempty"`

	// Flag to denote of an Unmanaged disk VM should be restored with Managed disks.
	RestoreWithManagedDisks *bool `json:"restoreWithManagedDisks,omitempty"`

	// Fully qualified ARM ID of the VM which is being recovered.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Fully qualified ARM ID of the storage account to which the VM has to be restored.
	StorageAccountID *string `json:"storageAccountId,omitempty"`

	// Subnet ID, is the subnet ID associated with the to be restored VM. For Classic VMs it would be {VnetID}/Subnet/{SubnetName}
	// and, for the Azure Resource Manager VMs it would be ARM resource ID used to
	// represent the subnet.
	SubnetID *string `json:"subnetId,omitempty"`

	// Fully qualified ARM ID of the domain name to be associated to the VM being restored. This applies only to Classic Virtual
	// Machines.
	TargetDomainNameID *string `json:"targetDomainNameId,omitempty"`

	// This is the ARM Id of the resource group that you want to create for this Virtual machine and other artifacts. For e.g.
	// /subscriptions/{subId}/resourcegroups/{rg}
	TargetResourceGroupID *string `json:"targetResourceGroupId,omitempty"`

	// This is the complete ARM Id of the VM that will be created. For e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}
	TargetVirtualMachineID *string `json:"targetVirtualMachineId,omitempty"`

	// This is the virtual network Id of the vnet that will be attached to the virtual machine. User will be validated for join
	// action permissions in the linked access.
	VirtualNetworkID *string `json:"virtualNetworkId,omitempty"`

	// Target zone where the VM and its disks should be restored.
	Zones []*string `json:"zones,omitempty"`
}

IaasVMRestoreRequest - IaaS VM workload-specific restore.

func (*IaasVMRestoreRequest) GetIaasVMRestoreRequest

func (i *IaasVMRestoreRequest) GetIaasVMRestoreRequest() *IaasVMRestoreRequest

GetIaasVMRestoreRequest implements the IaasVMRestoreRequestClassification interface for type IaasVMRestoreRequest.

func (*IaasVMRestoreRequest) GetRestoreRequest added in v0.2.0

func (i *IaasVMRestoreRequest) GetRestoreRequest() *RestoreRequest

GetRestoreRequest implements the RestoreRequestClassification interface for type IaasVMRestoreRequest.

func (IaasVMRestoreRequest) MarshalJSON

func (i IaasVMRestoreRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type IaasVMRestoreRequest.

func (*IaasVMRestoreRequest) UnmarshalJSON

func (i *IaasVMRestoreRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type IaasVMRestoreRequest.

type IaasVMRestoreRequestClassification

type IaasVMRestoreRequestClassification interface {
	RestoreRequestClassification
	// GetIaasVMRestoreRequest returns the IaasVMRestoreRequest content of the underlying type.
	GetIaasVMRestoreRequest() *IaasVMRestoreRequest
}

IaasVMRestoreRequestClassification provides polymorphic access to related types. Call the interface's GetIaasVMRestoreRequest() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *IaasVMRestoreRequest, *IaasVMRestoreWithRehydrationRequest

type IaasVMRestoreWithRehydrationRequest

type IaasVMRestoreWithRehydrationRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Affinity group associated to VM to be restored. Used only for Classic Compute Virtual Machines.
	AffinityGroup *string `json:"affinityGroup,omitempty"`

	// Should a new cloud service be created while restoring the VM. If this is false, VM will be restored to the same cloud service
	// as it was at the time of backup.
	CreateNewCloudService *bool `json:"createNewCloudService,omitempty"`

	// DiskEncryptionSet's ID - needed if the VM needs to be encrypted at rest during restore with customer managed key.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty"`

	// Details needed if the VM was encrypted at the time of backup.
	EncryptionDetails *EncryptionDetails `json:"encryptionDetails,omitempty"`

	// IaaS VM workload specific restore details for restores using managed identity.
	IdentityBasedRestoreDetails *IdentityBasedRestoreDetails `json:"identityBasedRestoreDetails,omitempty"`

	// Managed Identity information required to access customer storage account.
	IdentityInfo *IdentityInfo `json:"identityInfo,omitempty"`

	// Original Storage Account Option
	OriginalStorageAccountOption *bool `json:"originalStorageAccountOption,omitempty"`

	// ID of the backup copy to be recovered.
	RecoveryPointID *string `json:"recoveryPointId,omitempty"`

	// RP Rehydration Info
	RecoveryPointRehydrationInfo *RecoveryPointRehydrationInfo `json:"recoveryPointRehydrationInfo,omitempty"`

	// Type of this recovery.
	RecoveryType *RecoveryType `json:"recoveryType,omitempty"`

	// Region in which the virtual machine is restored.
	Region *string `json:"region,omitempty"`

	// List of Disk LUNs for partial restore
	RestoreDiskLunList []*int32 `json:"restoreDiskLunList,omitempty"`

	// Flag to denote of an Unmanaged disk VM should be restored with Managed disks.
	RestoreWithManagedDisks *bool `json:"restoreWithManagedDisks,omitempty"`

	// Fully qualified ARM ID of the VM which is being recovered.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Fully qualified ARM ID of the storage account to which the VM has to be restored.
	StorageAccountID *string `json:"storageAccountId,omitempty"`

	// Subnet ID, is the subnet ID associated with the to be restored VM. For Classic VMs it would be {VnetID}/Subnet/{SubnetName}
	// and, for the Azure Resource Manager VMs it would be ARM resource ID used to
	// represent the subnet.
	SubnetID *string `json:"subnetId,omitempty"`

	// Fully qualified ARM ID of the domain name to be associated to the VM being restored. This applies only to Classic Virtual
	// Machines.
	TargetDomainNameID *string `json:"targetDomainNameId,omitempty"`

	// This is the ARM Id of the resource group that you want to create for this Virtual machine and other artifacts. For e.g.
	// /subscriptions/{subId}/resourcegroups/{rg}
	TargetResourceGroupID *string `json:"targetResourceGroupId,omitempty"`

	// This is the complete ARM Id of the VM that will be created. For e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}
	TargetVirtualMachineID *string `json:"targetVirtualMachineId,omitempty"`

	// This is the virtual network Id of the vnet that will be attached to the virtual machine. User will be validated for join
	// action permissions in the linked access.
	VirtualNetworkID *string `json:"virtualNetworkId,omitempty"`

	// Target zone where the VM and its disks should be restored.
	Zones []*string `json:"zones,omitempty"`
}

IaasVMRestoreWithRehydrationRequest - IaaS VM workload-specific restore with integrated rehydration of recovery point.

func (*IaasVMRestoreWithRehydrationRequest) GetIaasVMRestoreRequest added in v0.2.0

func (i *IaasVMRestoreWithRehydrationRequest) GetIaasVMRestoreRequest() *IaasVMRestoreRequest

GetIaasVMRestoreRequest implements the IaasVMRestoreRequestClassification interface for type IaasVMRestoreWithRehydrationRequest.

func (*IaasVMRestoreWithRehydrationRequest) GetRestoreRequest added in v0.2.0

func (i *IaasVMRestoreWithRehydrationRequest) GetRestoreRequest() *RestoreRequest

GetRestoreRequest implements the RestoreRequestClassification interface for type IaasVMRestoreWithRehydrationRequest.

func (IaasVMRestoreWithRehydrationRequest) MarshalJSON

func (i IaasVMRestoreWithRehydrationRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type IaasVMRestoreWithRehydrationRequest.

func (*IaasVMRestoreWithRehydrationRequest) UnmarshalJSON

func (i *IaasVMRestoreWithRehydrationRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type IaasVMRestoreWithRehydrationRequest.

type IdentityBasedRestoreDetails added in v0.2.0

type IdentityBasedRestoreDetails struct {
	// Gets the class type.
	ObjectType *string `json:"objectType,omitempty"`

	// Fully qualified ARM ID of the target storage account.
	TargetStorageAccountID *string `json:"targetStorageAccountId,omitempty"`
}

IdentityBasedRestoreDetails - IaaS VM workload specific restore details for restores using managed identity

type IdentityInfo

type IdentityInfo struct {
	// To differentiate if the managed identity is system assigned or user assigned
	IsSystemAssignedIdentity *bool `json:"isSystemAssignedIdentity,omitempty"`

	// Managed Identity Resource Id Optional: Might not be required in the case of system assigned managed identity
	ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty"`
}

IdentityInfo - Encapsulates Managed Identity related information

type InfrastructureEncryptionState

type InfrastructureEncryptionState string
const (
	InfrastructureEncryptionStateDisabled InfrastructureEncryptionState = "Disabled"
	InfrastructureEncryptionStateEnabled  InfrastructureEncryptionState = "Enabled"
	InfrastructureEncryptionStateInvalid  InfrastructureEncryptionState = "Invalid"
)

func PossibleInfrastructureEncryptionStateValues

func PossibleInfrastructureEncryptionStateValues() []InfrastructureEncryptionState

PossibleInfrastructureEncryptionStateValues returns the possible values for the InfrastructureEncryptionState const type.

type InquiryInfo

type InquiryInfo struct {
	// Error Details if the Status is non-success.
	ErrorDetail *ErrorDetail `json:"errorDetail,omitempty"`

	// Inquiry Details which will have workload specific details. For e.g. - For SQL and oracle this will contain different details.
	InquiryDetails []*WorkloadInquiryDetails `json:"inquiryDetails,omitempty"`

	// Inquiry Status for this container such as InProgress | Failed | Succeeded
	Status *string `json:"status,omitempty"`
}

InquiryInfo - Details about inquired protectable items under a given container.

func (InquiryInfo) MarshalJSON

func (i InquiryInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type InquiryInfo.

type InquiryStatus

type InquiryStatus string

InquiryStatus - Status of protectable item, i.e. InProgress,Succeeded,Failed

const (
	InquiryStatusFailed  InquiryStatus = "Failed"
	InquiryStatusInvalid InquiryStatus = "Invalid"
	InquiryStatusSuccess InquiryStatus = "Success"
)

func PossibleInquiryStatusValues

func PossibleInquiryStatusValues() []InquiryStatus

PossibleInquiryStatusValues returns the possible values for the InquiryStatus const type.

type InquiryValidation

type InquiryValidation struct {
	// Error Detail in case the status is non-success.
	ErrorDetail *ErrorDetail `json:"errorDetail,omitempty"`

	// Status for the Inquiry Validation.
	Status *string `json:"status,omitempty"`

	// READ-ONLY; Error Additional Detail in case the status is non-success.
	AdditionalDetail *string `json:"additionalDetail,omitempty" azure:"ro"`
}

InquiryValidation - Validation for inquired protectable items under a given container.

type InstantItemRecoveryTarget

type InstantItemRecoveryTarget struct {
	// List of client scripts.
	ClientScripts []*ClientScriptForConnect `json:"clientScripts,omitempty"`
}

InstantItemRecoveryTarget - Target details for file / folder restore.

type InstantRPAdditionalDetails

type InstantRPAdditionalDetails struct {
	AzureBackupRGNamePrefix *string `json:"azureBackupRGNamePrefix,omitempty"`
	AzureBackupRGNameSuffix *string `json:"azureBackupRGNameSuffix,omitempty"`
}

type IntentItemType

type IntentItemType string

IntentItemType - Type of workload this item represents

const (
	IntentItemTypeInvalid                       IntentItemType = "Invalid"
	IntentItemTypeSQLAvailabilityGroupContainer IntentItemType = "SQLAvailabilityGroupContainer"
	IntentItemTypeSQLInstance                   IntentItemType = "SQLInstance"
)

func PossibleIntentItemTypeValues

func PossibleIntentItemTypeValues() []IntentItemType

PossibleIntentItemTypeValues returns the possible values for the IntentItemType const type.

type ItemLevelRecoveryConnectionsClient

type ItemLevelRecoveryConnectionsClient struct {
	// contains filtered or unexported fields
}

ItemLevelRecoveryConnectionsClient contains the methods for the ItemLevelRecoveryConnections group. Don't use this type directly, use NewItemLevelRecoveryConnectionsClient() instead.

func NewItemLevelRecoveryConnectionsClient

func NewItemLevelRecoveryConnectionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ItemLevelRecoveryConnectionsClient, error)

NewItemLevelRecoveryConnectionsClient creates a new instance of ItemLevelRecoveryConnectionsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ItemLevelRecoveryConnectionsClient) Provision

func (client *ItemLevelRecoveryConnectionsClient) Provision(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, protectedItemName string, recoveryPointID string, parameters ILRRequestResource, options *ItemLevelRecoveryConnectionsClientProvisionOptions) (ItemLevelRecoveryConnectionsClientProvisionResponse, error)

Provision - Provisions a script which invokes an iSCSI connection to the backup data. Executing this script opens a file explorer displaying all the recoverable files and folders. This is an asynchronous operation. To know the status of provisioning, call GetProtectedItemOperationResult API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the backed up items. containerName - Container name associated with the backed up items. protectedItemName - Backed up item name whose files/folders are to be restored. recoveryPointID - Recovery point ID which represents backed up data. iSCSI connection will be provisioned for this backed up data. parameters - resource ILR request options - ItemLevelRecoveryConnectionsClientProvisionOptions contains the optional parameters for the ItemLevelRecoveryConnectionsClient.Provision method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/Provision_Ilr.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewItemLevelRecoveryConnectionsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Provision(ctx,
		"PySDKBackupTestRsVault",
		"PythonSDKBackupTestRg",
		"Azure",
		"iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1",
		"vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1",
		"1",
		armrecoveryservicesbackup.ILRRequestResource{
			Properties: &armrecoveryservicesbackup.IaasVMILRRegistrationRequest{
				ObjectType:                to.Ptr("IaasVMILRRegistrationRequest"),
				InitiatorName:             to.Ptr("Hello World"),
				RecoveryPointID:           to.Ptr("38823086363464"),
				RenewExistingRegistration: to.Ptr(true),
				VirtualMachineID:          to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pysdktestrg/providers/Microsoft.Compute/virtualMachines/pysdktestv2vm1"),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

func (*ItemLevelRecoveryConnectionsClient) Revoke

func (client *ItemLevelRecoveryConnectionsClient) Revoke(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, protectedItemName string, recoveryPointID string, options *ItemLevelRecoveryConnectionsClientRevokeOptions) (ItemLevelRecoveryConnectionsClientRevokeResponse, error)

Revoke - Revokes an iSCSI connection which can be used to download a script. Executing this script opens a file explorer displaying all recoverable files and folders. This is an asynchronous operation. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the backed up items. containerName - Container name associated with the backed up items. protectedItemName - Backed up item name whose files/folders are to be restored. recoveryPointID - Recovery point ID which represents backed up data. iSCSI connection will be revoked for this backed up data. options - ItemLevelRecoveryConnectionsClientRevokeOptions contains the optional parameters for the ItemLevelRecoveryConnectionsClient.Revoke method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/Revoke_Ilr.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewItemLevelRecoveryConnectionsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Revoke(ctx,
		"PySDKBackupTestRsVault",
		"PythonSDKBackupTestRg",
		"Azure",
		"iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1",
		"vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1",
		"1",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

type ItemLevelRecoveryConnectionsClientProvisionOptions added in v0.2.0

type ItemLevelRecoveryConnectionsClientProvisionOptions struct {
}

ItemLevelRecoveryConnectionsClientProvisionOptions contains the optional parameters for the ItemLevelRecoveryConnectionsClient.Provision method.

type ItemLevelRecoveryConnectionsClientProvisionResponse added in v0.2.0

type ItemLevelRecoveryConnectionsClientProvisionResponse struct {
}

ItemLevelRecoveryConnectionsClientProvisionResponse contains the response from method ItemLevelRecoveryConnectionsClient.Provision.

type ItemLevelRecoveryConnectionsClientRevokeOptions added in v0.2.0

type ItemLevelRecoveryConnectionsClientRevokeOptions struct {
}

ItemLevelRecoveryConnectionsClientRevokeOptions contains the optional parameters for the ItemLevelRecoveryConnectionsClient.Revoke method.

type ItemLevelRecoveryConnectionsClientRevokeResponse added in v0.2.0

type ItemLevelRecoveryConnectionsClientRevokeResponse struct {
}

ItemLevelRecoveryConnectionsClientRevokeResponse contains the response from method ItemLevelRecoveryConnectionsClient.Revoke.

type Job

type Job struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	JobType *string `json:"jobType,omitempty"`

	// ActivityId of job.
	ActivityID *string `json:"activityId,omitempty"`

	// Backup management type to execute the current job.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// The end time.
	EndTime *time.Time `json:"endTime,omitempty"`

	// Friendly name of the entity on which the current job is executing.
	EntityFriendlyName *string `json:"entityFriendlyName,omitempty"`

	// The operation name.
	Operation *string `json:"operation,omitempty"`

	// The start time.
	StartTime *time.Time `json:"startTime,omitempty"`

	// Job status.
	Status *string `json:"status,omitempty"`
}

Job - Defines workload agnostic properties for a job.

func (*Job) GetJob

func (j *Job) GetJob() *Job

GetJob implements the JobClassification interface for type Job.

func (Job) MarshalJSON added in v0.2.0

func (j Job) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Job.

func (*Job) UnmarshalJSON

func (j *Job) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Job.

type JobCancellationsClient

type JobCancellationsClient struct {
	// contains filtered or unexported fields
}

JobCancellationsClient contains the methods for the JobCancellations group. Don't use this type directly, use NewJobCancellationsClient() instead.

func NewJobCancellationsClient

func NewJobCancellationsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*JobCancellationsClient, error)

NewJobCancellationsClient creates a new instance of JobCancellationsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*JobCancellationsClient) Trigger

func (client *JobCancellationsClient) Trigger(ctx context.Context, vaultName string, resourceGroupName string, jobName string, options *JobCancellationsClientTriggerOptions) (JobCancellationsClientTriggerResponse, error)

Trigger - Cancels a job. This is an asynchronous operation. To know the status of the cancellation, call GetCancelOperationResult API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. jobName - Name of the job to cancel. options - JobCancellationsClientTriggerOptions contains the optional parameters for the JobCancellationsClient.Trigger method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/TriggerCancelJob.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewJobCancellationsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Trigger(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

type JobCancellationsClientTriggerOptions added in v0.2.0

type JobCancellationsClientTriggerOptions struct {
}

JobCancellationsClientTriggerOptions contains the optional parameters for the JobCancellationsClient.Trigger method.

type JobCancellationsClientTriggerResponse added in v0.2.0

type JobCancellationsClientTriggerResponse struct {
}

JobCancellationsClientTriggerResponse contains the response from method JobCancellationsClient.Trigger.

type JobClassification

type JobClassification interface {
	// GetJob returns the Job content of the underlying type.
	GetJob() *Job
}

JobClassification provides polymorphic access to related types. Call the interface's GetJob() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureIaaSVMJob, *AzureIaaSVMJobV2, *AzureStorageJob, *AzureWorkloadJob, *DpmJob, *Job, *MabJob, *VaultJob

type JobDetailsClient

type JobDetailsClient struct {
	// contains filtered or unexported fields
}

JobDetailsClient contains the methods for the JobDetails group. Don't use this type directly, use NewJobDetailsClient() instead.

func NewJobDetailsClient

func NewJobDetailsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*JobDetailsClient, error)

NewJobDetailsClient creates a new instance of JobDetailsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*JobDetailsClient) Get

func (client *JobDetailsClient) Get(ctx context.Context, vaultName string, resourceGroupName string, jobName string, options *JobDetailsClientGetOptions) (JobDetailsClientGetResponse, error)

Get - Gets extended information associated with the job. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. jobName - Name of the job whose details are to be fetched. options - JobDetailsClientGetOptions contains the optional parameters for the JobDetailsClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/GetJobDetails.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewJobDetailsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type JobDetailsClientGetOptions added in v0.2.0

type JobDetailsClientGetOptions struct {
}

JobDetailsClientGetOptions contains the optional parameters for the JobDetailsClient.Get method.

type JobDetailsClientGetResponse added in v0.2.0

type JobDetailsClientGetResponse struct {
	JobResource
}

JobDetailsClientGetResponse contains the response from method JobDetailsClient.Get.

type JobOperationResultsClient

type JobOperationResultsClient struct {
	// contains filtered or unexported fields
}

JobOperationResultsClient contains the methods for the JobOperationResults group. Don't use this type directly, use NewJobOperationResultsClient() instead.

func NewJobOperationResultsClient

func NewJobOperationResultsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*JobOperationResultsClient, error)

NewJobOperationResultsClient creates a new instance of JobOperationResultsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*JobOperationResultsClient) Get

func (client *JobOperationResultsClient) Get(ctx context.Context, vaultName string, resourceGroupName string, jobName string, operationID string, options *JobOperationResultsClientGetOptions) (JobOperationResultsClientGetResponse, error)

Get - Fetches the result of any operation. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. jobName - Job name whose operation result has to be fetched. operationID - OperationID which represents the operation whose result has to be fetched. options - JobOperationResultsClientGetOptions contains the optional parameters for the JobOperationResultsClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/CancelJobOperationResult.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewJobOperationResultsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Get(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"00000000-0000-0000-0000-000000000000",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

type JobOperationResultsClientGetOptions added in v0.2.0

type JobOperationResultsClientGetOptions struct {
}

JobOperationResultsClientGetOptions contains the optional parameters for the JobOperationResultsClient.Get method.

type JobOperationResultsClientGetResponse added in v0.2.0

type JobOperationResultsClientGetResponse struct {
}

JobOperationResultsClientGetResponse contains the response from method JobOperationResultsClient.Get.

type JobOperationType

type JobOperationType string

JobOperationType - Type of operation.

const (
	JobOperationTypeBackup                   JobOperationType = "Backup"
	JobOperationTypeConfigureBackup          JobOperationType = "ConfigureBackup"
	JobOperationTypeCrossRegionRestore       JobOperationType = "CrossRegionRestore"
	JobOperationTypeDeleteBackupData         JobOperationType = "DeleteBackupData"
	JobOperationTypeDisableBackup            JobOperationType = "DisableBackup"
	JobOperationTypeInvalid                  JobOperationType = "Invalid"
	JobOperationTypeRegister                 JobOperationType = "Register"
	JobOperationTypeRestore                  JobOperationType = "Restore"
	JobOperationTypeUnRegister               JobOperationType = "UnRegister"
	JobOperationTypeUndelete                 JobOperationType = "Undelete"
	JobOperationTypeUpdateCustomerManagedKey JobOperationType = "UpdateCustomerManagedKey"
)

func PossibleJobOperationTypeValues

func PossibleJobOperationTypeValues() []JobOperationType

PossibleJobOperationTypeValues returns the possible values for the JobOperationType const type.

type JobQueryObject

type JobQueryObject struct {
	// Type of backup management for the job.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Job has ended at this time. Value is in UTC.
	EndTime *time.Time `json:"endTime,omitempty"`

	// JobID represents the job uniquely.
	JobID *string `json:"jobId,omitempty"`

	// Type of operation.
	Operation *JobOperationType `json:"operation,omitempty"`

	// Job has started at this time. Value is in UTC.
	StartTime *time.Time `json:"startTime,omitempty"`

	// Status of the job.
	Status *JobStatus `json:"status,omitempty"`
}

JobQueryObject - Filters to list the jobs.

func (*JobQueryObject) UnmarshalJSON

func (j *JobQueryObject) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type JobQueryObject.

type JobResource

type JobResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// JobResource properties
	Properties JobClassification `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

JobResource - Defines workload agnostic properties for a job.

func (JobResource) MarshalJSON

func (j JobResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type JobResource.

func (*JobResource) UnmarshalJSON

func (j *JobResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type JobResource.

type JobResourceList

type JobResourceList struct {
	// The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.
	NextLink *string `json:"nextLink,omitempty"`

	// List of resources.
	Value []*JobResource `json:"value,omitempty"`
}

JobResourceList - List of Job resources

type JobStatus

type JobStatus string

JobStatus - Status of the job.

const (
	JobStatusCancelled             JobStatus = "Cancelled"
	JobStatusCancelling            JobStatus = "Cancelling"
	JobStatusCompleted             JobStatus = "Completed"
	JobStatusCompletedWithWarnings JobStatus = "CompletedWithWarnings"
	JobStatusFailed                JobStatus = "Failed"
	JobStatusInProgress            JobStatus = "InProgress"
	JobStatusInvalid               JobStatus = "Invalid"
)

func PossibleJobStatusValues

func PossibleJobStatusValues() []JobStatus

PossibleJobStatusValues returns the possible values for the JobStatus const type.

type JobSupportedAction

type JobSupportedAction string
const (
	JobSupportedActionInvalid     JobSupportedAction = "Invalid"
	JobSupportedActionCancellable JobSupportedAction = "Cancellable"
	JobSupportedActionRetriable   JobSupportedAction = "Retriable"
)

func PossibleJobSupportedActionValues

func PossibleJobSupportedActionValues() []JobSupportedAction

PossibleJobSupportedActionValues returns the possible values for the JobSupportedAction const type.

type JobsClient

type JobsClient struct {
	// contains filtered or unexported fields
}

JobsClient contains the methods for the Jobs group. Don't use this type directly, use NewJobsClient() instead.

func NewJobsClient

func NewJobsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*JobsClient, error)

NewJobsClient creates a new instance of JobsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*JobsClient) Export

func (client *JobsClient) Export(ctx context.Context, vaultName string, resourceGroupName string, options *JobsClientExportOptions) (JobsClientExportResponse, error)

Export - Triggers export of jobs specified by filters and returns an OperationID to track. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - JobsClientExportOptions contains the optional parameters for the JobsClient.Export method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/TriggerExportJobs.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewJobsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Export(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		&armrecoveryservicesbackup.JobsClientExportOptions{Filter: nil})
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

type JobsClientExportOptions added in v0.2.0

type JobsClientExportOptions struct {
	// OData filter options.
	Filter *string
}

JobsClientExportOptions contains the optional parameters for the JobsClient.Export method.

type JobsClientExportResponse added in v0.2.0

type JobsClientExportResponse struct {
}

JobsClientExportResponse contains the response from method JobsClient.Export.

type KEKDetails

type KEKDetails struct {
	// KEK data.
	KeyBackupData *string `json:"keyBackupData,omitempty"`

	// Key is KEK.
	KeyURL *string `json:"keyUrl,omitempty"`

	// Key Vault ID where this Key is stored.
	KeyVaultID *string `json:"keyVaultId,omitempty"`
}

KEKDetails - KEK is encryption key for BEK.

type KPIResourceHealthDetails

type KPIResourceHealthDetails struct {
	// Resource Health Status
	ResourceHealthDetails []*ResourceHealthDetails `json:"resourceHealthDetails,omitempty"`

	// Resource Health Status
	ResourceHealthStatus *ResourceHealthStatus `json:"resourceHealthStatus,omitempty"`
}

KPIResourceHealthDetails - KPI Resource Health Details

func (KPIResourceHealthDetails) MarshalJSON

func (k KPIResourceHealthDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type KPIResourceHealthDetails.

type KeyAndSecretDetails

type KeyAndSecretDetails struct {
	// BEK is bitlocker encryption key.
	BekDetails *BEKDetails `json:"bekDetails,omitempty"`

	// Encryption mechanism: None/ SinglePass/ DoublePass
	EncryptionMechanism *string `json:"encryptionMechanism,omitempty"`

	// KEK is encryption key for BEK.
	KekDetails *KEKDetails `json:"kekDetails,omitempty"`
}

KeyAndSecretDetails - BEK is bitlocker key. KEK is encryption key for BEK If the VM was encrypted then we will store following details : 1. Secret(BEK) - Url + Backup Data + vaultId. 2. Key(KEK) - Url + Backup Data + vaultId. 3. EncryptionMechanism BEK and KEK can potentially have different vault ids.

type LastBackupStatus

type LastBackupStatus string

LastBackupStatus - Last backup operation status. Possible values: Healthy, Unhealthy.

const (
	LastBackupStatusHealthy   LastBackupStatus = "Healthy"
	LastBackupStatusIRPending LastBackupStatus = "IRPending"
	LastBackupStatusInvalid   LastBackupStatus = "Invalid"
	LastBackupStatusUnhealthy LastBackupStatus = "Unhealthy"
)

func PossibleLastBackupStatusValues

func PossibleLastBackupStatusValues() []LastBackupStatus

PossibleLastBackupStatusValues returns the possible values for the LastBackupStatus const type.

type LastUpdateStatus

type LastUpdateStatus string
const (
	LastUpdateStatusFailed              LastUpdateStatus = "Failed"
	LastUpdateStatusFirstInitialization LastUpdateStatus = "FirstInitialization"
	LastUpdateStatusInitialized         LastUpdateStatus = "Initialized"
	LastUpdateStatusInvalid             LastUpdateStatus = "Invalid"
	LastUpdateStatusNotEnabled          LastUpdateStatus = "NotEnabled"
	LastUpdateStatusPartiallyFailed     LastUpdateStatus = "PartiallyFailed"
	LastUpdateStatusPartiallySucceeded  LastUpdateStatus = "PartiallySucceeded"
	LastUpdateStatusSucceeded           LastUpdateStatus = "Succeeded"
)

func PossibleLastUpdateStatusValues

func PossibleLastUpdateStatusValues() []LastUpdateStatus

PossibleLastUpdateStatusValues returns the possible values for the LastUpdateStatus const type.

type ListRecoveryPointsRecommendedForMoveRequest

type ListRecoveryPointsRecommendedForMoveRequest struct {
	// List of Recovery Points excluded from Move
	ExcludedRPList []*string `json:"excludedRPList,omitempty"`

	// Gets the class type.
	ObjectType *string `json:"objectType,omitempty"`
}

ListRecoveryPointsRecommendedForMoveRequest Request

func (ListRecoveryPointsRecommendedForMoveRequest) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type ListRecoveryPointsRecommendedForMoveRequest.

type LogSchedulePolicy

type LogSchedulePolicy struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	SchedulePolicyType *string `json:"schedulePolicyType,omitempty"`

	// Frequency of the log schedule operation of this policy in minutes.
	ScheduleFrequencyInMins *int32 `json:"scheduleFrequencyInMins,omitempty"`
}

LogSchedulePolicy - Log policy schedule.

func (*LogSchedulePolicy) GetSchedulePolicy added in v0.2.0

func (l *LogSchedulePolicy) GetSchedulePolicy() *SchedulePolicy

GetSchedulePolicy implements the SchedulePolicyClassification interface for type LogSchedulePolicy.

func (LogSchedulePolicy) MarshalJSON

func (l LogSchedulePolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type LogSchedulePolicy.

func (*LogSchedulePolicy) UnmarshalJSON

func (l *LogSchedulePolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type LogSchedulePolicy.

type LongTermRetentionPolicy

type LongTermRetentionPolicy struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	RetentionPolicyType *string `json:"retentionPolicyType,omitempty"`

	// Daily retention schedule of the protection policy.
	DailySchedule *DailyRetentionSchedule `json:"dailySchedule,omitempty"`

	// Monthly retention schedule of the protection policy.
	MonthlySchedule *MonthlyRetentionSchedule `json:"monthlySchedule,omitempty"`

	// Weekly retention schedule of the protection policy.
	WeeklySchedule *WeeklyRetentionSchedule `json:"weeklySchedule,omitempty"`

	// Yearly retention schedule of the protection policy.
	YearlySchedule *YearlyRetentionSchedule `json:"yearlySchedule,omitempty"`
}

LongTermRetentionPolicy - Long term retention policy.

func (*LongTermRetentionPolicy) GetRetentionPolicy added in v0.2.0

func (l *LongTermRetentionPolicy) GetRetentionPolicy() *RetentionPolicy

GetRetentionPolicy implements the RetentionPolicyClassification interface for type LongTermRetentionPolicy.

func (LongTermRetentionPolicy) MarshalJSON

func (l LongTermRetentionPolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type LongTermRetentionPolicy.

func (*LongTermRetentionPolicy) UnmarshalJSON

func (l *LongTermRetentionPolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type LongTermRetentionPolicy.

type LongTermSchedulePolicy

type LongTermSchedulePolicy struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	SchedulePolicyType *string `json:"schedulePolicyType,omitempty"`
}

LongTermSchedulePolicy - Long term policy schedule.

func (*LongTermSchedulePolicy) GetSchedulePolicy added in v0.2.0

func (l *LongTermSchedulePolicy) GetSchedulePolicy() *SchedulePolicy

GetSchedulePolicy implements the SchedulePolicyClassification interface for type LongTermSchedulePolicy.

func (LongTermSchedulePolicy) MarshalJSON

func (l LongTermSchedulePolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type LongTermSchedulePolicy.

func (*LongTermSchedulePolicy) UnmarshalJSON added in v0.2.0

func (l *LongTermSchedulePolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type LongTermSchedulePolicy.

type MABContainerHealthDetails

type MABContainerHealthDetails struct {
	// Health Code
	Code *int32 `json:"code,omitempty"`

	// Health Message
	Message *string `json:"message,omitempty"`

	// Health Recommended Actions
	Recommendations []*string `json:"recommendations,omitempty"`

	// Health Title
	Title *string `json:"title,omitempty"`
}

MABContainerHealthDetails - MAB workload-specific Health Details.

func (MABContainerHealthDetails) MarshalJSON

func (m MABContainerHealthDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type MABContainerHealthDetails.

type MabContainer

type MabContainer struct {
	// REQUIRED; Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows
	// machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer.
	// 6. Azure workload Backup is VMAppContainer
	ContainerType *ContainerType `json:"containerType,omitempty"`

	// Agent version of this container.
	AgentVersion *string `json:"agentVersion,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Can the container be registered one more time.
	CanReRegister *bool `json:"canReRegister,omitempty"`

	// Health state of mab container.
	ContainerHealthState *string `json:"containerHealthState,omitempty"`

	// ContainerID represents the container.
	ContainerID *int64 `json:"containerId,omitempty"`

	// Additional information for this container
	ExtendedInfo *MabContainerExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// Health details on this mab container.
	MabContainerHealthDetails []*MABContainerHealthDetails `json:"mabContainerHealthDetails,omitempty"`

	// Type of the protectable object associated with this container
	ProtectableObjectType *string `json:"protectableObjectType,omitempty"`

	// Number of items backed up in this container.
	ProtectedItemCount *int64 `json:"protectedItemCount,omitempty"`

	// Status of registration of the container with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`
}

MabContainer - Container with items backed up using MAB backup engine.

func (*MabContainer) GetProtectionContainer added in v0.2.0

func (m *MabContainer) GetProtectionContainer() *ProtectionContainer

GetProtectionContainer implements the ProtectionContainerClassification interface for type MabContainer.

func (MabContainer) MarshalJSON

func (m MabContainer) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type MabContainer.

func (*MabContainer) UnmarshalJSON

func (m *MabContainer) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type MabContainer.

type MabContainerExtendedInfo

type MabContainerExtendedInfo struct {
	// Type of backup items associated with this container.
	BackupItemType *BackupItemType `json:"backupItemType,omitempty"`

	// List of backup items associated with this container.
	BackupItems []*string `json:"backupItems,omitempty"`

	// Latest backup status of this container.
	LastBackupStatus *string `json:"lastBackupStatus,omitempty"`

	// Time stamp when this container was refreshed.
	LastRefreshedAt *time.Time `json:"lastRefreshedAt,omitempty"`

	// Backup policy associated with this container.
	PolicyName *string `json:"policyName,omitempty"`
}

MabContainerExtendedInfo - Additional information of the container.

func (MabContainerExtendedInfo) MarshalJSON

func (m MabContainerExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type MabContainerExtendedInfo.

func (*MabContainerExtendedInfo) UnmarshalJSON

func (m *MabContainerExtendedInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type MabContainerExtendedInfo.

type MabErrorInfo

type MabErrorInfo struct {
	// READ-ONLY; Localized error string.
	ErrorString *string `json:"errorString,omitempty" azure:"ro"`

	// READ-ONLY; List of localized recommendations.
	Recommendations []*string `json:"recommendations,omitempty" azure:"ro"`
}

MabErrorInfo - MAB workload-specific error information.

func (MabErrorInfo) MarshalJSON

func (m MabErrorInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type MabErrorInfo.

type MabFileFolderProtectedItem

type MabFileFolderProtectedItem struct {
	// REQUIRED; backup item type.
	ProtectedItemType *string `json:"protectedItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of the backup set the backup item belongs to
	BackupSetName *string `json:"backupSetName,omitempty"`

	// Name of the computer associated with this backup item.
	ComputerName *string `json:"computerName,omitempty"`

	// Unique name of container
	ContainerName *string `json:"containerName,omitempty"`

	// Create mode to indicate recovery of existing soft deleted data source or creation of new data source.
	CreateMode *CreateMode `json:"createMode,omitempty"`

	// Sync time for deferred deletion in UTC
	DeferredDeleteSyncTimeInUTC *int64 `json:"deferredDeleteSyncTimeInUTC,omitempty"`

	// Time for deferred deletion in UTC
	DeferredDeleteTimeInUTC *time.Time `json:"deferredDeleteTimeInUTC,omitempty"`

	// Time remaining before the DS marked for deferred delete is permanently deleted
	DeferredDeleteTimeRemaining *string `json:"deferredDeleteTimeRemaining,omitempty"`

	// Additional information with this backup item.
	ExtendedInfo *MabFileFolderProtectedItemExtendedInfo `json:"extendedInfo,omitempty"`

	// Friendly name of this backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Flag to identify whether datasource is protected in archive
	IsArchiveEnabled *bool `json:"isArchiveEnabled,omitempty"`

	// Flag to identify whether the deferred deleted DS is to be purged soon
	IsDeferredDeleteScheduleUpcoming *bool `json:"isDeferredDeleteScheduleUpcoming,omitempty"`

	// Flag to identify that deferred deleted DS is to be moved into Pause state
	IsRehydrate *bool `json:"isRehydrate,omitempty"`

	// Flag to identify whether the DS is scheduled for deferred delete
	IsScheduledForDeferredDelete *bool `json:"isScheduledForDeferredDelete,omitempty"`

	// Status of last backup operation.
	LastBackupStatus *string `json:"lastBackupStatus,omitempty"`

	// Timestamp of the last backup operation on this backup item.
	LastBackupTime *time.Time `json:"lastBackupTime,omitempty"`

	// Timestamp when the last (latest) backup copy was created for this backup item.
	LastRecoveryPoint *time.Time `json:"lastRecoveryPoint,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Name of the policy used for protection
	PolicyName *string `json:"policyName,omitempty"`

	// Protected, ProtectionStopped, IRPending or ProtectionError
	ProtectionState *string `json:"protectionState,omitempty"`

	// ResourceGuardOperationRequests on which LAC check will be performed
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Type of workload this item represents.
	WorkloadType *DataSourceType `json:"workloadType,omitempty"`
}

MabFileFolderProtectedItem - MAB workload-specific backup item.

func (*MabFileFolderProtectedItem) GetProtectedItem added in v0.2.0

func (m *MabFileFolderProtectedItem) GetProtectedItem() *ProtectedItem

GetProtectedItem implements the ProtectedItemClassification interface for type MabFileFolderProtectedItem.

func (MabFileFolderProtectedItem) MarshalJSON

func (m MabFileFolderProtectedItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type MabFileFolderProtectedItem.

func (*MabFileFolderProtectedItem) UnmarshalJSON

func (m *MabFileFolderProtectedItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type MabFileFolderProtectedItem.

type MabFileFolderProtectedItemExtendedInfo

type MabFileFolderProtectedItemExtendedInfo struct {
	// Last time when the agent data synced to service.
	LastRefreshedAt *time.Time `json:"lastRefreshedAt,omitempty"`

	// The oldest backup copy available.
	OldestRecoveryPoint *time.Time `json:"oldestRecoveryPoint,omitempty"`

	// Number of backup copies associated with the backup item.
	RecoveryPointCount *int32 `json:"recoveryPointCount,omitempty"`
}

MabFileFolderProtectedItemExtendedInfo - Additional information on the backed up item.

func (MabFileFolderProtectedItemExtendedInfo) MarshalJSON

func (m MabFileFolderProtectedItemExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type MabFileFolderProtectedItemExtendedInfo.

func (*MabFileFolderProtectedItemExtendedInfo) UnmarshalJSON

func (m *MabFileFolderProtectedItemExtendedInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type MabFileFolderProtectedItemExtendedInfo.

type MabJob

type MabJob struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	JobType *string `json:"jobType,omitempty"`

	// The state/actions applicable on jobs like cancel/retry.
	ActionsInfo []*JobSupportedAction `json:"actionsInfo,omitempty"`

	// ActivityId of job.
	ActivityID *string `json:"activityId,omitempty"`

	// Backup management type to execute the current job.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Time taken by job to run.
	Duration *string `json:"duration,omitempty"`

	// The end time.
	EndTime *time.Time `json:"endTime,omitempty"`

	// Friendly name of the entity on which the current job is executing.
	EntityFriendlyName *string `json:"entityFriendlyName,omitempty"`

	// The errors.
	ErrorDetails []*MabErrorInfo `json:"errorDetails,omitempty"`

	// Additional information on the job.
	ExtendedInfo *MabJobExtendedInfo `json:"extendedInfo,omitempty"`

	// Name of server protecting the DS.
	MabServerName *string `json:"mabServerName,omitempty"`

	// Server type of MAB container.
	MabServerType *MabServerType `json:"mabServerType,omitempty"`

	// The operation name.
	Operation *string `json:"operation,omitempty"`

	// The start time.
	StartTime *time.Time `json:"startTime,omitempty"`

	// Job status.
	Status *string `json:"status,omitempty"`

	// Workload type of backup item.
	WorkloadType *WorkloadType `json:"workloadType,omitempty"`
}

MabJob - MAB workload-specific job.

func (*MabJob) GetJob added in v0.2.0

func (m *MabJob) GetJob() *Job

GetJob implements the JobClassification interface for type MabJob.

func (MabJob) MarshalJSON

func (m MabJob) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type MabJob.

func (*MabJob) UnmarshalJSON

func (m *MabJob) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type MabJob.

type MabJobExtendedInfo

type MabJobExtendedInfo struct {
	// Non localized error message specific to this job.
	DynamicErrorMessage *string `json:"dynamicErrorMessage,omitempty"`

	// The job properties.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`

	// List of tasks for this job.
	TasksList []*MabJobTaskDetails `json:"tasksList,omitempty"`
}

MabJobExtendedInfo - Additional information for the MAB workload-specific job.

func (MabJobExtendedInfo) MarshalJSON

func (m MabJobExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type MabJobExtendedInfo.

type MabJobTaskDetails

type MabJobTaskDetails struct {
	// Time elapsed for task.
	Duration *string `json:"duration,omitempty"`

	// The end time.
	EndTime *time.Time `json:"endTime,omitempty"`

	// The start time.
	StartTime *time.Time `json:"startTime,omitempty"`

	// The status.
	Status *string `json:"status,omitempty"`

	// The task display name.
	TaskID *string `json:"taskId,omitempty"`
}

MabJobTaskDetails - MAB workload-specific job task details.

func (MabJobTaskDetails) MarshalJSON

func (m MabJobTaskDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type MabJobTaskDetails.

func (*MabJobTaskDetails) UnmarshalJSON

func (m *MabJobTaskDetails) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type MabJobTaskDetails.

type MabProtectionPolicy

type MabProtectionPolicy struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Number of items associated with this policy.
	ProtectedItemsCount *int32 `json:"protectedItemsCount,omitempty"`

	// ResourceGuard Operation Requests
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// Retention policy details.
	RetentionPolicy RetentionPolicyClassification `json:"retentionPolicy,omitempty"`

	// Backup schedule of backup policy.
	SchedulePolicy SchedulePolicyClassification `json:"schedulePolicy,omitempty"`
}

MabProtectionPolicy - Mab container-specific backup policy.

func (*MabProtectionPolicy) GetProtectionPolicy added in v0.2.0

func (m *MabProtectionPolicy) GetProtectionPolicy() *ProtectionPolicy

GetProtectionPolicy implements the ProtectionPolicyClassification interface for type MabProtectionPolicy.

func (MabProtectionPolicy) MarshalJSON

func (m MabProtectionPolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type MabProtectionPolicy.

func (*MabProtectionPolicy) UnmarshalJSON

func (m *MabProtectionPolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type MabProtectionPolicy.

type MabServerType

type MabServerType string

MabServerType - Server type of MAB container.

const (
	MabServerTypeAzureBackupServerContainer MabServerType = "AzureBackupServerContainer"
	MabServerTypeAzureSQLContainer          MabServerType = "AzureSqlContainer"
	MabServerTypeCluster                    MabServerType = "Cluster"
	MabServerTypeDPMContainer               MabServerType = "DPMContainer"
	MabServerTypeGenericContainer           MabServerType = "GenericContainer"
	MabServerTypeIaasVMContainer            MabServerType = "IaasVMContainer"
	MabServerTypeIaasVMServiceContainer     MabServerType = "IaasVMServiceContainer"
	MabServerTypeInvalid                    MabServerType = "Invalid"
	MabServerTypeMABContainer               MabServerType = "MABContainer"
	MabServerTypeSQLAGWorkLoadContainer     MabServerType = "SQLAGWorkLoadContainer"
	MabServerTypeStorageContainer           MabServerType = "StorageContainer"
	MabServerTypeUnknown                    MabServerType = "Unknown"
	MabServerTypeVCenter                    MabServerType = "VCenter"
	MabServerTypeVMAppContainer             MabServerType = "VMAppContainer"
	MabServerTypeWindows                    MabServerType = "Windows"
)

func PossibleMabServerTypeValues

func PossibleMabServerTypeValues() []MabServerType

PossibleMabServerTypeValues returns the possible values for the MabServerType const type.

type MonthOfYear

type MonthOfYear string
const (
	MonthOfYearInvalid   MonthOfYear = "Invalid"
	MonthOfYearJanuary   MonthOfYear = "January"
	MonthOfYearFebruary  MonthOfYear = "February"
	MonthOfYearMarch     MonthOfYear = "March"
	MonthOfYearApril     MonthOfYear = "April"
	MonthOfYearMay       MonthOfYear = "May"
	MonthOfYearJune      MonthOfYear = "June"
	MonthOfYearJuly      MonthOfYear = "July"
	MonthOfYearAugust    MonthOfYear = "August"
	MonthOfYearSeptember MonthOfYear = "September"
	MonthOfYearOctober   MonthOfYear = "October"
	MonthOfYearNovember  MonthOfYear = "November"
	MonthOfYearDecember  MonthOfYear = "December"
)

func PossibleMonthOfYearValues

func PossibleMonthOfYearValues() []MonthOfYear

PossibleMonthOfYearValues returns the possible values for the MonthOfYear const type.

type MonthlyRetentionSchedule

type MonthlyRetentionSchedule struct {
	// Retention duration of retention Policy.
	RetentionDuration *RetentionDuration `json:"retentionDuration,omitempty"`

	// Daily retention format for monthly retention policy.
	RetentionScheduleDaily *DailyRetentionFormat `json:"retentionScheduleDaily,omitempty"`

	// Retention schedule format type for monthly retention policy.
	RetentionScheduleFormatType *RetentionScheduleFormat `json:"retentionScheduleFormatType,omitempty"`

	// Weekly retention format for monthly retention policy.
	RetentionScheduleWeekly *WeeklyRetentionFormat `json:"retentionScheduleWeekly,omitempty"`

	// Retention times of retention policy.
	RetentionTimes []*time.Time `json:"retentionTimes,omitempty"`
}

MonthlyRetentionSchedule - Monthly retention schedule.

func (MonthlyRetentionSchedule) MarshalJSON

func (m MonthlyRetentionSchedule) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type MonthlyRetentionSchedule.

type MoveRPAcrossTiersRequest

type MoveRPAcrossTiersRequest struct {
	// Gets the class type.
	ObjectType *string `json:"objectType,omitempty"`

	// Source tier from where RP needs to be moved
	SourceTierType *RecoveryPointTierType `json:"sourceTierType,omitempty"`

	// Target tier where RP needs to be moved
	TargetTierType *RecoveryPointTierType `json:"targetTierType,omitempty"`
}

type NameInfo

type NameInfo struct {
	// Localized value of usage.
	LocalizedValue *string `json:"localizedValue,omitempty"`

	// Value of usage.
	Value *string `json:"value,omitempty"`
}

NameInfo - The name of usage.

type NewErrorResponse

type NewErrorResponse struct {
	// The error object.
	Error *NewErrorResponseError `json:"error,omitempty"`
}

NewErrorResponse - The resource management error response.

type NewErrorResponseError

type NewErrorResponseError struct {
	// READ-ONLY; The error additional info.
	AdditionalInfo []*ErrorAdditionalInfo `json:"additionalInfo,omitempty" azure:"ro"`

	// READ-ONLY; The error code.
	Code *string `json:"code,omitempty" azure:"ro"`

	// READ-ONLY; The error details.
	Details []*NewErrorResponse `json:"details,omitempty" azure:"ro"`

	// READ-ONLY; The error message.
	Message *string `json:"message,omitempty" azure:"ro"`

	// READ-ONLY; The error target.
	Target *string `json:"target,omitempty" azure:"ro"`
}

NewErrorResponseError - The error object.

type OperationClient

type OperationClient struct {
	// contains filtered or unexported fields
}

OperationClient contains the methods for the Operation group. Don't use this type directly, use NewOperationClient() instead.

func NewOperationClient

func NewOperationClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*OperationClient, error)

NewOperationClient creates a new instance of OperationClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*OperationClient) Validate

Validate - Validate operation for specified backed up item. This is a synchronous operation. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. parameters - resource validate operation request options - OperationClientValidateOptions contains the optional parameters for the OperationClient.Validate method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/ValidateOperation_RestoreDisk.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewOperationClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Validate(ctx,
		"testVault",
		"testRG",
		&armrecoveryservicesbackup.ValidateIaasVMRestoreOperationRequest{
			ObjectType: to.Ptr("ValidateIaasVMRestoreOperationRequest"),
			RestoreRequest: &armrecoveryservicesbackup.IaasVMRestoreRequest{
				ObjectType:            to.Ptr("IaasVMRestoreRequest"),
				CreateNewCloudService: to.Ptr(true),
				EncryptionDetails: &armrecoveryservicesbackup.EncryptionDetails{
					EncryptionEnabled: to.Ptr(false),
				},
				IdentityInfo: &armrecoveryservicesbackup.IdentityInfo{
					IsSystemAssignedIdentity:  to.Ptr(false),
					ManagedIdentityResourceID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/asmaskarRG1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/asmaskartestmsi"),
				},
				OriginalStorageAccountOption: to.Ptr(false),
				RecoveryPointID:              to.Ptr("348916168024334"),
				RecoveryType:                 to.Ptr(armrecoveryservicesbackup.RecoveryTypeRestoreDisks),
				Region:                       to.Ptr("southeastasia"),
				SourceResourceID:             to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1"),
				StorageAccountID:             to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testingRg/providers/Microsoft.Storage/storageAccounts/testAccount"),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type OperationClientValidateOptions added in v0.2.0

type OperationClientValidateOptions struct {
}

OperationClientValidateOptions contains the optional parameters for the OperationClient.Validate method.

type OperationClientValidateResponse added in v0.2.0

type OperationClientValidateResponse struct {
	ValidateOperationsResponse
}

OperationClientValidateResponse contains the response from method OperationClient.Validate.

type OperationResultInfo

type OperationResultInfo struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// List of jobs created by this operation.
	JobList []*string `json:"jobList,omitempty"`
}

OperationResultInfo - Operation result info.

func (*OperationResultInfo) GetOperationResultInfoBase added in v0.2.0

func (o *OperationResultInfo) GetOperationResultInfoBase() *OperationResultInfoBase

GetOperationResultInfoBase implements the OperationResultInfoBaseClassification interface for type OperationResultInfo.

func (*OperationResultInfo) UnmarshalJSON

func (o *OperationResultInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationResultInfo.

type OperationResultInfoBase

type OperationResultInfoBase struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`
}

OperationResultInfoBase - Base class for operation result info.

func (*OperationResultInfoBase) GetOperationResultInfoBase

func (o *OperationResultInfoBase) GetOperationResultInfoBase() *OperationResultInfoBase

GetOperationResultInfoBase implements the OperationResultInfoBaseClassification interface for type OperationResultInfoBase.

type OperationResultInfoBaseClassification

type OperationResultInfoBaseClassification interface {
	// GetOperationResultInfoBase returns the OperationResultInfoBase content of the underlying type.
	GetOperationResultInfoBase() *OperationResultInfoBase
}

OperationResultInfoBaseClassification provides polymorphic access to related types. Call the interface's GetOperationResultInfoBase() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *ExportJobsOperationResultInfo, *OperationResultInfo, *OperationResultInfoBase

type OperationResultInfoBaseResource

type OperationResultInfoBaseResource struct {
	// HTTP headers associated with this operation.
	Headers map[string][]*string `json:"headers,omitempty"`

	// OperationResultInfoBaseResource operation
	Operation OperationResultInfoBaseClassification `json:"operation,omitempty"`

	// HTTP Status Code of the operation.
	StatusCode *HTTPStatusCode `json:"statusCode,omitempty"`
}

OperationResultInfoBaseResource - Base class for operation result info.

func (*OperationResultInfoBaseResource) UnmarshalJSON

func (o *OperationResultInfoBaseResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationResultInfoBaseResource.

type OperationStatus

type OperationStatus struct {
	// Operation end time. Format: ISO-8601.
	EndTime *time.Time `json:"endTime,omitempty"`

	// Error information related to this operation.
	Error *OperationStatusError `json:"error,omitempty"`

	// ID of the operation.
	ID *string `json:"id,omitempty"`

	// Name of the operation.
	Name *string `json:"name,omitempty"`

	// Additional information associated with this operation.
	Properties OperationStatusExtendedInfoClassification `json:"properties,omitempty"`

	// Operation start time. Format: ISO-8601.
	StartTime *time.Time `json:"startTime,omitempty"`

	// Operation status.
	Status *OperationStatusValues `json:"status,omitempty"`
}

OperationStatus - Operation status.

func (*OperationStatus) UnmarshalJSON

func (o *OperationStatus) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationStatus.

type OperationStatusError

type OperationStatusError struct {
	// Error code of the operation failure.
	Code *string `json:"code,omitempty"`

	// Error message displayed if the operation failure.
	Message *string `json:"message,omitempty"`
}

OperationStatusError - Error information associated with operation status call.

type OperationStatusExtendedInfo

type OperationStatusExtendedInfo struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`
}

OperationStatusExtendedInfo - Base class for additional information of operation status.

func (*OperationStatusExtendedInfo) GetOperationStatusExtendedInfo

func (o *OperationStatusExtendedInfo) GetOperationStatusExtendedInfo() *OperationStatusExtendedInfo

GetOperationStatusExtendedInfo implements the OperationStatusExtendedInfoClassification interface for type OperationStatusExtendedInfo.

type OperationStatusExtendedInfoClassification

type OperationStatusExtendedInfoClassification interface {
	// GetOperationStatusExtendedInfo returns the OperationStatusExtendedInfo content of the underlying type.
	GetOperationStatusExtendedInfo() *OperationStatusExtendedInfo
}

OperationStatusExtendedInfoClassification provides polymorphic access to related types. Call the interface's GetOperationStatusExtendedInfo() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *OperationStatusExtendedInfo, *OperationStatusJobExtendedInfo, *OperationStatusJobsExtendedInfo, *OperationStatusProvisionILRExtendedInfo, - *OperationStatusValidateOperationExtendedInfo

type OperationStatusJobExtendedInfo

type OperationStatusJobExtendedInfo struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// ID of the job created for this protected item.
	JobID *string `json:"jobId,omitempty"`
}

OperationStatusJobExtendedInfo - Operation status job extended info.

func (*OperationStatusJobExtendedInfo) GetOperationStatusExtendedInfo added in v0.2.0

func (o *OperationStatusJobExtendedInfo) GetOperationStatusExtendedInfo() *OperationStatusExtendedInfo

GetOperationStatusExtendedInfo implements the OperationStatusExtendedInfoClassification interface for type OperationStatusJobExtendedInfo.

func (*OperationStatusJobExtendedInfo) UnmarshalJSON

func (o *OperationStatusJobExtendedInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationStatusJobExtendedInfo.

type OperationStatusJobsExtendedInfo

type OperationStatusJobsExtendedInfo struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Stores all the failed jobs along with the corresponding error codes.
	FailedJobsError map[string]*string `json:"failedJobsError,omitempty"`

	// IDs of the jobs created for the protected item.
	JobIDs []*string `json:"jobIds,omitempty"`
}

OperationStatusJobsExtendedInfo - Operation status extended info for list of jobs.

func (*OperationStatusJobsExtendedInfo) GetOperationStatusExtendedInfo added in v0.2.0

func (o *OperationStatusJobsExtendedInfo) GetOperationStatusExtendedInfo() *OperationStatusExtendedInfo

GetOperationStatusExtendedInfo implements the OperationStatusExtendedInfoClassification interface for type OperationStatusJobsExtendedInfo.

func (*OperationStatusJobsExtendedInfo) UnmarshalJSON

func (o *OperationStatusJobsExtendedInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationStatusJobsExtendedInfo.

type OperationStatusProvisionILRExtendedInfo

type OperationStatusProvisionILRExtendedInfo struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Target details for file / folder restore.
	RecoveryTarget *InstantItemRecoveryTarget `json:"recoveryTarget,omitempty"`
}

OperationStatusProvisionILRExtendedInfo - Operation status extended info for ILR provision action.

func (*OperationStatusProvisionILRExtendedInfo) GetOperationStatusExtendedInfo added in v0.2.0

func (o *OperationStatusProvisionILRExtendedInfo) GetOperationStatusExtendedInfo() *OperationStatusExtendedInfo

GetOperationStatusExtendedInfo implements the OperationStatusExtendedInfoClassification interface for type OperationStatusProvisionILRExtendedInfo.

func (*OperationStatusProvisionILRExtendedInfo) UnmarshalJSON

func (o *OperationStatusProvisionILRExtendedInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationStatusProvisionILRExtendedInfo.

type OperationStatusValidateOperationExtendedInfo added in v0.2.0

type OperationStatusValidateOperationExtendedInfo struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Gets the validation operation response
	ValidateOperationResponse *ValidateOperationResponse `json:"validateOperationResponse,omitempty"`
}

OperationStatusValidateOperationExtendedInfo - Operation status extended info for ValidateOperation action.

func (*OperationStatusValidateOperationExtendedInfo) GetOperationStatusExtendedInfo added in v0.2.0

GetOperationStatusExtendedInfo implements the OperationStatusExtendedInfoClassification interface for type OperationStatusValidateOperationExtendedInfo.

func (*OperationStatusValidateOperationExtendedInfo) UnmarshalJSON added in v0.2.0

func (o *OperationStatusValidateOperationExtendedInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationStatusValidateOperationExtendedInfo.

type OperationStatusValues

type OperationStatusValues string

OperationStatusValues - Operation status.

const (
	OperationStatusValuesCanceled   OperationStatusValues = "Canceled"
	OperationStatusValuesFailed     OperationStatusValues = "Failed"
	OperationStatusValuesInProgress OperationStatusValues = "InProgress"
	OperationStatusValuesInvalid    OperationStatusValues = "Invalid"
	OperationStatusValuesSucceeded  OperationStatusValues = "Succeeded"
)

func PossibleOperationStatusValuesValues

func PossibleOperationStatusValuesValues() []OperationStatusValues

PossibleOperationStatusValuesValues returns the possible values for the OperationStatusValues const type.

type OperationType

type OperationType string

OperationType - Re-Do Operation

const (
	OperationTypeInvalid    OperationType = "Invalid"
	OperationTypeRegister   OperationType = "Register"
	OperationTypeReregister OperationType = "Reregister"
)

func PossibleOperationTypeValues

func PossibleOperationTypeValues() []OperationType

PossibleOperationTypeValues returns the possible values for the OperationType const type.

type OperationWorkerResponse

type OperationWorkerResponse struct {
	// HTTP headers associated with this operation.
	Headers map[string][]*string `json:"headers,omitempty"`

	// HTTP Status Code of the operation.
	StatusCode *HTTPStatusCode `json:"statusCode,omitempty"`
}

OperationWorkerResponse - This is the base class for operation result responses.

type OperationsClient

type OperationsClient struct {
	// contains filtered or unexported fields
}

OperationsClient contains the methods for the Operations group. Don't use this type directly, use NewOperationsClient() instead.

func NewOperationsClient

func NewOperationsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*OperationsClient, error)

NewOperationsClient creates a new instance of OperationsClient with the specified values. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*OperationsClient) NewListPager added in v0.5.0

NewListPager - Returns the list of available operations. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 options - OperationsClientListOptions contains the optional parameters for the OperationsClient.List method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/ListOperations.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewOperationsClient(cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := client.NewListPager(nil)
	for pager.More() {
		nextResult, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range nextResult.Value {
			// TODO: use page item
			_ = v
		}
	}
}
Output:

type OperationsClientListOptions added in v0.2.0

type OperationsClientListOptions struct {
}

OperationsClientListOptions contains the optional parameters for the OperationsClient.List method.

type OperationsClientListResponse added in v0.2.0

type OperationsClientListResponse struct {
	ClientDiscoveryResponse
}

OperationsClientListResponse contains the response from method OperationsClient.List.

type OverwriteOptions

type OverwriteOptions string

OverwriteOptions - Can Overwrite if Target DataBase already exists

const (
	OverwriteOptionsFailOnConflict OverwriteOptions = "FailOnConflict"
	OverwriteOptionsInvalid        OverwriteOptions = "Invalid"
	OverwriteOptionsOverwrite      OverwriteOptions = "Overwrite"
)

func PossibleOverwriteOptionsValues

func PossibleOverwriteOptionsValues() []OverwriteOptions

PossibleOverwriteOptionsValues returns the possible values for the OverwriteOptions const type.

type PointInTimeRange

type PointInTimeRange struct {
	// End time of the time range for log recovery.
	EndTime *time.Time `json:"endTime,omitempty"`

	// Start time of the time range for log recovery.
	StartTime *time.Time `json:"startTime,omitempty"`
}

PointInTimeRange - Provides details for log ranges

func (PointInTimeRange) MarshalJSON

func (p PointInTimeRange) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type PointInTimeRange.

func (*PointInTimeRange) UnmarshalJSON

func (p *PointInTimeRange) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type PointInTimeRange.

type PolicyType

type PolicyType string

PolicyType - Type of backup policy type

const (
	PolicyTypeCopyOnlyFull PolicyType = "CopyOnlyFull"
	PolicyTypeDifferential PolicyType = "Differential"
	PolicyTypeFull         PolicyType = "Full"
	PolicyTypeIncremental  PolicyType = "Incremental"
	PolicyTypeInvalid      PolicyType = "Invalid"
	PolicyTypeLog          PolicyType = "Log"
)

func PossiblePolicyTypeValues

func PossiblePolicyTypeValues() []PolicyType

PossiblePolicyTypeValues returns the possible values for the PolicyType const type.

type PreBackupValidation

type PreBackupValidation struct {
	// Error code of protectable item
	Code *string `json:"code,omitempty"`

	// Message corresponding to the error code for the protectable item
	Message *string `json:"message,omitempty"`

	// Status of protectable item, i.e. InProgress,Succeeded,Failed
	Status *InquiryStatus `json:"status,omitempty"`
}

PreBackupValidation - Pre-backup validation for Azure VM Workload provider.

type PreValidateEnableBackupRequest

type PreValidateEnableBackupRequest struct {
	// Configuration of VM if any needs to be validated like OS type etc
	Properties *string `json:"properties,omitempty"`

	// ARM Virtual Machine Id
	ResourceID *string `json:"resourceId,omitempty"`

	// ProtectedItem Type- VM, SqlDataBase, AzureFileShare etc
	ResourceType *DataSourceType `json:"resourceType,omitempty"`

	// ARM id of the Recovery Services Vault
	VaultID *string `json:"vaultId,omitempty"`
}

PreValidateEnableBackupRequest - Contract to validate if backup can be enabled on the given resource in a given vault and given configuration. It will validate followings 1. Vault capacity 2. VM is already protected 3. Any VM related configuration passed in properties.

type PreValidateEnableBackupResponse

type PreValidateEnableBackupResponse struct {
	// Specifies the product specific container name. E.g. iaasvmcontainer;iaasvmcontainer;rgname;vmname. This is required for
	// portal
	ContainerName *string `json:"containerName,omitempty"`

	// Response error code
	ErrorCode *string `json:"errorCode,omitempty"`

	// Response error message
	ErrorMessage *string `json:"errorMessage,omitempty"`

	// Specifies the product specific ds name. E.g. vm;iaasvmcontainer;rgname;vmname. This is required for portal
	ProtectedItemName *string `json:"protectedItemName,omitempty"`

	// Recommended action for user
	Recommendation *string `json:"recommendation,omitempty"`

	// Validation Status
	Status *ValidationStatus `json:"status,omitempty"`
}

PreValidateEnableBackupResponse - Response contract for enable backup validation request

type PrepareDataMoveRequest

type PrepareDataMoveRequest struct {
	// REQUIRED; DataMove Level
	DataMoveLevel *DataMoveLevel `json:"dataMoveLevel,omitempty"`

	// REQUIRED; Target Region
	TargetRegion *string `json:"targetRegion,omitempty"`

	// REQUIRED; ARM Id of target vault
	TargetResourceID *string `json:"targetResourceId,omitempty"`

	// Ignore the artifacts which are already moved.
	IgnoreMoved *bool `json:"ignoreMoved,omitempty"`

	// Source Container ArmIds This needs to be populated only if DataMoveLevel is set to container
	SourceContainerArmIDs []*string `json:"sourceContainerArmIds,omitempty"`
}

PrepareDataMoveRequest - Prepare DataMove Request

func (PrepareDataMoveRequest) MarshalJSON

func (p PrepareDataMoveRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type PrepareDataMoveRequest.

type PrepareDataMoveResponse

type PrepareDataMoveResponse struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Co-relationId for move operation
	CorrelationID *string `json:"correlationId,omitempty"`

	// Source Vault Properties
	SourceVaultProperties map[string]*string `json:"sourceVaultProperties,omitempty"`
}

PrepareDataMoveResponse - Prepare DataMove Response

func (*PrepareDataMoveResponse) GetVaultStorageConfigOperationResultResponse added in v0.2.0

func (p *PrepareDataMoveResponse) GetVaultStorageConfigOperationResultResponse() *VaultStorageConfigOperationResultResponse

GetVaultStorageConfigOperationResultResponse implements the VaultStorageConfigOperationResultResponseClassification interface for type PrepareDataMoveResponse.

func (*PrepareDataMoveResponse) UnmarshalJSON

func (p *PrepareDataMoveResponse) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type PrepareDataMoveResponse.

type PrivateEndpoint

type PrivateEndpoint struct {
	// Gets or sets id
	ID *string `json:"id,omitempty"`
}

PrivateEndpoint - The Private Endpoint network resource that is linked to the Private Endpoint connection

type PrivateEndpointClient

type PrivateEndpointClient struct {
	// contains filtered or unexported fields
}

PrivateEndpointClient contains the methods for the PrivateEndpoint group. Don't use this type directly, use NewPrivateEndpointClient() instead.

func NewPrivateEndpointClient

func NewPrivateEndpointClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*PrivateEndpointClient, error)

NewPrivateEndpointClient creates a new instance of PrivateEndpointClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*PrivateEndpointClient) GetOperationStatus

func (client *PrivateEndpointClient) GetOperationStatus(ctx context.Context, vaultName string, resourceGroupName string, privateEndpointConnectionName string, operationID string, options *PrivateEndpointClientGetOperationStatusOptions) (PrivateEndpointClientGetOperationStatusResponse, error)

GetOperationStatus - Gets the operation status for a private endpoint connection. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. privateEndpointConnectionName - The name of the private endpoint connection. operationID - Operation id options - PrivateEndpointClientGetOperationStatusOptions contains the optional parameters for the PrivateEndpointClient.GetOperationStatus method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewPrivateEndpointClient("04cf684a-d41f-4550-9f70-7708a3a2283b", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.GetOperationStatus(ctx,
		"gaallavaultbvtd2msi",
		"gaallaRG",
		"gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b",
		"0f48183b-0a44-4dca-aec1-bba5daab888a",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type PrivateEndpointClientGetOperationStatusOptions added in v0.2.0

type PrivateEndpointClientGetOperationStatusOptions struct {
}

PrivateEndpointClientGetOperationStatusOptions contains the optional parameters for the PrivateEndpointClient.GetOperationStatus method.

type PrivateEndpointClientGetOperationStatusResponse added in v0.2.0

type PrivateEndpointClientGetOperationStatusResponse struct {
	OperationStatus
}

PrivateEndpointClientGetOperationStatusResponse contains the response from method PrivateEndpointClient.GetOperationStatus.

type PrivateEndpointConnection

type PrivateEndpointConnection struct {
	// Gets or sets private endpoint associated with the private endpoint connection
	PrivateEndpoint *PrivateEndpoint `json:"privateEndpoint,omitempty"`

	// Gets or sets private link service connection state
	PrivateLinkServiceConnectionState *PrivateLinkServiceConnectionState `json:"privateLinkServiceConnectionState,omitempty"`

	// Gets or sets provisioning state of the private endpoint connection
	ProvisioningState *ProvisioningState `json:"provisioningState,omitempty"`
}

PrivateEndpointConnection - Private Endpoint Connection Response Properties

type PrivateEndpointConnectionClient

type PrivateEndpointConnectionClient struct {
	// contains filtered or unexported fields
}

PrivateEndpointConnectionClient contains the methods for the PrivateEndpointConnection group. Don't use this type directly, use NewPrivateEndpointConnectionClient() instead.

func NewPrivateEndpointConnectionClient

func NewPrivateEndpointConnectionClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*PrivateEndpointConnectionClient, error)

NewPrivateEndpointConnectionClient creates a new instance of PrivateEndpointConnectionClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*PrivateEndpointConnectionClient) BeginDelete

func (client *PrivateEndpointConnectionClient) BeginDelete(ctx context.Context, vaultName string, resourceGroupName string, privateEndpointConnectionName string, options *PrivateEndpointConnectionClientBeginDeleteOptions) (*runtime.Poller[PrivateEndpointConnectionClientDeleteResponse], error)

BeginDelete - Delete Private Endpoint requests. This call is made by Backup Admin. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. privateEndpointConnectionName - The name of the private endpoint connection. options - PrivateEndpointConnectionClientBeginDeleteOptions contains the optional parameters for the PrivateEndpointConnectionClient.BeginDelete method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewPrivateEndpointConnectionClient("04cf684a-d41f-4550-9f70-7708a3a2283b", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := client.BeginDelete(ctx,
		"gaallavaultbvtd2msi",
		"gaallaRG",
		"gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
}
Output:

func (*PrivateEndpointConnectionClient) BeginPut

BeginPut - Approve or Reject Private Endpoint requests. This call is made by Backup Admin. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. privateEndpointConnectionName - The name of the private endpoint connection. parameters - Request body for operation options - PrivateEndpointConnectionClientBeginPutOptions contains the optional parameters for the PrivateEndpointConnectionClient.BeginPut method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewPrivateEndpointConnectionClient("04cf684a-d41f-4550-9f70-7708a3a2283b", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := client.BeginPut(ctx,
		"gaallavaultbvtd2msi",
		"gaallaRG",
		"gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b",
		armrecoveryservicesbackup.PrivateEndpointConnectionResource{
			Properties: &armrecoveryservicesbackup.PrivateEndpointConnection{
				PrivateEndpoint: &armrecoveryservicesbackup.PrivateEndpoint{
					ID: to.Ptr("/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3"),
				},
				PrivateLinkServiceConnectionState: &armrecoveryservicesbackup.PrivateLinkServiceConnectionState{
					Description: to.Ptr("Approved by johndoe@company.com"),
					Status:      to.Ptr(armrecoveryservicesbackup.PrivateEndpointConnectionStatusApproved),
				},
				ProvisioningState: to.Ptr(armrecoveryservicesbackup.ProvisioningStateSucceeded),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*PrivateEndpointConnectionClient) Get

func (client *PrivateEndpointConnectionClient) Get(ctx context.Context, vaultName string, resourceGroupName string, privateEndpointConnectionName string, options *PrivateEndpointConnectionClientGetOptions) (PrivateEndpointConnectionClientGetResponse, error)

Get - Get Private Endpoint Connection. This call is made by Backup Admin. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. privateEndpointConnectionName - The name of the private endpoint connection. options - PrivateEndpointConnectionClientGetOptions contains the optional parameters for the PrivateEndpointConnectionClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewPrivateEndpointConnectionClient("04cf684a-d41f-4550-9f70-7708a3a2283b", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"gaallavaultbvtd2msi",
		"gaallaRG",
		"gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type PrivateEndpointConnectionClientBeginDeleteOptions added in v0.2.0

type PrivateEndpointConnectionClientBeginDeleteOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

PrivateEndpointConnectionClientBeginDeleteOptions contains the optional parameters for the PrivateEndpointConnectionClient.BeginDelete method.

type PrivateEndpointConnectionClientBeginPutOptions added in v0.2.0

type PrivateEndpointConnectionClientBeginPutOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

PrivateEndpointConnectionClientBeginPutOptions contains the optional parameters for the PrivateEndpointConnectionClient.BeginPut method.

type PrivateEndpointConnectionClientDeleteResponse added in v0.2.0

type PrivateEndpointConnectionClientDeleteResponse struct {
}

PrivateEndpointConnectionClientDeleteResponse contains the response from method PrivateEndpointConnectionClient.Delete.

type PrivateEndpointConnectionClientGetOptions added in v0.2.0

type PrivateEndpointConnectionClientGetOptions struct {
}

PrivateEndpointConnectionClientGetOptions contains the optional parameters for the PrivateEndpointConnectionClient.Get method.

type PrivateEndpointConnectionClientGetResponse added in v0.2.0

type PrivateEndpointConnectionClientGetResponse struct {
	PrivateEndpointConnectionResource
}

PrivateEndpointConnectionClientGetResponse contains the response from method PrivateEndpointConnectionClient.Get.

type PrivateEndpointConnectionClientPutResponse added in v0.2.0

type PrivateEndpointConnectionClientPutResponse struct {
	PrivateEndpointConnectionResource
}

PrivateEndpointConnectionClientPutResponse contains the response from method PrivateEndpointConnectionClient.Put.

type PrivateEndpointConnectionResource

type PrivateEndpointConnectionResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// PrivateEndpointConnectionResource properties
	Properties *PrivateEndpointConnection `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

PrivateEndpointConnectionResource - Private Endpoint Connection Response Properties

func (PrivateEndpointConnectionResource) MarshalJSON

func (p PrivateEndpointConnectionResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type PrivateEndpointConnectionResource.

type PrivateEndpointConnectionStatus

type PrivateEndpointConnectionStatus string

PrivateEndpointConnectionStatus - Gets or sets the status

const (
	PrivateEndpointConnectionStatusApproved     PrivateEndpointConnectionStatus = "Approved"
	PrivateEndpointConnectionStatusDisconnected PrivateEndpointConnectionStatus = "Disconnected"
	PrivateEndpointConnectionStatusPending      PrivateEndpointConnectionStatus = "Pending"
	PrivateEndpointConnectionStatusRejected     PrivateEndpointConnectionStatus = "Rejected"
)

func PossiblePrivateEndpointConnectionStatusValues

func PossiblePrivateEndpointConnectionStatusValues() []PrivateEndpointConnectionStatus

PossiblePrivateEndpointConnectionStatusValues returns the possible values for the PrivateEndpointConnectionStatus const type.

type PrivateLinkServiceConnectionState

type PrivateLinkServiceConnectionState struct {
	// Gets or sets actions required
	ActionRequired *string `json:"actionRequired,omitempty"`

	// Gets or sets description
	Description *string `json:"description,omitempty"`

	// Gets or sets the status
	Status *PrivateEndpointConnectionStatus `json:"status,omitempty"`
}

PrivateLinkServiceConnectionState - Private Link Service Connection State

type ProtectableContainer

type ProtectableContainer struct {
	// REQUIRED; Type of the container. The value of this property for
	// 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines
	ProtectableContainerType *ContainerType `json:"protectableContainerType,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Fabric Id of the container such as ARM Id.
	ContainerID *string `json:"containerId,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`
}

ProtectableContainer - Protectable Container Class.

func (*ProtectableContainer) GetProtectableContainer

func (p *ProtectableContainer) GetProtectableContainer() *ProtectableContainer

GetProtectableContainer implements the ProtectableContainerClassification interface for type ProtectableContainer.

type ProtectableContainerClassification

type ProtectableContainerClassification interface {
	// GetProtectableContainer returns the ProtectableContainer content of the underlying type.
	GetProtectableContainer() *ProtectableContainer
}

ProtectableContainerClassification provides polymorphic access to related types. Call the interface's GetProtectableContainer() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureStorageProtectableContainer, *AzureVMAppContainerProtectableContainer, *ProtectableContainer

type ProtectableContainerResource

type ProtectableContainerResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// ProtectableContainerResource properties
	Properties ProtectableContainerClassification `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

ProtectableContainerResource - Protectable Container Class.

func (ProtectableContainerResource) MarshalJSON

func (p ProtectableContainerResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProtectableContainerResource.

func (*ProtectableContainerResource) UnmarshalJSON

func (p *ProtectableContainerResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProtectableContainerResource.

type ProtectableContainerResourceList

type ProtectableContainerResourceList struct {
	// The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.
	NextLink *string `json:"nextLink,omitempty"`

	// List of resources.
	Value []*ProtectableContainerResource `json:"value,omitempty"`
}

ProtectableContainerResourceList - List of ProtectableContainer resources

type ProtectableContainersClient

type ProtectableContainersClient struct {
	// contains filtered or unexported fields
}

ProtectableContainersClient contains the methods for the ProtectableContainers group. Don't use this type directly, use NewProtectableContainersClient() instead.

func NewProtectableContainersClient

func NewProtectableContainersClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProtectableContainersClient, error)

NewProtectableContainersClient creates a new instance of ProtectableContainersClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ProtectableContainersClient) NewListPager added in v0.5.0

func (client *ProtectableContainersClient) NewListPager(vaultName string, resourceGroupName string, fabricName string, options *ProtectableContainersClientListOptions) *runtime.Pager[ProtectableContainersClientListResponse]

NewListPager - Lists the containers that can be registered to Recovery Services Vault. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - ProtectableContainersClientListOptions contains the optional parameters for the ProtectableContainersClient.List method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureStorage/ProtectableContainers_List.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectableContainersClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := client.NewListPager("testvault",
		"testRg",
		"Azure",
		&armrecoveryservicesbackup.ProtectableContainersClientListOptions{Filter: to.Ptr("backupManagementType eq 'AzureStorage' and workloadType eq 'AzureFileShare'")})
	for pager.More() {
		nextResult, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range nextResult.Value {
			// TODO: use page item
			_ = v
		}
	}
}
Output:

type ProtectableContainersClientListOptions added in v0.2.0

type ProtectableContainersClientListOptions struct {
	// OData filter options.
	Filter *string
}

ProtectableContainersClientListOptions contains the optional parameters for the ProtectableContainersClient.List method.

type ProtectableContainersClientListResponse added in v0.2.0

type ProtectableContainersClientListResponse struct {
	ProtectableContainerResourceList
}

ProtectableContainersClientListResponse contains the response from method ProtectableContainersClient.List.

type ProtectedItem

type ProtectedItem struct {
	// REQUIRED; backup item type.
	ProtectedItemType *string `json:"protectedItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of the backup set the backup item belongs to
	BackupSetName *string `json:"backupSetName,omitempty"`

	// Unique name of container
	ContainerName *string `json:"containerName,omitempty"`

	// Create mode to indicate recovery of existing soft deleted data source or creation of new data source.
	CreateMode *CreateMode `json:"createMode,omitempty"`

	// Time for deferred deletion in UTC
	DeferredDeleteTimeInUTC *time.Time `json:"deferredDeleteTimeInUTC,omitempty"`

	// Time remaining before the DS marked for deferred delete is permanently deleted
	DeferredDeleteTimeRemaining *string `json:"deferredDeleteTimeRemaining,omitempty"`

	// Flag to identify whether datasource is protected in archive
	IsArchiveEnabled *bool `json:"isArchiveEnabled,omitempty"`

	// Flag to identify whether the deferred deleted DS is to be purged soon
	IsDeferredDeleteScheduleUpcoming *bool `json:"isDeferredDeleteScheduleUpcoming,omitempty"`

	// Flag to identify that deferred deleted DS is to be moved into Pause state
	IsRehydrate *bool `json:"isRehydrate,omitempty"`

	// Flag to identify whether the DS is scheduled for deferred delete
	IsScheduledForDeferredDelete *bool `json:"isScheduledForDeferredDelete,omitempty"`

	// Timestamp when the last (latest) backup copy was created for this backup item.
	LastRecoveryPoint *time.Time `json:"lastRecoveryPoint,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Name of the policy used for protection
	PolicyName *string `json:"policyName,omitempty"`

	// ResourceGuardOperationRequests on which LAC check will be performed
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Type of workload this item represents.
	WorkloadType *DataSourceType `json:"workloadType,omitempty"`
}

ProtectedItem - Base class for backup items.

func (*ProtectedItem) GetProtectedItem

func (p *ProtectedItem) GetProtectedItem() *ProtectedItem

GetProtectedItem implements the ProtectedItemClassification interface for type ProtectedItem.

func (ProtectedItem) MarshalJSON added in v0.2.0

func (p ProtectedItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProtectedItem.

func (*ProtectedItem) UnmarshalJSON

func (p *ProtectedItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProtectedItem.

type ProtectedItemClassification

type ProtectedItemClassification interface {
	// GetProtectedItem returns the ProtectedItem content of the underlying type.
	GetProtectedItem() *ProtectedItem
}

ProtectedItemClassification provides polymorphic access to related types. Call the interface's GetProtectedItem() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureFileshareProtectedItem, *AzureIaaSClassicComputeVMProtectedItem, *AzureIaaSComputeVMProtectedItem, *AzureIaaSVMProtectedItem, - *AzureSQLProtectedItem, *AzureVMWorkloadProtectedItem, *AzureVMWorkloadSAPAseDatabaseProtectedItem, *AzureVMWorkloadSAPHanaDatabaseProtectedItem, - *AzureVMWorkloadSQLDatabaseProtectedItem, *DPMProtectedItem, *GenericProtectedItem, *MabFileFolderProtectedItem, *ProtectedItem

type ProtectedItemHealthStatus

type ProtectedItemHealthStatus string

ProtectedItemHealthStatus - Health status of the backup item, evaluated based on last heartbeat received

const (
	ProtectedItemHealthStatusHealthy      ProtectedItemHealthStatus = "Healthy"
	ProtectedItemHealthStatusIRPending    ProtectedItemHealthStatus = "IRPending"
	ProtectedItemHealthStatusInvalid      ProtectedItemHealthStatus = "Invalid"
	ProtectedItemHealthStatusNotReachable ProtectedItemHealthStatus = "NotReachable"
	ProtectedItemHealthStatusUnhealthy    ProtectedItemHealthStatus = "Unhealthy"
)

func PossibleProtectedItemHealthStatusValues

func PossibleProtectedItemHealthStatusValues() []ProtectedItemHealthStatus

PossibleProtectedItemHealthStatusValues returns the possible values for the ProtectedItemHealthStatus const type.

type ProtectedItemOperationResultsClient

type ProtectedItemOperationResultsClient struct {
	// contains filtered or unexported fields
}

ProtectedItemOperationResultsClient contains the methods for the ProtectedItemOperationResults group. Don't use this type directly, use NewProtectedItemOperationResultsClient() instead.

func NewProtectedItemOperationResultsClient

func NewProtectedItemOperationResultsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProtectedItemOperationResultsClient, error)

NewProtectedItemOperationResultsClient creates a new instance of ProtectedItemOperationResultsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ProtectedItemOperationResultsClient) Get

func (client *ProtectedItemOperationResultsClient) Get(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, protectedItemName string, operationID string, options *ProtectedItemOperationResultsClientGetOptions) (ProtectedItemOperationResultsClientGetResponse, error)

Get - Fetches the result of any operation on the backup item. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the backup item. containerName - Container name associated with the backup item. protectedItemName - Backup item name whose details are to be fetched. operationID - OperationID which represents the operation whose result needs to be fetched. options - ProtectedItemOperationResultsClientGetOptions contains the optional parameters for the ProtectedItemOperationResultsClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/ProtectedItemOperationResults.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectedItemOperationResultsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"Azure",
		"IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1",
		"VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type ProtectedItemOperationResultsClientGetOptions added in v0.2.0

type ProtectedItemOperationResultsClientGetOptions struct {
}

ProtectedItemOperationResultsClientGetOptions contains the optional parameters for the ProtectedItemOperationResultsClient.Get method.

type ProtectedItemOperationResultsClientGetResponse added in v0.2.0

type ProtectedItemOperationResultsClientGetResponse struct {
	ProtectedItemResource
}

ProtectedItemOperationResultsClientGetResponse contains the response from method ProtectedItemOperationResultsClient.Get.

type ProtectedItemOperationStatusesClient

type ProtectedItemOperationStatusesClient struct {
	// contains filtered or unexported fields
}

ProtectedItemOperationStatusesClient contains the methods for the ProtectedItemOperationStatuses group. Don't use this type directly, use NewProtectedItemOperationStatusesClient() instead.

func NewProtectedItemOperationStatusesClient

func NewProtectedItemOperationStatusesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProtectedItemOperationStatusesClient, error)

NewProtectedItemOperationStatusesClient creates a new instance of ProtectedItemOperationStatusesClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ProtectedItemOperationStatusesClient) Get

func (client *ProtectedItemOperationStatusesClient) Get(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, protectedItemName string, operationID string, options *ProtectedItemOperationStatusesClientGetOptions) (ProtectedItemOperationStatusesClientGetResponse, error)

Get - Fetches the status of an operation such as triggering a backup, restore. The status can be in progress, completed or failed. You can refer to the OperationStatus enum for all the possible states of the operation. Some operations create jobs. This method returns the list of jobs associated with the operation. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the backup item. containerName - Container name associated with the backup item. protectedItemName - Backup item name whose details are to be fetched. operationID - OperationID represents the operation whose status needs to be fetched. options - ProtectedItemOperationStatusesClientGetOptions contains the optional parameters for the ProtectedItemOperationStatusesClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/ProtectedItemOperationStatus.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectedItemOperationStatusesClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"Azure",
		"IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1",
		"VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type ProtectedItemOperationStatusesClientGetOptions added in v0.2.0

type ProtectedItemOperationStatusesClientGetOptions struct {
}

ProtectedItemOperationStatusesClientGetOptions contains the optional parameters for the ProtectedItemOperationStatusesClient.Get method.

type ProtectedItemOperationStatusesClientGetResponse added in v0.2.0

type ProtectedItemOperationStatusesClientGetResponse struct {
	OperationStatus
}

ProtectedItemOperationStatusesClientGetResponse contains the response from method ProtectedItemOperationStatusesClient.Get.

type ProtectedItemQueryObject

type ProtectedItemQueryObject struct {
	// Backup Engine name
	BackupEngineName *string `json:"backupEngineName,omitempty"`

	// Backup management type for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Name of the backup set.
	BackupSetName *string `json:"backupSetName,omitempty"`

	// Name of the container.
	ContainerName *string `json:"containerName,omitempty"`

	// Name of the fabric.
	FabricName *string `json:"fabricName,omitempty"`

	// Friendly name of protected item
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Health State for the backed up item.
	HealthState *HealthState `json:"healthState,omitempty"`

	// Type of workload this item represents.
	ItemType *DataSourceType `json:"itemType,omitempty"`

	// Backup policy name associated with the backup item.
	PolicyName *string `json:"policyName,omitempty"`
}

ProtectedItemQueryObject - Filters to list backup items.

type ProtectedItemResource

type ProtectedItemResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// ProtectedItemResource properties
	Properties ProtectedItemClassification `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

ProtectedItemResource - Base class for backup items.

func (ProtectedItemResource) MarshalJSON

func (p ProtectedItemResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProtectedItemResource.

func (*ProtectedItemResource) UnmarshalJSON

func (p *ProtectedItemResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProtectedItemResource.

type ProtectedItemResourceList

type ProtectedItemResourceList struct {
	// The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.
	NextLink *string `json:"nextLink,omitempty"`

	// List of resources.
	Value []*ProtectedItemResource `json:"value,omitempty"`
}

ProtectedItemResourceList - List of ProtectedItem resources

type ProtectedItemState

type ProtectedItemState string

ProtectedItemState - Backup state of the backed up item.

const (
	ProtectedItemStateIRPending         ProtectedItemState = "IRPending"
	ProtectedItemStateInvalid           ProtectedItemState = "Invalid"
	ProtectedItemStateProtected         ProtectedItemState = "Protected"
	ProtectedItemStateProtectionError   ProtectedItemState = "ProtectionError"
	ProtectedItemStateProtectionPaused  ProtectedItemState = "ProtectionPaused"
	ProtectedItemStateProtectionStopped ProtectedItemState = "ProtectionStopped"
)

func PossibleProtectedItemStateValues

func PossibleProtectedItemStateValues() []ProtectedItemState

PossibleProtectedItemStateValues returns the possible values for the ProtectedItemState const type.

type ProtectedItemsClient

type ProtectedItemsClient struct {
	// contains filtered or unexported fields
}

ProtectedItemsClient contains the methods for the ProtectedItems group. Don't use this type directly, use NewProtectedItemsClient() instead.

func NewProtectedItemsClient

func NewProtectedItemsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProtectedItemsClient, error)

NewProtectedItemsClient creates a new instance of ProtectedItemsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ProtectedItemsClient) CreateOrUpdate

func (client *ProtectedItemsClient) CreateOrUpdate(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, protectedItemName string, parameters ProtectedItemResource, options *ProtectedItemsClientCreateOrUpdateOptions) (ProtectedItemsClientCreateOrUpdateResponse, error)

CreateOrUpdate - Enables backup of an item or to modifies the backup policy information of an already backed up item. This is an asynchronous operation. To know the status of the operation, call the GetItemOperationResult API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the backup item. containerName - Container name associated with the backup item. protectedItemName - Item name to be backed up. parameters - resource backed up item options - ProtectedItemsClientCreateOrUpdateOptions contains the optional parameters for the ProtectedItemsClient.CreateOrUpdate method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/ConfigureProtection.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectedItemsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.CreateOrUpdate(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"Azure",
		"IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1",
		"VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1",
		armrecoveryservicesbackup.ProtectedItemResource{
			Properties: &armrecoveryservicesbackup.AzureIaaSComputeVMProtectedItem{
				PolicyID:          to.Ptr("/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/DefaultPolicy"),
				ProtectedItemType: to.Ptr("Microsoft.Compute/virtualMachines"),
				SourceResourceID:  to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1"),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*ProtectedItemsClient) Delete

func (client *ProtectedItemsClient) Delete(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, protectedItemName string, options *ProtectedItemsClientDeleteOptions) (ProtectedItemsClientDeleteResponse, error)

Delete - Used to disable backup of an item within a container. This is an asynchronous operation. To know the status of the request, call the GetItemOperationResult API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the backed up item. containerName - Container name associated with the backed up item. protectedItemName - Backed up item to be deleted. options - ProtectedItemsClientDeleteOptions contains the optional parameters for the ProtectedItemsClient.Delete method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/ProtectedItem_Delete.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectedItemsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Delete(ctx,
		"PySDKBackupTestRsVault",
		"PythonSDKBackupTestRg",
		"Azure",
		"iaasvmcontainer;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1",
		"vm;iaasvmcontainerv2;pysdktestrg;pysdktestv2vm1",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

func (*ProtectedItemsClient) Get

func (client *ProtectedItemsClient) Get(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, protectedItemName string, options *ProtectedItemsClientGetOptions) (ProtectedItemsClientGetResponse, error)

Get - Provides the details of the backed up item. This is an asynchronous operation. To know the status of the operation, call the GetItemOperationResult API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the backed up item. containerName - Container name associated with the backed up item. protectedItemName - Backed up item name whose details are to be fetched. options - ProtectedItemsClientGetOptions contains the optional parameters for the ProtectedItemsClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/ClassicCompute_ProtectedItem_Get.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectedItemsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"PySDKBackupTestRsVault",
		"PythonSDKBackupTestRg",
		"Azure",
		"iaasvmcontainer;iaasvmcontainer;iaasvm-rg;iaasvm-1",
		"vm;iaasvmcontainer;iaasvm-rg;iaasvm-1",
		&armrecoveryservicesbackup.ProtectedItemsClientGetOptions{Filter: nil})
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type ProtectedItemsClientCreateOrUpdateOptions added in v0.2.0

type ProtectedItemsClientCreateOrUpdateOptions struct {
}

ProtectedItemsClientCreateOrUpdateOptions contains the optional parameters for the ProtectedItemsClient.CreateOrUpdate method.

type ProtectedItemsClientCreateOrUpdateResponse added in v0.2.0

type ProtectedItemsClientCreateOrUpdateResponse struct {
	ProtectedItemResource
}

ProtectedItemsClientCreateOrUpdateResponse contains the response from method ProtectedItemsClient.CreateOrUpdate.

type ProtectedItemsClientDeleteOptions added in v0.2.0

type ProtectedItemsClientDeleteOptions struct {
}

ProtectedItemsClientDeleteOptions contains the optional parameters for the ProtectedItemsClient.Delete method.

type ProtectedItemsClientDeleteResponse added in v0.2.0

type ProtectedItemsClientDeleteResponse struct {
}

ProtectedItemsClientDeleteResponse contains the response from method ProtectedItemsClient.Delete.

type ProtectedItemsClientGetOptions added in v0.2.0

type ProtectedItemsClientGetOptions struct {
	// OData filter options.
	Filter *string
}

ProtectedItemsClientGetOptions contains the optional parameters for the ProtectedItemsClient.Get method.

type ProtectedItemsClientGetResponse added in v0.2.0

type ProtectedItemsClientGetResponse struct {
	ProtectedItemResource
}

ProtectedItemsClientGetResponse contains the response from method ProtectedItemsClient.Get.

type ProtectionContainer

type ProtectionContainer struct {
	// REQUIRED; Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines
	// 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows
	// machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer.
	// 6. Azure workload Backup is VMAppContainer
	ContainerType *ContainerType `json:"containerType,omitempty"`

	// Type of backup management for the container.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Friendly name of the container.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// Status of health of the container.
	HealthStatus *string `json:"healthStatus,omitempty"`

	// Type of the protectable object associated with this container
	ProtectableObjectType *string `json:"protectableObjectType,omitempty"`

	// Status of registration of the container with the Recovery Services Vault.
	RegistrationStatus *string `json:"registrationStatus,omitempty"`
}

ProtectionContainer - Base class for container with backup items. Containers with specific workloads are derived from this class.

func (*ProtectionContainer) GetProtectionContainer

func (p *ProtectionContainer) GetProtectionContainer() *ProtectionContainer

GetProtectionContainer implements the ProtectionContainerClassification interface for type ProtectionContainer.

type ProtectionContainerClassification

type ProtectionContainerClassification interface {
	// GetProtectionContainer returns the ProtectionContainer content of the underlying type.
	GetProtectionContainer() *ProtectionContainer
}

ProtectionContainerClassification provides polymorphic access to related types. Call the interface's GetProtectionContainer() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureBackupServerContainer, *AzureIaaSClassicComputeVMContainer, *AzureIaaSComputeVMContainer, *AzureSQLAGWorkloadContainerProtectionContainer, - *AzureSQLContainer, *AzureStorageContainer, *AzureVMAppContainerProtectionContainer, *AzureWorkloadContainer, *DpmContainer, - *GenericContainer, *IaaSVMContainer, *MabContainer, *ProtectionContainer

type ProtectionContainerOperationResultsClient

type ProtectionContainerOperationResultsClient struct {
	// contains filtered or unexported fields
}

ProtectionContainerOperationResultsClient contains the methods for the ProtectionContainerOperationResults group. Don't use this type directly, use NewProtectionContainerOperationResultsClient() instead.

func NewProtectionContainerOperationResultsClient

func NewProtectionContainerOperationResultsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProtectionContainerOperationResultsClient, error)

NewProtectionContainerOperationResultsClient creates a new instance of ProtectionContainerOperationResultsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ProtectionContainerOperationResultsClient) Get

Get - Fetches the result of any operation on the container. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the container. containerName - Container name whose information should be fetched. operationID - Operation ID which represents the operation whose result needs to be fetched. options - ProtectionContainerOperationResultsClientGetOptions contains the optional parameters for the ProtectionContainerOperationResultsClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureStorage/ProtectionContainers_Inquire_Result.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionContainerOperationResultsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"testvault",
		"test-rg",
		"Azure",
		"VMAppContainer;Compute;testRG;testSQL",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type ProtectionContainerOperationResultsClientGetOptions added in v0.2.0

type ProtectionContainerOperationResultsClientGetOptions struct {
}

ProtectionContainerOperationResultsClientGetOptions contains the optional parameters for the ProtectionContainerOperationResultsClient.Get method.

type ProtectionContainerOperationResultsClientGetResponse added in v0.2.0

type ProtectionContainerOperationResultsClientGetResponse struct {
	ProtectionContainerResource
}

ProtectionContainerOperationResultsClientGetResponse contains the response from method ProtectionContainerOperationResultsClient.Get.

type ProtectionContainerRefreshOperationResultsClient

type ProtectionContainerRefreshOperationResultsClient struct {
	// contains filtered or unexported fields
}

ProtectionContainerRefreshOperationResultsClient contains the methods for the ProtectionContainerRefreshOperationResults group. Don't use this type directly, use NewProtectionContainerRefreshOperationResultsClient() instead.

func NewProtectionContainerRefreshOperationResultsClient

func NewProtectionContainerRefreshOperationResultsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProtectionContainerRefreshOperationResultsClient, error)

NewProtectionContainerRefreshOperationResultsClient creates a new instance of ProtectionContainerRefreshOperationResultsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ProtectionContainerRefreshOperationResultsClient) Get

Get - Provides the result of the refresh operation triggered by the BeginRefresh operation. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the container. operationID - Operation ID associated with the operation whose result needs to be fetched. options - ProtectionContainerRefreshOperationResultsClientGetOptions contains the optional parameters for the ProtectionContainerRefreshOperationResultsClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/RefreshContainers_OperationResults.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionContainerRefreshOperationResultsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Get(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"Azure",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

type ProtectionContainerRefreshOperationResultsClientGetOptions added in v0.2.0

type ProtectionContainerRefreshOperationResultsClientGetOptions struct {
}

ProtectionContainerRefreshOperationResultsClientGetOptions contains the optional parameters for the ProtectionContainerRefreshOperationResultsClient.Get method.

type ProtectionContainerRefreshOperationResultsClientGetResponse added in v0.2.0

type ProtectionContainerRefreshOperationResultsClientGetResponse struct {
}

ProtectionContainerRefreshOperationResultsClientGetResponse contains the response from method ProtectionContainerRefreshOperationResultsClient.Get.

type ProtectionContainerResource

type ProtectionContainerResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// ProtectionContainerResource properties
	Properties ProtectionContainerClassification `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

ProtectionContainerResource - Base class for container with backup items. Containers with specific workloads are derived from this class.

func (ProtectionContainerResource) MarshalJSON

func (p ProtectionContainerResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProtectionContainerResource.

func (*ProtectionContainerResource) UnmarshalJSON

func (p *ProtectionContainerResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProtectionContainerResource.

type ProtectionContainerResourceList

type ProtectionContainerResourceList struct {
	// The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.
	NextLink *string `json:"nextLink,omitempty"`

	// List of resources.
	Value []*ProtectionContainerResource `json:"value,omitempty"`
}

ProtectionContainerResourceList - List of ProtectionContainer resources

type ProtectionContainersClient

type ProtectionContainersClient struct {
	// contains filtered or unexported fields
}

ProtectionContainersClient contains the methods for the ProtectionContainers group. Don't use this type directly, use NewProtectionContainersClient() instead.

func NewProtectionContainersClient

func NewProtectionContainersClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProtectionContainersClient, error)

NewProtectionContainersClient creates a new instance of ProtectionContainersClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ProtectionContainersClient) Get

func (client *ProtectionContainersClient) Get(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, options *ProtectionContainersClientGetOptions) (ProtectionContainersClientGetResponse, error)

Get - Gets details of the specific container registered to your Recovery Services Vault. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Name of the fabric where the container belongs. containerName - Name of the container whose details need to be fetched. options - ProtectionContainersClientGetOptions contains the optional parameters for the ProtectionContainersClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureWorkload/ProtectionContainers_Get.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionContainersClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"testVault",
		"testRg",
		"Azure",
		"VMAppContainer;Compute;testRG;testSQL",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*ProtectionContainersClient) Inquire

func (client *ProtectionContainersClient) Inquire(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, options *ProtectionContainersClientInquireOptions) (ProtectionContainersClientInquireResponse, error)

Inquire - This is an async operation and the results should be tracked using location header or Azure-async-url. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric Name associated with the container. containerName - Name of the container in which inquiry needs to be triggered. options - ProtectionContainersClientInquireOptions contains the optional parameters for the ProtectionContainersClient.Inquire method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureStorage/ProtectionContainers_Inquire.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionContainersClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Inquire(ctx,
		"testvault",
		"test-rg",
		"Azure",
		"storagecontainer;Storage;test-rg;teststorage",
		&armrecoveryservicesbackup.ProtectionContainersClientInquireOptions{Filter: nil})
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

func (*ProtectionContainersClient) Refresh

Refresh - Discovers all the containers in the subscription that can be backed up to Recovery Services Vault. This is an asynchronous operation. To know the status of the operation, call GetRefreshOperationResult API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated the container. options - ProtectionContainersClientRefreshOptions contains the optional parameters for the ProtectionContainersClient.Refresh method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/RefreshContainers.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionContainersClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Refresh(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"Azure",
		&armrecoveryservicesbackup.ProtectionContainersClientRefreshOptions{Filter: nil})
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

func (*ProtectionContainersClient) Register

func (client *ProtectionContainersClient) Register(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, parameters ProtectionContainerResource, options *ProtectionContainersClientRegisterOptions) (ProtectionContainersClientRegisterResponse, error)

Register - Registers the container with Recovery Services vault. This is an asynchronous operation. To track the operation status, use location header to call get latest status of the operation. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the container. containerName - Name of the container to be registered. parameters - Request body for operation options - ProtectionContainersClientRegisterOptions contains the optional parameters for the ProtectionContainersClient.Register method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureStorage/ProtectionContainers_Register.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionContainersClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Register(ctx,
		"swaggertestvault",
		"SwaggerTestRg",
		"Azure",
		"StorageContainer;Storage;SwaggerTestRg;swaggertestsa",
		armrecoveryservicesbackup.ProtectionContainerResource{
			Properties: &armrecoveryservicesbackup.AzureStorageContainer{
				BackupManagementType:      to.Ptr(armrecoveryservicesbackup.BackupManagementTypeAzureStorage),
				ContainerType:             to.Ptr(armrecoveryservicesbackup.ContainerTypeStorageContainer),
				FriendlyName:              to.Ptr("swaggertestsa"),
				AcquireStorageAccountLock: to.Ptr(armrecoveryservicesbackup.AcquireStorageAccountLockAcquire),
				SourceResourceID:          to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/SwaggerTestRg/providers/Microsoft.Storage/storageAccounts/swaggertestsa"),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*ProtectionContainersClient) Unregister

func (client *ProtectionContainersClient) Unregister(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, options *ProtectionContainersClientUnregisterOptions) (ProtectionContainersClientUnregisterResponse, error)

Unregister - Unregisters the given container from your Recovery Services Vault. This is an asynchronous operation. To determine whether the backend service has finished processing the request, call Get Container Operation Result API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Name of the fabric where the container belongs. containerName - Name of the container which needs to be unregistered from the Recovery Services Vault. options - ProtectionContainersClientUnregisterOptions contains the optional parameters for the ProtectionContainersClient.Unregister method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureWorkload/ProtectionContainers_Unregister.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionContainersClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Unregister(ctx,
		"testVault",
		"testRg",
		"Azure",
		"storagecontainer;Storage;test-rg;teststorage",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

type ProtectionContainersClientGetOptions added in v0.2.0

type ProtectionContainersClientGetOptions struct {
}

ProtectionContainersClientGetOptions contains the optional parameters for the ProtectionContainersClient.Get method.

type ProtectionContainersClientGetResponse added in v0.2.0

type ProtectionContainersClientGetResponse struct {
	ProtectionContainerResource
}

ProtectionContainersClientGetResponse contains the response from method ProtectionContainersClient.Get.

type ProtectionContainersClientInquireOptions added in v0.2.0

type ProtectionContainersClientInquireOptions struct {
	// OData filter options.
	Filter *string
}

ProtectionContainersClientInquireOptions contains the optional parameters for the ProtectionContainersClient.Inquire method.

type ProtectionContainersClientInquireResponse added in v0.2.0

type ProtectionContainersClientInquireResponse struct {
}

ProtectionContainersClientInquireResponse contains the response from method ProtectionContainersClient.Inquire.

type ProtectionContainersClientRefreshOptions added in v0.2.0

type ProtectionContainersClientRefreshOptions struct {
	// OData filter options.
	Filter *string
}

ProtectionContainersClientRefreshOptions contains the optional parameters for the ProtectionContainersClient.Refresh method.

type ProtectionContainersClientRefreshResponse added in v0.2.0

type ProtectionContainersClientRefreshResponse struct {
}

ProtectionContainersClientRefreshResponse contains the response from method ProtectionContainersClient.Refresh.

type ProtectionContainersClientRegisterOptions added in v0.2.0

type ProtectionContainersClientRegisterOptions struct {
}

ProtectionContainersClientRegisterOptions contains the optional parameters for the ProtectionContainersClient.Register method.

type ProtectionContainersClientRegisterResponse added in v0.2.0

type ProtectionContainersClientRegisterResponse struct {
	ProtectionContainerResource
}

ProtectionContainersClientRegisterResponse contains the response from method ProtectionContainersClient.Register.

type ProtectionContainersClientUnregisterOptions added in v0.2.0

type ProtectionContainersClientUnregisterOptions struct {
}

ProtectionContainersClientUnregisterOptions contains the optional parameters for the ProtectionContainersClient.Unregister method.

type ProtectionContainersClientUnregisterResponse added in v0.2.0

type ProtectionContainersClientUnregisterResponse struct {
}

ProtectionContainersClientUnregisterResponse contains the response from method ProtectionContainersClient.Unregister.

type ProtectionIntent

type ProtectionIntent struct {
	// REQUIRED; backup protectionIntent type.
	ProtectionIntentItemType *ProtectionIntentItemType `json:"protectionIntentItemType,omitempty"`

	// Type of backup management for the backed up item.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// ID of the item which is getting protected, In case of Azure Vm , it is ProtectedItemId
	ItemID *string `json:"itemId,omitempty"`

	// ID of the backup policy with which this item is backed up.
	PolicyID *string `json:"policyId,omitempty"`

	// Backup state of this backup item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// ARM ID of the resource to be backed up.
	SourceResourceID *string `json:"sourceResourceId,omitempty"`
}

ProtectionIntent - Base class for backup ProtectionIntent.

func (*ProtectionIntent) GetProtectionIntent

func (p *ProtectionIntent) GetProtectionIntent() *ProtectionIntent

GetProtectionIntent implements the ProtectionIntentClassification interface for type ProtectionIntent.

type ProtectionIntentClassification

type ProtectionIntentClassification interface {
	// GetProtectionIntent returns the ProtectionIntent content of the underlying type.
	GetProtectionIntent() *ProtectionIntent
}

ProtectionIntentClassification provides polymorphic access to related types. Call the interface's GetProtectionIntent() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureRecoveryServiceVaultProtectionIntent, *AzureResourceProtectionIntent, *AzureWorkloadAutoProtectionIntent, *AzureWorkloadContainerAutoProtectionIntent, - *AzureWorkloadSQLAutoProtectionIntent, *ProtectionIntent

type ProtectionIntentClient

type ProtectionIntentClient struct {
	// contains filtered or unexported fields
}

ProtectionIntentClient contains the methods for the ProtectionIntent group. Don't use this type directly, use NewProtectionIntentClient() instead.

func NewProtectionIntentClient

func NewProtectionIntentClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProtectionIntentClient, error)

NewProtectionIntentClient creates a new instance of ProtectionIntentClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ProtectionIntentClient) CreateOrUpdate

func (client *ProtectionIntentClient) CreateOrUpdate(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, intentObjectName string, parameters ProtectionIntentResource, options *ProtectionIntentClientCreateOrUpdateOptions) (ProtectionIntentClientCreateOrUpdateResponse, error)

CreateOrUpdate - Create Intent for Enabling backup of an item. This is a synchronous operation. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the backup item. intentObjectName - Intent object name. parameters - resource backed up item options - ProtectionIntentClientCreateOrUpdateOptions contains the optional parameters for the ProtectionIntentClient.CreateOrUpdate method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/ProtectionIntent_CreateOrUpdate.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionIntentClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.CreateOrUpdate(ctx,
		"myVault",
		"myRG",
		"Azure",
		"vm;iaasvmcontainerv2;chamsrgtest;chamscandel",
		armrecoveryservicesbackup.ProtectionIntentResource{
			Properties: &armrecoveryservicesbackup.AzureResourceProtectionIntent{
				PolicyID:                 to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy"),
				ProtectionIntentItemType: to.Ptr(armrecoveryservicesbackup.ProtectionIntentItemTypeAzureResourceItem),
				SourceResourceID:         to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/chamsrgtest/providers/Microsoft.Compute/virtualMachines/chamscandel"),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*ProtectionIntentClient) Delete

func (client *ProtectionIntentClient) Delete(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, intentObjectName string, options *ProtectionIntentClientDeleteOptions) (ProtectionIntentClientDeleteResponse, error)

Delete - Used to remove intent from an item If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the intent. intentObjectName - Intent to be deleted. options - ProtectionIntentClientDeleteOptions contains the optional parameters for the ProtectionIntentClient.Delete method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureWorkload/BackupProtectionIntent_Delete.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionIntentClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Delete(ctx,
		"myVault",
		"myRG",
		"Azure",
		"249D9B07-D2EF-4202-AA64-65F35418564E",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

func (*ProtectionIntentClient) Get

func (client *ProtectionIntentClient) Get(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, intentObjectName string, options *ProtectionIntentClientGetOptions) (ProtectionIntentClientGetResponse, error)

Get - Provides the details of the protection intent up item. This is an asynchronous operation. To know the status of the operation, call the GetItemOperationResult API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the backed up item. intentObjectName - Backed up item name whose details are to be fetched. options - ProtectionIntentClientGetOptions contains the optional parameters for the ProtectionIntentClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureWorkload/BackupProtectionIntent_Get.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionIntentClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"myVault",
		"myRG",
		"Azure",
		"249D9B07-D2EF-4202-AA64-65F35418564E",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*ProtectionIntentClient) Validate

Validate - It will validate followings 1. Vault capacity 2. VM is already protected 3. Any VM related configuration passed in properties. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 azureRegion - Azure region to hit Api parameters - Enable backup validation request on Virtual Machine options - ProtectionIntentClientValidateOptions contains the optional parameters for the ProtectionIntentClient.Validate method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/ProtectionIntent_Validate.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionIntentClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Validate(ctx,
		"southeastasia",
		armrecoveryservicesbackup.PreValidateEnableBackupRequest{
			Properties:   to.Ptr(""),
			ResourceID:   to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/arunaupgrade/providers/Microsoft.Compute/VirtualMachines/upgrade1"),
			ResourceType: to.Ptr(armrecoveryservicesbackup.DataSourceTypeVM),
			VaultID:      to.Ptr("/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/Vaults/myVault"),
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type ProtectionIntentClientCreateOrUpdateOptions added in v0.2.0

type ProtectionIntentClientCreateOrUpdateOptions struct {
}

ProtectionIntentClientCreateOrUpdateOptions contains the optional parameters for the ProtectionIntentClient.CreateOrUpdate method.

type ProtectionIntentClientCreateOrUpdateResponse added in v0.2.0

type ProtectionIntentClientCreateOrUpdateResponse struct {
	ProtectionIntentResource
}

ProtectionIntentClientCreateOrUpdateResponse contains the response from method ProtectionIntentClient.CreateOrUpdate.

type ProtectionIntentClientDeleteOptions added in v0.2.0

type ProtectionIntentClientDeleteOptions struct {
}

ProtectionIntentClientDeleteOptions contains the optional parameters for the ProtectionIntentClient.Delete method.

type ProtectionIntentClientDeleteResponse added in v0.2.0

type ProtectionIntentClientDeleteResponse struct {
}

ProtectionIntentClientDeleteResponse contains the response from method ProtectionIntentClient.Delete.

type ProtectionIntentClientGetOptions added in v0.2.0

type ProtectionIntentClientGetOptions struct {
}

ProtectionIntentClientGetOptions contains the optional parameters for the ProtectionIntentClient.Get method.

type ProtectionIntentClientGetResponse added in v0.2.0

type ProtectionIntentClientGetResponse struct {
	ProtectionIntentResource
}

ProtectionIntentClientGetResponse contains the response from method ProtectionIntentClient.Get.

type ProtectionIntentClientValidateOptions added in v0.2.0

type ProtectionIntentClientValidateOptions struct {
}

ProtectionIntentClientValidateOptions contains the optional parameters for the ProtectionIntentClient.Validate method.

type ProtectionIntentClientValidateResponse added in v0.2.0

type ProtectionIntentClientValidateResponse struct {
	PreValidateEnableBackupResponse
}

ProtectionIntentClientValidateResponse contains the response from method ProtectionIntentClient.Validate.

type ProtectionIntentItemType added in v0.2.0

type ProtectionIntentItemType string

ProtectionIntentItemType - backup protectionIntent type.

const (
	ProtectionIntentItemTypeAzureResourceItem                          ProtectionIntentItemType = "AzureResourceItem"
	ProtectionIntentItemTypeAzureWorkloadAutoProtectionIntent          ProtectionIntentItemType = "AzureWorkloadAutoProtectionIntent"
	ProtectionIntentItemTypeAzureWorkloadContainerAutoProtectionIntent ProtectionIntentItemType = "AzureWorkloadContainerAutoProtectionIntent"
	ProtectionIntentItemTypeAzureWorkloadSQLAutoProtectionIntent       ProtectionIntentItemType = "AzureWorkloadSQLAutoProtectionIntent"
	ProtectionIntentItemTypeInvalid                                    ProtectionIntentItemType = "Invalid"
	ProtectionIntentItemTypeRecoveryServiceVaultItem                   ProtectionIntentItemType = "RecoveryServiceVaultItem"
)

func PossibleProtectionIntentItemTypeValues added in v0.2.0

func PossibleProtectionIntentItemTypeValues() []ProtectionIntentItemType

PossibleProtectionIntentItemTypeValues returns the possible values for the ProtectionIntentItemType const type.

type ProtectionIntentQueryObject

type ProtectionIntentQueryObject struct {
	// Backup management type for the backed up item
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Item name of the intent
	ItemName *string `json:"itemName,omitempty"`

	// Type of workload this item represents
	ItemType *IntentItemType `json:"itemType,omitempty"`

	// Parent name of the intent
	ParentName *string `json:"parentName,omitempty"`
}

ProtectionIntentQueryObject - Filters to list protection intent.

type ProtectionIntentResource

type ProtectionIntentResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// ProtectionIntentResource properties
	Properties ProtectionIntentClassification `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

ProtectionIntentResource - Base class for backup ProtectionIntent.

func (ProtectionIntentResource) MarshalJSON

func (p ProtectionIntentResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProtectionIntentResource.

func (*ProtectionIntentResource) UnmarshalJSON

func (p *ProtectionIntentResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProtectionIntentResource.

type ProtectionIntentResourceList

type ProtectionIntentResourceList struct {
	// The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.
	NextLink *string `json:"nextLink,omitempty"`

	// List of resources.
	Value []*ProtectionIntentResource `json:"value,omitempty"`
}

ProtectionIntentResourceList - List of ProtectionIntent resources

type ProtectionPoliciesClient

type ProtectionPoliciesClient struct {
	// contains filtered or unexported fields
}

ProtectionPoliciesClient contains the methods for the ProtectionPolicies group. Don't use this type directly, use NewProtectionPoliciesClient() instead.

func NewProtectionPoliciesClient

func NewProtectionPoliciesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProtectionPoliciesClient, error)

NewProtectionPoliciesClient creates a new instance of ProtectionPoliciesClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ProtectionPoliciesClient) BeginDelete

BeginDelete - Deletes specified backup policy from your Recovery Services Vault. This is an asynchronous operation. Status of the operation can be fetched using GetProtectionPolicyOperationResult API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. policyName - Backup policy to be deleted. options - ProtectionPoliciesClientBeginDeleteOptions contains the optional parameters for the ProtectionPoliciesClient.BeginDelete method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/ProtectionPolicies_Delete.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionPoliciesClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := client.BeginDelete(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"testPolicy1",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
}
Output:

func (*ProtectionPoliciesClient) CreateOrUpdate

CreateOrUpdate - Creates or modifies a backup policy. This is an asynchronous operation. Status of the operation can be fetched using GetPolicyOperationResult API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. policyName - Backup policy to be created. parameters - resource backup policy options - ProtectionPoliciesClientCreateOrUpdateOptions contains the optional parameters for the ProtectionPoliciesClient.CreateOrUpdate method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureStorage/ProtectionPolicies_CreateOrUpdate_Daily.json

package main

import (
	"context"
	"log"

	"time"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionPoliciesClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.CreateOrUpdate(ctx,
		"swaggertestvault",
		"SwaggerTestRg",
		"dailyPolicy2",
		armrecoveryservicesbackup.ProtectionPolicyResource{
			Properties: &armrecoveryservicesbackup.AzureFileShareProtectionPolicy{
				BackupManagementType: to.Ptr("AzureStorage"),
				RetentionPolicy: &armrecoveryservicesbackup.LongTermRetentionPolicy{
					RetentionPolicyType: to.Ptr("LongTermRetentionPolicy"),
					DailySchedule: &armrecoveryservicesbackup.DailyRetentionSchedule{
						RetentionDuration: &armrecoveryservicesbackup.RetentionDuration{
							Count:        to.Ptr[int32](5),
							DurationType: to.Ptr(armrecoveryservicesbackup.RetentionDurationTypeDays),
						},
						RetentionTimes: []*time.Time{
							to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-09-29T08:00:00.000Z"); return t }())},
					},
					MonthlySchedule: &armrecoveryservicesbackup.MonthlyRetentionSchedule{
						RetentionDuration: &armrecoveryservicesbackup.RetentionDuration{
							Count:        to.Ptr[int32](60),
							DurationType: to.Ptr(armrecoveryservicesbackup.RetentionDurationTypeMonths),
						},
						RetentionScheduleFormatType: to.Ptr(armrecoveryservicesbackup.RetentionScheduleFormatWeekly),
						RetentionScheduleWeekly: &armrecoveryservicesbackup.WeeklyRetentionFormat{
							DaysOfTheWeek: []*armrecoveryservicesbackup.DayOfWeek{
								to.Ptr(armrecoveryservicesbackup.DayOfWeekSunday)},
							WeeksOfTheMonth: []*armrecoveryservicesbackup.WeekOfMonth{
								to.Ptr(armrecoveryservicesbackup.WeekOfMonthFirst)},
						},
						RetentionTimes: []*time.Time{
							to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-09-29T08:00:00.000Z"); return t }())},
					},
					WeeklySchedule: &armrecoveryservicesbackup.WeeklyRetentionSchedule{
						DaysOfTheWeek: []*armrecoveryservicesbackup.DayOfWeek{
							to.Ptr(armrecoveryservicesbackup.DayOfWeekSunday)},
						RetentionDuration: &armrecoveryservicesbackup.RetentionDuration{
							Count:        to.Ptr[int32](12),
							DurationType: to.Ptr(armrecoveryservicesbackup.RetentionDurationTypeWeeks),
						},
						RetentionTimes: []*time.Time{
							to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-09-29T08:00:00.000Z"); return t }())},
					},
					YearlySchedule: &armrecoveryservicesbackup.YearlyRetentionSchedule{
						MonthsOfYear: []*armrecoveryservicesbackup.MonthOfYear{
							to.Ptr(armrecoveryservicesbackup.MonthOfYearJanuary)},
						RetentionDuration: &armrecoveryservicesbackup.RetentionDuration{
							Count:        to.Ptr[int32](10),
							DurationType: to.Ptr(armrecoveryservicesbackup.RetentionDurationTypeYears),
						},
						RetentionScheduleFormatType: to.Ptr(armrecoveryservicesbackup.RetentionScheduleFormatWeekly),
						RetentionScheduleWeekly: &armrecoveryservicesbackup.WeeklyRetentionFormat{
							DaysOfTheWeek: []*armrecoveryservicesbackup.DayOfWeek{
								to.Ptr(armrecoveryservicesbackup.DayOfWeekSunday)},
							WeeksOfTheMonth: []*armrecoveryservicesbackup.WeekOfMonth{
								to.Ptr(armrecoveryservicesbackup.WeekOfMonthFirst)},
						},
						RetentionTimes: []*time.Time{
							to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-09-29T08:00:00.000Z"); return t }())},
					},
				},
				SchedulePolicy: &armrecoveryservicesbackup.SimpleSchedulePolicy{
					SchedulePolicyType:   to.Ptr("SimpleSchedulePolicy"),
					ScheduleRunFrequency: to.Ptr(armrecoveryservicesbackup.ScheduleRunTypeDaily),
					ScheduleRunTimes: []*time.Time{
						to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-09-29T08:00:00.000Z"); return t }())},
				},
				TimeZone:     to.Ptr("UTC"),
				WorkLoadType: to.Ptr(armrecoveryservicesbackup.WorkloadTypeAzureFileShare),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*ProtectionPoliciesClient) Get

func (client *ProtectionPoliciesClient) Get(ctx context.Context, vaultName string, resourceGroupName string, policyName string, options *ProtectionPoliciesClientGetOptions) (ProtectionPoliciesClientGetResponse, error)

Get - Provides the details of the backup policies associated to Recovery Services Vault. This is an asynchronous operation. Status of the operation can be fetched using GetPolicyOperationResult API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. policyName - Backup policy information to be fetched. options - ProtectionPoliciesClientGetOptions contains the optional parameters for the ProtectionPoliciesClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/V2Policy/v2-Get-Policy.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionPoliciesClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"v2-daily-sample",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type ProtectionPoliciesClientBeginDeleteOptions added in v0.2.0

type ProtectionPoliciesClientBeginDeleteOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

ProtectionPoliciesClientBeginDeleteOptions contains the optional parameters for the ProtectionPoliciesClient.BeginDelete method.

type ProtectionPoliciesClientCreateOrUpdateOptions added in v0.2.0

type ProtectionPoliciesClientCreateOrUpdateOptions struct {
}

ProtectionPoliciesClientCreateOrUpdateOptions contains the optional parameters for the ProtectionPoliciesClient.CreateOrUpdate method.

type ProtectionPoliciesClientCreateOrUpdateResponse added in v0.2.0

type ProtectionPoliciesClientCreateOrUpdateResponse struct {
	ProtectionPolicyResource
}

ProtectionPoliciesClientCreateOrUpdateResponse contains the response from method ProtectionPoliciesClient.CreateOrUpdate.

type ProtectionPoliciesClientDeleteResponse added in v0.2.0

type ProtectionPoliciesClientDeleteResponse struct {
}

ProtectionPoliciesClientDeleteResponse contains the response from method ProtectionPoliciesClient.Delete.

type ProtectionPoliciesClientGetOptions added in v0.2.0

type ProtectionPoliciesClientGetOptions struct {
}

ProtectionPoliciesClientGetOptions contains the optional parameters for the ProtectionPoliciesClient.Get method.

type ProtectionPoliciesClientGetResponse added in v0.2.0

type ProtectionPoliciesClientGetResponse struct {
	ProtectionPolicyResource
}

ProtectionPoliciesClientGetResponse contains the response from method ProtectionPoliciesClient.Get.

type ProtectionPolicy

type ProtectionPolicy struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Number of items associated with this policy.
	ProtectedItemsCount *int32 `json:"protectedItemsCount,omitempty"`

	// ResourceGuard Operation Requests
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`
}

ProtectionPolicy - Base class for backup policy. Workload-specific backup policies are derived from this class.

func (*ProtectionPolicy) GetProtectionPolicy

func (p *ProtectionPolicy) GetProtectionPolicy() *ProtectionPolicy

GetProtectionPolicy implements the ProtectionPolicyClassification interface for type ProtectionPolicy.

func (ProtectionPolicy) MarshalJSON added in v0.2.0

func (p ProtectionPolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProtectionPolicy.

type ProtectionPolicyClassification

type ProtectionPolicyClassification interface {
	// GetProtectionPolicy returns the ProtectionPolicy content of the underlying type.
	GetProtectionPolicy() *ProtectionPolicy
}

ProtectionPolicyClassification provides polymorphic access to related types. Call the interface's GetProtectionPolicy() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureFileShareProtectionPolicy, *AzureIaaSVMProtectionPolicy, *AzureSQLProtectionPolicy, *AzureVMWorkloadProtectionPolicy, - *GenericProtectionPolicy, *MabProtectionPolicy, *ProtectionPolicy

type ProtectionPolicyOperationResultsClient

type ProtectionPolicyOperationResultsClient struct {
	// contains filtered or unexported fields
}

ProtectionPolicyOperationResultsClient contains the methods for the ProtectionPolicyOperationResults group. Don't use this type directly, use NewProtectionPolicyOperationResultsClient() instead.

func NewProtectionPolicyOperationResultsClient

func NewProtectionPolicyOperationResultsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProtectionPolicyOperationResultsClient, error)

NewProtectionPolicyOperationResultsClient creates a new instance of ProtectionPolicyOperationResultsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ProtectionPolicyOperationResultsClient) Get

Get - Provides the result of an operation. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. policyName - Backup policy name whose operation's result needs to be fetched. operationID - Operation ID which represents the operation whose result needs to be fetched. options - ProtectionPolicyOperationResultsClientGetOptions contains the optional parameters for the ProtectionPolicyOperationResultsClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/ProtectionPolicyOperationResults_Get.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionPolicyOperationResultsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"testPolicy1",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type ProtectionPolicyOperationResultsClientGetOptions added in v0.2.0

type ProtectionPolicyOperationResultsClientGetOptions struct {
}

ProtectionPolicyOperationResultsClientGetOptions contains the optional parameters for the ProtectionPolicyOperationResultsClient.Get method.

type ProtectionPolicyOperationResultsClientGetResponse added in v0.2.0

type ProtectionPolicyOperationResultsClientGetResponse struct {
	ProtectionPolicyResource
}

ProtectionPolicyOperationResultsClientGetResponse contains the response from method ProtectionPolicyOperationResultsClient.Get.

type ProtectionPolicyOperationStatusesClient

type ProtectionPolicyOperationStatusesClient struct {
	// contains filtered or unexported fields
}

ProtectionPolicyOperationStatusesClient contains the methods for the ProtectionPolicyOperationStatuses group. Don't use this type directly, use NewProtectionPolicyOperationStatusesClient() instead.

func NewProtectionPolicyOperationStatusesClient

func NewProtectionPolicyOperationStatusesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProtectionPolicyOperationStatusesClient, error)

NewProtectionPolicyOperationStatusesClient creates a new instance of ProtectionPolicyOperationStatusesClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ProtectionPolicyOperationStatusesClient) Get

Get - Provides the status of the asynchronous operations like backup, restore. The status can be in progress, completed or failed. You can refer to the Operation Status enum for all the possible states of an operation. Some operations create jobs. This method returns the list of jobs associated with operation. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. policyName - Backup policy name whose operation's status needs to be fetched. operationID - Operation ID which represents an operation whose status needs to be fetched. options - ProtectionPolicyOperationStatusesClientGetOptions contains the optional parameters for the ProtectionPolicyOperationStatusesClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/ProtectionPolicyOperationStatuses_Get.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewProtectionPolicyOperationStatusesClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"testPolicy1",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type ProtectionPolicyOperationStatusesClientGetOptions added in v0.2.0

type ProtectionPolicyOperationStatusesClientGetOptions struct {
}

ProtectionPolicyOperationStatusesClientGetOptions contains the optional parameters for the ProtectionPolicyOperationStatusesClient.Get method.

type ProtectionPolicyOperationStatusesClientGetResponse added in v0.2.0

type ProtectionPolicyOperationStatusesClientGetResponse struct {
	OperationStatus
}

ProtectionPolicyOperationStatusesClientGetResponse contains the response from method ProtectionPolicyOperationStatusesClient.Get.

type ProtectionPolicyQueryObject

type ProtectionPolicyQueryObject struct {
	// Backup management type for the backup policy.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Fabric name for filter
	FabricName *string `json:"fabricName,omitempty"`

	// Workload type for the backup policy.
	WorkloadType *WorkloadType `json:"workloadType,omitempty"`
}

ProtectionPolicyQueryObject - Filters the list backup policies API.

type ProtectionPolicyResource

type ProtectionPolicyResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// ProtectionPolicyResource properties
	Properties ProtectionPolicyClassification `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

ProtectionPolicyResource - Base class for backup policy. Workload-specific backup policies are derived from this class.

func (ProtectionPolicyResource) MarshalJSON

func (p ProtectionPolicyResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProtectionPolicyResource.

func (*ProtectionPolicyResource) UnmarshalJSON

func (p *ProtectionPolicyResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProtectionPolicyResource.

type ProtectionPolicyResourceList

type ProtectionPolicyResourceList struct {
	// The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.
	NextLink *string `json:"nextLink,omitempty"`

	// List of resources.
	Value []*ProtectionPolicyResource `json:"value,omitempty"`
}

ProtectionPolicyResourceList - List of ProtectionPolicy resources

type ProtectionState

type ProtectionState string

ProtectionState - Backup state of this backup item.

const (
	ProtectionStateIRPending         ProtectionState = "IRPending"
	ProtectionStateInvalid           ProtectionState = "Invalid"
	ProtectionStateProtected         ProtectionState = "Protected"
	ProtectionStateProtectionError   ProtectionState = "ProtectionError"
	ProtectionStateProtectionPaused  ProtectionState = "ProtectionPaused"
	ProtectionStateProtectionStopped ProtectionState = "ProtectionStopped"
)

func PossibleProtectionStateValues

func PossibleProtectionStateValues() []ProtectionState

PossibleProtectionStateValues returns the possible values for the ProtectionState const type.

type ProtectionStatus

type ProtectionStatus string

ProtectionStatus - Specifies whether the container is registered or not

const (
	ProtectionStatusInvalid          ProtectionStatus = "Invalid"
	ProtectionStatusNotProtected     ProtectionStatus = "NotProtected"
	ProtectionStatusProtected        ProtectionStatus = "Protected"
	ProtectionStatusProtecting       ProtectionStatus = "Protecting"
	ProtectionStatusProtectionFailed ProtectionStatus = "ProtectionFailed"
)

func PossibleProtectionStatusValues

func PossibleProtectionStatusValues() []ProtectionStatus

PossibleProtectionStatusValues returns the possible values for the ProtectionStatus const type.

type ProvisioningState

type ProvisioningState string

ProvisioningState - Gets or sets provisioning state of the private endpoint connection

const (
	ProvisioningStateDeleting  ProvisioningState = "Deleting"
	ProvisioningStateFailed    ProvisioningState = "Failed"
	ProvisioningStatePending   ProvisioningState = "Pending"
	ProvisioningStateSucceeded ProvisioningState = "Succeeded"
)

func PossibleProvisioningStateValues

func PossibleProvisioningStateValues() []ProvisioningState

PossibleProvisioningStateValues returns the possible values for the ProvisioningState const type.

type RecoveryMode

type RecoveryMode string

RecoveryMode - Defines whether the current recovery mode is file restore or database restore

const (
	RecoveryModeFileRecovery     RecoveryMode = "FileRecovery"
	RecoveryModeInvalid          RecoveryMode = "Invalid"
	RecoveryModeWorkloadRecovery RecoveryMode = "WorkloadRecovery"
)

func PossibleRecoveryModeValues

func PossibleRecoveryModeValues() []RecoveryMode

PossibleRecoveryModeValues returns the possible values for the RecoveryMode const type.

type RecoveryPoint

type RecoveryPoint struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`
}

RecoveryPoint - Base class for backup copies. Workload-specific backup copies are derived from this class.

func (*RecoveryPoint) GetRecoveryPoint

func (r *RecoveryPoint) GetRecoveryPoint() *RecoveryPoint

GetRecoveryPoint implements the RecoveryPointClassification interface for type RecoveryPoint.

type RecoveryPointClassification

type RecoveryPointClassification interface {
	// GetRecoveryPoint returns the RecoveryPoint content of the underlying type.
	GetRecoveryPoint() *RecoveryPoint
}

RecoveryPointClassification provides polymorphic access to related types. Call the interface's GetRecoveryPoint() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureFileShareRecoveryPoint, *AzureWorkloadPointInTimeRecoveryPoint, *AzureWorkloadRecoveryPoint, *AzureWorkloadSAPHanaPointInTimeRecoveryPoint, - *AzureWorkloadSAPHanaRecoveryPoint, *AzureWorkloadSQLPointInTimeRecoveryPoint, *AzureWorkloadSQLRecoveryPoint, *GenericRecoveryPoint, - *IaasVMRecoveryPoint, *RecoveryPoint

type RecoveryPointDiskConfiguration

type RecoveryPointDiskConfiguration struct {
	// Information of disks excluded from backup
	ExcludedDiskList []*DiskInformation `json:"excludedDiskList,omitempty"`

	// Information of disks included in backup
	IncludedDiskList []*DiskInformation `json:"includedDiskList,omitempty"`

	// Number of disks attached to the VM
	NumberOfDisksAttachedToVM *int32 `json:"numberOfDisksAttachedToVm,omitempty"`

	// Number of disks included in backup
	NumberOfDisksIncludedInBackup *int32 `json:"numberOfDisksIncludedInBackup,omitempty"`
}

RecoveryPointDiskConfiguration - Disk configuration

func (RecoveryPointDiskConfiguration) MarshalJSON

func (r RecoveryPointDiskConfiguration) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type RecoveryPointDiskConfiguration.

type RecoveryPointMoveReadinessInfo

type RecoveryPointMoveReadinessInfo struct {
	AdditionalInfo *string `json:"additionalInfo,omitempty"`
	IsReadyForMove *bool   `json:"isReadyForMove,omitempty"`
}

type RecoveryPointRehydrationInfo

type RecoveryPointRehydrationInfo struct {
	// Rehydration Priority
	RehydrationPriority *RehydrationPriority `json:"rehydrationPriority,omitempty"`

	// How long the rehydrated RP should be kept Should be ISO8601 Duration format e.g. "P7D"
	RehydrationRetentionDuration *string `json:"rehydrationRetentionDuration,omitempty"`
}

RecoveryPointRehydrationInfo - RP Rehydration Info

type RecoveryPointResource

type RecoveryPointResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// RecoveryPointResource properties
	Properties RecoveryPointClassification `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

RecoveryPointResource - Base class for backup copies. Workload-specific backup copies are derived from this class.

func (RecoveryPointResource) MarshalJSON

func (r RecoveryPointResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type RecoveryPointResource.

func (*RecoveryPointResource) UnmarshalJSON

func (r *RecoveryPointResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type RecoveryPointResource.

type RecoveryPointResourceList

type RecoveryPointResourceList struct {
	// The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.
	NextLink *string `json:"nextLink,omitempty"`

	// List of resources.
	Value []*RecoveryPointResource `json:"value,omitempty"`
}

RecoveryPointResourceList - List of RecoveryPoint resources

type RecoveryPointTierInformation

type RecoveryPointTierInformation struct {
	// Recovery point tier status.
	ExtendedInfo map[string]*string `json:"extendedInfo,omitempty"`

	// Recovery point tier status.
	Status *RecoveryPointTierStatus `json:"status,omitempty"`

	// Recovery point tier type.
	Type *RecoveryPointTierType `json:"type,omitempty"`
}

RecoveryPointTierInformation - Recovery point tier information.

func (RecoveryPointTierInformation) MarshalJSON

func (r RecoveryPointTierInformation) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type RecoveryPointTierInformation.

type RecoveryPointTierInformationV2 added in v0.2.0

type RecoveryPointTierInformationV2 struct {
	// Recovery point tier status.
	ExtendedInfo map[string]*string `json:"extendedInfo,omitempty"`

	// Recovery point tier status.
	Status *RecoveryPointTierStatus `json:"status,omitempty"`

	// Recovery point tier type.
	Type *RecoveryPointTierType `json:"type,omitempty"`
}

RecoveryPointTierInformationV2 - RecoveryPoint Tier Information V2

func (RecoveryPointTierInformationV2) MarshalJSON added in v0.2.0

func (r RecoveryPointTierInformationV2) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type RecoveryPointTierInformationV2.

type RecoveryPointTierStatus

type RecoveryPointTierStatus string

RecoveryPointTierStatus - Recovery point tier status.

const (
	RecoveryPointTierStatusInvalid    RecoveryPointTierStatus = "Invalid"
	RecoveryPointTierStatusValid      RecoveryPointTierStatus = "Valid"
	RecoveryPointTierStatusDisabled   RecoveryPointTierStatus = "Disabled"
	RecoveryPointTierStatusDeleted    RecoveryPointTierStatus = "Deleted"
	RecoveryPointTierStatusRehydrated RecoveryPointTierStatus = "Rehydrated"
)

func PossibleRecoveryPointTierStatusValues

func PossibleRecoveryPointTierStatusValues() []RecoveryPointTierStatus

PossibleRecoveryPointTierStatusValues returns the possible values for the RecoveryPointTierStatus const type.

type RecoveryPointTierType

type RecoveryPointTierType string

RecoveryPointTierType - Recovery point tier type.

const (
	RecoveryPointTierTypeInvalid    RecoveryPointTierType = "Invalid"
	RecoveryPointTierTypeInstantRP  RecoveryPointTierType = "InstantRP"
	RecoveryPointTierTypeHardenedRP RecoveryPointTierType = "HardenedRP"
	RecoveryPointTierTypeArchivedRP RecoveryPointTierType = "ArchivedRP"
)

func PossibleRecoveryPointTierTypeValues

func PossibleRecoveryPointTierTypeValues() []RecoveryPointTierType

PossibleRecoveryPointTierTypeValues returns the possible values for the RecoveryPointTierType const type.

type RecoveryPointsClient

type RecoveryPointsClient struct {
	// contains filtered or unexported fields
}

RecoveryPointsClient contains the methods for the RecoveryPoints group. Don't use this type directly, use NewRecoveryPointsClient() instead.

func NewRecoveryPointsClient

func NewRecoveryPointsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*RecoveryPointsClient, error)

NewRecoveryPointsClient creates a new instance of RecoveryPointsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*RecoveryPointsClient) Get

func (client *RecoveryPointsClient) Get(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, protectedItemName string, recoveryPointID string, options *RecoveryPointsClientGetOptions) (RecoveryPointsClientGetResponse, error)

Get - Provides the information of the backed up data identified using RecoveryPointID. This is an asynchronous operation. To know the status of the operation, call the GetProtectedItemOperationResult API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with backed up item. containerName - Container name associated with backed up item. protectedItemName - Backed up item name whose backup data needs to be fetched. recoveryPointID - RecoveryPointID represents the backed up data to be fetched. options - RecoveryPointsClientGetOptions contains the optional parameters for the RecoveryPointsClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/RecoveryPoints_Get.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewRecoveryPointsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"rshvault",
		"rshhtestmdvmrg",
		"Azure",
		"IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall",
		"VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall",
		"26083826328862",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*RecoveryPointsClient) NewListPager added in v0.5.0

func (client *RecoveryPointsClient) NewListPager(vaultName string, resourceGroupName string, fabricName string, containerName string, protectedItemName string, options *RecoveryPointsClientListOptions) *runtime.Pager[RecoveryPointsClientListResponse]

NewListPager - Lists the backup copies for the backed up item. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the backed up item. containerName - Container name associated with the backed up item. protectedItemName - Backed up item whose backup copies are to be fetched. options - RecoveryPointsClientListOptions contains the optional parameters for the RecoveryPointsClient.List method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/RecoveryPoints_List.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewRecoveryPointsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := client.NewListPager("rshvault",
		"rshhtestmdvmrg",
		"Azure",
		"IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall",
		"VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall",
		&armrecoveryservicesbackup.RecoveryPointsClientListOptions{Filter: nil})
	for pager.More() {
		nextResult, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range nextResult.Value {
			// TODO: use page item
			_ = v
		}
	}
}
Output:

type RecoveryPointsClientGetOptions added in v0.2.0

type RecoveryPointsClientGetOptions struct {
}

RecoveryPointsClientGetOptions contains the optional parameters for the RecoveryPointsClient.Get method.

type RecoveryPointsClientGetResponse added in v0.2.0

type RecoveryPointsClientGetResponse struct {
	RecoveryPointResource
}

RecoveryPointsClientGetResponse contains the response from method RecoveryPointsClient.Get.

type RecoveryPointsClientListOptions added in v0.2.0

type RecoveryPointsClientListOptions struct {
	// OData filter options.
	Filter *string
}

RecoveryPointsClientListOptions contains the optional parameters for the RecoveryPointsClient.List method.

type RecoveryPointsClientListResponse added in v0.2.0

type RecoveryPointsClientListResponse struct {
	RecoveryPointResourceList
}

RecoveryPointsClientListResponse contains the response from method RecoveryPointsClient.List.

type RecoveryPointsRecommendedForMoveClient

type RecoveryPointsRecommendedForMoveClient struct {
	// contains filtered or unexported fields
}

RecoveryPointsRecommendedForMoveClient contains the methods for the RecoveryPointsRecommendedForMove group. Don't use this type directly, use NewRecoveryPointsRecommendedForMoveClient() instead.

func NewRecoveryPointsRecommendedForMoveClient

func NewRecoveryPointsRecommendedForMoveClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*RecoveryPointsRecommendedForMoveClient, error)

NewRecoveryPointsRecommendedForMoveClient creates a new instance of RecoveryPointsRecommendedForMoveClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*RecoveryPointsRecommendedForMoveClient) NewListPager added in v0.5.0

NewListPager - Lists the recovery points recommended for move to another tier If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. parameters - List Recovery points Recommended for Move Request options - RecoveryPointsRecommendedForMoveClientListOptions contains the optional parameters for the RecoveryPointsRecommendedForMoveClient.List method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/RecoveryPointsRecommendedForMove_List.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewRecoveryPointsRecommendedForMoveClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := client.NewListPager("rshvault",
		"rshhtestmdvmrg",
		"Azure",
		"IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall",
		"VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall",
		armrecoveryservicesbackup.ListRecoveryPointsRecommendedForMoveRequest{
			ExcludedRPList: []*string{
				to.Ptr("348916168024334"),
				to.Ptr("348916168024335")},
			ObjectType: to.Ptr("ListRecoveryPointsRecommendedForMoveRequest"),
		},
		nil)
	for pager.More() {
		nextResult, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range nextResult.Value {
			// TODO: use page item
			_ = v
		}
	}
}
Output:

type RecoveryPointsRecommendedForMoveClientListOptions added in v0.2.0

type RecoveryPointsRecommendedForMoveClientListOptions struct {
}

RecoveryPointsRecommendedForMoveClientListOptions contains the optional parameters for the RecoveryPointsRecommendedForMoveClient.List method.

type RecoveryPointsRecommendedForMoveClientListResponse added in v0.2.0

type RecoveryPointsRecommendedForMoveClientListResponse struct {
	RecoveryPointResourceList
}

RecoveryPointsRecommendedForMoveClientListResponse contains the response from method RecoveryPointsRecommendedForMoveClient.List.

type RecoveryType

type RecoveryType string

RecoveryType - Type of this recovery.

const (
	RecoveryTypeAlternateLocation RecoveryType = "AlternateLocation"
	RecoveryTypeInvalid           RecoveryType = "Invalid"
	RecoveryTypeOffline           RecoveryType = "Offline"
	RecoveryTypeOriginalLocation  RecoveryType = "OriginalLocation"
	RecoveryTypeRestoreDisks      RecoveryType = "RestoreDisks"
)

func PossibleRecoveryTypeValues

func PossibleRecoveryTypeValues() []RecoveryType

PossibleRecoveryTypeValues returns the possible values for the RecoveryType const type.

type RehydrationPriority

type RehydrationPriority string

RehydrationPriority - Rehydration Priority

const (
	RehydrationPriorityHigh     RehydrationPriority = "High"
	RehydrationPriorityStandard RehydrationPriority = "Standard"
)

func PossibleRehydrationPriorityValues

func PossibleRehydrationPriorityValues() []RehydrationPriority

PossibleRehydrationPriorityValues returns the possible values for the RehydrationPriority const type.

type Resource

type Resource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

Resource - ARM Resource.

func (Resource) MarshalJSON

func (r Resource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Resource.

type ResourceGuardOperationDetail

type ResourceGuardOperationDetail struct {
	DefaultResourceRequest *string `json:"defaultResourceRequest,omitempty"`
	VaultCriticalOperation *string `json:"vaultCriticalOperation,omitempty"`
}

type ResourceGuardProxiesClient

type ResourceGuardProxiesClient struct {
	// contains filtered or unexported fields
}

ResourceGuardProxiesClient contains the methods for the ResourceGuardProxies group. Don't use this type directly, use NewResourceGuardProxiesClient() instead.

func NewResourceGuardProxiesClient

func NewResourceGuardProxiesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ResourceGuardProxiesClient, error)

NewResourceGuardProxiesClient creates a new instance of ResourceGuardProxiesClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ResourceGuardProxiesClient) NewGetPager added in v0.5.0

NewGetPager - List the ResourceGuardProxies under vault If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - ResourceGuardProxiesClientGetOptions contains the optional parameters for the ResourceGuardProxiesClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/ResourceGuardProxyCRUD/ListResourceGuardProxy.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewResourceGuardProxiesClient("0b352192-dcac-4cc7-992e-a96190ccc68c", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := client.NewGetPager("sampleVault",
		"SampleResourceGroup",
		nil)
	for pager.More() {
		nextResult, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range nextResult.Value {
			// TODO: use page item
			_ = v
		}
	}
}
Output:

type ResourceGuardProxiesClientGetOptions added in v0.2.0

type ResourceGuardProxiesClientGetOptions struct {
}

ResourceGuardProxiesClientGetOptions contains the optional parameters for the ResourceGuardProxiesClient.Get method.

type ResourceGuardProxiesClientGetResponse added in v0.2.0

type ResourceGuardProxiesClientGetResponse struct {
	ResourceGuardProxyBaseResourceList
}

ResourceGuardProxiesClientGetResponse contains the response from method ResourceGuardProxiesClient.Get.

type ResourceGuardProxyBase

type ResourceGuardProxyBase struct {
	Description                   *string                         `json:"description,omitempty"`
	LastUpdatedTime               *string                         `json:"lastUpdatedTime,omitempty"`
	ResourceGuardOperationDetails []*ResourceGuardOperationDetail `json:"resourceGuardOperationDetails,omitempty"`
	ResourceGuardResourceID       *string                         `json:"resourceGuardResourceId,omitempty"`
}

func (ResourceGuardProxyBase) MarshalJSON

func (r ResourceGuardProxyBase) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ResourceGuardProxyBase.

type ResourceGuardProxyBaseResource

type ResourceGuardProxyBaseResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// ResourceGuardProxyBaseResource properties
	Properties *ResourceGuardProxyBase `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

func (ResourceGuardProxyBaseResource) MarshalJSON

func (r ResourceGuardProxyBaseResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ResourceGuardProxyBaseResource.

type ResourceGuardProxyBaseResourceList

type ResourceGuardProxyBaseResourceList struct {
	// The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.
	NextLink *string `json:"nextLink,omitempty"`

	// List of resources.
	Value []*ResourceGuardProxyBaseResource `json:"value,omitempty"`
}

ResourceGuardProxyBaseResourceList - List of ResourceGuardProxyBase resources

type ResourceGuardProxyClient

type ResourceGuardProxyClient struct {
	// contains filtered or unexported fields
}

ResourceGuardProxyClient contains the methods for the ResourceGuardProxy group. Don't use this type directly, use NewResourceGuardProxyClient() instead.

func NewResourceGuardProxyClient

func NewResourceGuardProxyClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ResourceGuardProxyClient, error)

NewResourceGuardProxyClient creates a new instance of ResourceGuardProxyClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ResourceGuardProxyClient) Delete

func (client *ResourceGuardProxyClient) Delete(ctx context.Context, vaultName string, resourceGroupName string, resourceGuardProxyName string, options *ResourceGuardProxyClientDeleteOptions) (ResourceGuardProxyClientDeleteResponse, error)

Delete - Delete ResourceGuardProxy under vault If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - ResourceGuardProxyClientDeleteOptions contains the optional parameters for the ResourceGuardProxyClient.Delete method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/ResourceGuardProxyCRUD/DeleteResourceGuardProxy.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewResourceGuardProxyClient("0b352192-dcac-4cc7-992e-a96190ccc68c", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	_, err = client.Delete(ctx,
		"sampleVault",
		"SampleResourceGroup",
		"swaggerExample",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
}
Output:

func (*ResourceGuardProxyClient) Get

func (client *ResourceGuardProxyClient) Get(ctx context.Context, vaultName string, resourceGroupName string, resourceGuardProxyName string, options *ResourceGuardProxyClientGetOptions) (ResourceGuardProxyClientGetResponse, error)

Get - Returns ResourceGuardProxy under vault and with the name referenced in request If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - ResourceGuardProxyClientGetOptions contains the optional parameters for the ResourceGuardProxyClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/ResourceGuardProxyCRUD/GetResourceGuardProxy.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewResourceGuardProxyClient("0b352192-dcac-4cc7-992e-a96190ccc68c", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"sampleVault",
		"SampleResourceGroup",
		"swaggerExample",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*ResourceGuardProxyClient) Put

func (client *ResourceGuardProxyClient) Put(ctx context.Context, vaultName string, resourceGroupName string, resourceGuardProxyName string, parameters ResourceGuardProxyBaseResource, options *ResourceGuardProxyClientPutOptions) (ResourceGuardProxyClientPutResponse, error)

Put - Add or Update ResourceGuardProxy under vault Secures vault critical operations If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. parameters - Request body for operation options - ResourceGuardProxyClientPutOptions contains the optional parameters for the ResourceGuardProxyClient.Put method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/ResourceGuardProxyCRUD/PutResourceGuardProxy.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewResourceGuardProxyClient("0b352192-dcac-4cc7-992e-a96190ccc68c", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Put(ctx,
		"sampleVault",
		"SampleResourceGroup",
		"swaggerExample",
		armrecoveryservicesbackup.ResourceGuardProxyBaseResource{
			Properties: &armrecoveryservicesbackup.ResourceGuardProxyBase{
				ResourceGuardResourceID: to.Ptr("/subscriptions/c999d45b-944f-418c-a0d8-c3fcfd1802c8/resourceGroups/vaultguardRGNew/providers/Microsoft.DataProtection/resourceGuards/VaultGuardTestNew"),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

func (*ResourceGuardProxyClient) UnlockDelete

func (client *ResourceGuardProxyClient) UnlockDelete(ctx context.Context, vaultName string, resourceGroupName string, resourceGuardProxyName string, parameters UnlockDeleteRequest, options *ResourceGuardProxyClientUnlockDeleteOptions) (ResourceGuardProxyClientUnlockDeleteResponse, error)

UnlockDelete - Secures delete ResourceGuardProxy operations. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. parameters - Request body for operation options - ResourceGuardProxyClientUnlockDeleteOptions contains the optional parameters for the ResourceGuardProxyClient.UnlockDelete method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/ResourceGuardProxyCRUD/UnlockDeleteResourceGuardProxy.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewResourceGuardProxyClient("0b352192-dcac-4cc7-992e-a96190ccc68c", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.UnlockDelete(ctx,
		"sampleVault",
		"SampleResourceGroup",
		"swaggerExample",
		armrecoveryservicesbackup.UnlockDeleteRequest{
			ResourceGuardOperationRequests: []*string{
				to.Ptr("/subscriptions/c999d45b-944f-418c-a0d8-c3fcfd1802c8/resourceGroups/vaultguardRGNew/providers/Microsoft.DataProtection/resourceGuards/VaultGuardTestNew/deleteProtectedItemRequests/default")},
			ResourceToBeDeleted: to.Ptr("/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/gaallarg/providers/Microsoft.RecoveryServices/vaults/MercuryCrrVault/backupFabrics/Azure/protectionContainers/VMAppContainer;compute;crrtestrg;crrtestvm/protectedItems/SQLDataBase;mssqlserver;testdb"),
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type ResourceGuardProxyClientDeleteOptions added in v0.2.0

type ResourceGuardProxyClientDeleteOptions struct {
}

ResourceGuardProxyClientDeleteOptions contains the optional parameters for the ResourceGuardProxyClient.Delete method.

type ResourceGuardProxyClientDeleteResponse added in v0.2.0

type ResourceGuardProxyClientDeleteResponse struct {
}

ResourceGuardProxyClientDeleteResponse contains the response from method ResourceGuardProxyClient.Delete.

type ResourceGuardProxyClientGetOptions added in v0.2.0

type ResourceGuardProxyClientGetOptions struct {
}

ResourceGuardProxyClientGetOptions contains the optional parameters for the ResourceGuardProxyClient.Get method.

type ResourceGuardProxyClientGetResponse added in v0.2.0

type ResourceGuardProxyClientGetResponse struct {
	ResourceGuardProxyBaseResource
}

ResourceGuardProxyClientGetResponse contains the response from method ResourceGuardProxyClient.Get.

type ResourceGuardProxyClientPutOptions added in v0.2.0

type ResourceGuardProxyClientPutOptions struct {
}

ResourceGuardProxyClientPutOptions contains the optional parameters for the ResourceGuardProxyClient.Put method.

type ResourceGuardProxyClientPutResponse added in v0.2.0

type ResourceGuardProxyClientPutResponse struct {
	ResourceGuardProxyBaseResource
}

ResourceGuardProxyClientPutResponse contains the response from method ResourceGuardProxyClient.Put.

type ResourceGuardProxyClientUnlockDeleteOptions added in v0.2.0

type ResourceGuardProxyClientUnlockDeleteOptions struct {
}

ResourceGuardProxyClientUnlockDeleteOptions contains the optional parameters for the ResourceGuardProxyClient.UnlockDelete method.

type ResourceGuardProxyClientUnlockDeleteResponse added in v0.2.0

type ResourceGuardProxyClientUnlockDeleteResponse struct {
	UnlockDeleteResponse
}

ResourceGuardProxyClientUnlockDeleteResponse contains the response from method ResourceGuardProxyClient.UnlockDelete.

type ResourceHealthDetails

type ResourceHealthDetails struct {
	// READ-ONLY; Health Code
	Code *int32 `json:"code,omitempty" azure:"ro"`

	// READ-ONLY; Health Message
	Message *string `json:"message,omitempty" azure:"ro"`

	// READ-ONLY; Health Recommended Actions
	Recommendations []*string `json:"recommendations,omitempty" azure:"ro"`

	// READ-ONLY; Health Title
	Title *string `json:"title,omitempty" azure:"ro"`
}

ResourceHealthDetails - Health Details for backup items.

func (ResourceHealthDetails) MarshalJSON

func (r ResourceHealthDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ResourceHealthDetails.

type ResourceHealthStatus

type ResourceHealthStatus string

ResourceHealthStatus - Resource Health Status

const (
	ResourceHealthStatusHealthy             ResourceHealthStatus = "Healthy"
	ResourceHealthStatusInvalid             ResourceHealthStatus = "Invalid"
	ResourceHealthStatusPersistentDegraded  ResourceHealthStatus = "PersistentDegraded"
	ResourceHealthStatusPersistentUnhealthy ResourceHealthStatus = "PersistentUnhealthy"
	ResourceHealthStatusTransientDegraded   ResourceHealthStatus = "TransientDegraded"
	ResourceHealthStatusTransientUnhealthy  ResourceHealthStatus = "TransientUnhealthy"
)

func PossibleResourceHealthStatusValues

func PossibleResourceHealthStatusValues() []ResourceHealthStatus

PossibleResourceHealthStatusValues returns the possible values for the ResourceHealthStatus const type.

type ResourceList

type ResourceList struct {
	// The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.
	NextLink *string `json:"nextLink,omitempty"`
}

ResourceList - Base for all lists of resources.

type RestoreFileSpecs

type RestoreFileSpecs struct {
	// Indicates what the Path variable stands for
	FileSpecType *string `json:"fileSpecType,omitempty"`

	// Source File/Folder path
	Path *string `json:"path,omitempty"`

	// Destination folder path in target FileShare
	TargetFolderPath *string `json:"targetFolderPath,omitempty"`
}

RestoreFileSpecs - Restore file specs like file path, type and target folder path info.

type RestorePointQueryType

type RestorePointQueryType string

RestorePointQueryType - RestorePoint type

const (
	RestorePointQueryTypeAll                 RestorePointQueryType = "All"
	RestorePointQueryTypeDifferential        RestorePointQueryType = "Differential"
	RestorePointQueryTypeFull                RestorePointQueryType = "Full"
	RestorePointQueryTypeFullAndDifferential RestorePointQueryType = "FullAndDifferential"
	RestorePointQueryTypeIncremental         RestorePointQueryType = "Incremental"
	RestorePointQueryTypeInvalid             RestorePointQueryType = "Invalid"
	RestorePointQueryTypeLog                 RestorePointQueryType = "Log"
)

func PossibleRestorePointQueryTypeValues

func PossibleRestorePointQueryTypeValues() []RestorePointQueryType

PossibleRestorePointQueryTypeValues returns the possible values for the RestorePointQueryType const type.

type RestorePointType

type RestorePointType string

RestorePointType - Type of restore point

const (
	RestorePointTypeDifferential RestorePointType = "Differential"
	RestorePointTypeFull         RestorePointType = "Full"
	RestorePointTypeIncremental  RestorePointType = "Incremental"
	RestorePointTypeInvalid      RestorePointType = "Invalid"
	RestorePointTypeLog          RestorePointType = "Log"
)

func PossibleRestorePointTypeValues

func PossibleRestorePointTypeValues() []RestorePointType

PossibleRestorePointTypeValues returns the possible values for the RestorePointType const type.

type RestoreRequest

type RestoreRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`
}

RestoreRequest - Base class for restore request. Workload-specific restore requests are derived from this class.

func (*RestoreRequest) GetRestoreRequest

func (r *RestoreRequest) GetRestoreRequest() *RestoreRequest

GetRestoreRequest implements the RestoreRequestClassification interface for type RestoreRequest.

type RestoreRequestClassification

type RestoreRequestClassification interface {
	// GetRestoreRequest returns the RestoreRequest content of the underlying type.
	GetRestoreRequest() *RestoreRequest
}

RestoreRequestClassification provides polymorphic access to related types. Call the interface's GetRestoreRequest() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureFileShareRestoreRequest, *AzureWorkloadPointInTimeRestoreRequest, *AzureWorkloadRestoreRequest, *AzureWorkloadSAPHanaPointInTimeRestoreRequest, - *AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest, *AzureWorkloadSAPHanaRestoreRequest, *AzureWorkloadSAPHanaRestoreWithRehydrateRequest, - *AzureWorkloadSQLPointInTimeRestoreRequest, *AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest, *AzureWorkloadSQLRestoreRequest, - *AzureWorkloadSQLRestoreWithRehydrateRequest, *IaasVMRestoreRequest, *IaasVMRestoreWithRehydrationRequest, *RestoreRequest

type RestoreRequestResource

type RestoreRequestResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// RestoreRequestResource properties
	Properties RestoreRequestClassification `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

RestoreRequestResource - Base class for restore request. Workload-specific restore requests are derived from this class.

func (RestoreRequestResource) MarshalJSON

func (r RestoreRequestResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type RestoreRequestResource.

func (*RestoreRequestResource) UnmarshalJSON

func (r *RestoreRequestResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type RestoreRequestResource.

type RestoreRequestType

type RestoreRequestType string

RestoreRequestType - Restore Type (FullShareRestore or ItemLevelRestore)

const (
	RestoreRequestTypeFullShareRestore RestoreRequestType = "FullShareRestore"
	RestoreRequestTypeInvalid          RestoreRequestType = "Invalid"
	RestoreRequestTypeItemLevelRestore RestoreRequestType = "ItemLevelRestore"
)

func PossibleRestoreRequestTypeValues

func PossibleRestoreRequestTypeValues() []RestoreRequestType

PossibleRestoreRequestTypeValues returns the possible values for the RestoreRequestType const type.

type RestoresClient

type RestoresClient struct {
	// contains filtered or unexported fields
}

RestoresClient contains the methods for the Restores group. Don't use this type directly, use NewRestoresClient() instead.

func NewRestoresClient

func NewRestoresClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*RestoresClient, error)

NewRestoresClient creates a new instance of RestoresClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*RestoresClient) BeginTrigger

func (client *RestoresClient) BeginTrigger(ctx context.Context, vaultName string, resourceGroupName string, fabricName string, containerName string, protectedItemName string, recoveryPointID string, parameters RestoreRequestResource, options *RestoresClientBeginTriggerOptions) (*runtime.Poller[RestoresClientTriggerResponse], error)

BeginTrigger - Restores the specified backed up data. This is an asynchronous operation. To know the status of this API call, use GetProtectedItemOperationResult API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. fabricName - Fabric name associated with the backed up items. containerName - Container name associated with the backed up items. protectedItemName - Backed up item to be restored. recoveryPointID - Recovery point ID which represents the backed up data to be restored. parameters - resource restore request options - RestoresClientBeginTriggerOptions contains the optional parameters for the RestoresClient.BeginTrigger method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/TriggerRestore_RestoreDisks_IaasVMRestoreRequest.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewRestoresClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := client.BeginTrigger(ctx,
		"testVault",
		"netsdktestrg",
		"Azure",
		"IaasVMContainer;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1",
		"VM;iaasvmcontainerv2;netsdktestrg;netvmtestv2vm1",
		"348916168024334",
		armrecoveryservicesbackup.RestoreRequestResource{
			Properties: &armrecoveryservicesbackup.IaasVMRestoreRequest{
				ObjectType:            to.Ptr("IaasVMRestoreRequest"),
				CreateNewCloudService: to.Ptr(true),
				EncryptionDetails: &armrecoveryservicesbackup.EncryptionDetails{
					EncryptionEnabled: to.Ptr(false),
				},
				IdentityInfo: &armrecoveryservicesbackup.IdentityInfo{
					IsSystemAssignedIdentity:  to.Ptr(false),
					ManagedIdentityResourceID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/asmaskarRG1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/asmaskartestmsi"),
				},
				OriginalStorageAccountOption: to.Ptr(false),
				RecoveryPointID:              to.Ptr("348916168024334"),
				RecoveryType:                 to.Ptr(armrecoveryservicesbackup.RecoveryTypeRestoreDisks),
				Region:                       to.Ptr("southeastasia"),
				SourceResourceID:             to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1"),
				StorageAccountID:             to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testingRg/providers/Microsoft.Storage/storageAccounts/testAccount"),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
}
Output:

type RestoresClientBeginTriggerOptions added in v0.2.0

type RestoresClientBeginTriggerOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

RestoresClientBeginTriggerOptions contains the optional parameters for the RestoresClient.BeginTrigger method.

type RestoresClientTriggerResponse added in v0.2.0

type RestoresClientTriggerResponse struct {
}

RestoresClientTriggerResponse contains the response from method RestoresClient.Trigger.

type RetentionDuration

type RetentionDuration struct {
	// Count of duration types. Retention duration is obtained by the counting the duration type Count times. For example, when
	// Count = 3 and DurationType = Weeks, retention duration will be three weeks.
	Count *int32 `json:"count,omitempty"`

	// Retention duration type of retention policy.
	DurationType *RetentionDurationType `json:"durationType,omitempty"`
}

RetentionDuration - Retention duration.

type RetentionDurationType

type RetentionDurationType string

RetentionDurationType - Retention duration type of retention policy.

const (
	RetentionDurationTypeDays    RetentionDurationType = "Days"
	RetentionDurationTypeInvalid RetentionDurationType = "Invalid"
	RetentionDurationTypeMonths  RetentionDurationType = "Months"
	RetentionDurationTypeWeeks   RetentionDurationType = "Weeks"
	RetentionDurationTypeYears   RetentionDurationType = "Years"
)

func PossibleRetentionDurationTypeValues

func PossibleRetentionDurationTypeValues() []RetentionDurationType

PossibleRetentionDurationTypeValues returns the possible values for the RetentionDurationType const type.

type RetentionPolicy

type RetentionPolicy struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	RetentionPolicyType *string `json:"retentionPolicyType,omitempty"`
}

RetentionPolicy - Base class for retention policy.

func (*RetentionPolicy) GetRetentionPolicy

func (r *RetentionPolicy) GetRetentionPolicy() *RetentionPolicy

GetRetentionPolicy implements the RetentionPolicyClassification interface for type RetentionPolicy.

type RetentionPolicyClassification

type RetentionPolicyClassification interface {
	// GetRetentionPolicy returns the RetentionPolicy content of the underlying type.
	GetRetentionPolicy() *RetentionPolicy
}

RetentionPolicyClassification provides polymorphic access to related types. Call the interface's GetRetentionPolicy() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *LongTermRetentionPolicy, *RetentionPolicy, *SimpleRetentionPolicy

type RetentionScheduleFormat

type RetentionScheduleFormat string

RetentionScheduleFormat - Retention schedule format type for monthly retention policy.

const (
	RetentionScheduleFormatDaily   RetentionScheduleFormat = "Daily"
	RetentionScheduleFormatInvalid RetentionScheduleFormat = "Invalid"
	RetentionScheduleFormatWeekly  RetentionScheduleFormat = "Weekly"
)

func PossibleRetentionScheduleFormatValues

func PossibleRetentionScheduleFormatValues() []RetentionScheduleFormat

PossibleRetentionScheduleFormatValues returns the possible values for the RetentionScheduleFormat const type.

type SQLDataDirectory

type SQLDataDirectory struct {
	// Logical name of the file
	LogicalName *string `json:"logicalName,omitempty"`

	// File path
	Path *string `json:"path,omitempty"`

	// Type of data directory mapping
	Type *SQLDataDirectoryType `json:"type,omitempty"`
}

SQLDataDirectory info

type SQLDataDirectoryMapping

type SQLDataDirectoryMapping struct {
	// Type of data directory mapping
	MappingType *SQLDataDirectoryType `json:"mappingType,omitempty"`

	// Restore source logical name path
	SourceLogicalName *string `json:"sourceLogicalName,omitempty"`

	// Restore source path
	SourcePath *string `json:"sourcePath,omitempty"`

	// Target path
	TargetPath *string `json:"targetPath,omitempty"`
}

SQLDataDirectoryMapping - Encapsulates information regarding data directory

type SQLDataDirectoryType

type SQLDataDirectoryType string

SQLDataDirectoryType - Type of data directory mapping

const (
	SQLDataDirectoryTypeData    SQLDataDirectoryType = "Data"
	SQLDataDirectoryTypeInvalid SQLDataDirectoryType = "Invalid"
	SQLDataDirectoryTypeLog     SQLDataDirectoryType = "Log"
)

func PossibleSQLDataDirectoryTypeValues

func PossibleSQLDataDirectoryTypeValues() []SQLDataDirectoryType

PossibleSQLDataDirectoryTypeValues returns the possible values for the SQLDataDirectoryType const type.

type SchedulePolicy

type SchedulePolicy struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	SchedulePolicyType *string `json:"schedulePolicyType,omitempty"`
}

SchedulePolicy - Base class for backup schedule.

func (*SchedulePolicy) GetSchedulePolicy

func (s *SchedulePolicy) GetSchedulePolicy() *SchedulePolicy

GetSchedulePolicy implements the SchedulePolicyClassification interface for type SchedulePolicy.

type SchedulePolicyClassification

type SchedulePolicyClassification interface {
	// GetSchedulePolicy returns the SchedulePolicy content of the underlying type.
	GetSchedulePolicy() *SchedulePolicy
}

SchedulePolicyClassification provides polymorphic access to related types. Call the interface's GetSchedulePolicy() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *LogSchedulePolicy, *LongTermSchedulePolicy, *SchedulePolicy, *SimpleSchedulePolicy, *SimpleSchedulePolicyV2

type ScheduleRunType

type ScheduleRunType string

ScheduleRunType - Frequency of the schedule operation of this policy.

const (
	ScheduleRunTypeDaily   ScheduleRunType = "Daily"
	ScheduleRunTypeHourly  ScheduleRunType = "Hourly"
	ScheduleRunTypeInvalid ScheduleRunType = "Invalid"
	ScheduleRunTypeWeekly  ScheduleRunType = "Weekly"
)

func PossibleScheduleRunTypeValues

func PossibleScheduleRunTypeValues() []ScheduleRunType

PossibleScheduleRunTypeValues returns the possible values for the ScheduleRunType const type.

type SecurityPINsClient

type SecurityPINsClient struct {
	// contains filtered or unexported fields
}

SecurityPINsClient contains the methods for the SecurityPINs group. Don't use this type directly, use NewSecurityPINsClient() instead.

func NewSecurityPINsClient

func NewSecurityPINsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*SecurityPINsClient, error)

NewSecurityPINsClient creates a new instance of SecurityPINsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*SecurityPINsClient) Get

func (client *SecurityPINsClient) Get(ctx context.Context, vaultName string, resourceGroupName string, options *SecurityPINsClientGetOptions) (SecurityPINsClientGetResponse, error)

Get - Get the security PIN. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. options - SecurityPINsClientGetOptions contains the optional parameters for the SecurityPINsClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/Common/BackupSecurityPin_Get.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewSecurityPINsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"SwaggerTest",
		"SwaggerTestRg",
		&armrecoveryservicesbackup.SecurityPINsClientGetOptions{Parameters: nil})
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type SecurityPINsClientGetOptions added in v0.2.0

type SecurityPINsClientGetOptions struct {
	// security pin request
	Parameters *SecurityPinBase
}

SecurityPINsClientGetOptions contains the optional parameters for the SecurityPINsClient.Get method.

type SecurityPINsClientGetResponse added in v0.2.0

type SecurityPINsClientGetResponse struct {
	TokenInformation
}

SecurityPINsClientGetResponse contains the response from method SecurityPINsClient.Get.

type SecurityPinBase

type SecurityPinBase struct {
	// ResourceGuard Operation Requests
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`
}

SecurityPinBase - Base class for get security pin request body

func (SecurityPinBase) MarshalJSON

func (s SecurityPinBase) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SecurityPinBase.

type Settings

type Settings struct {
	// Workload compression flag. This has been added so that 'isSqlCompression' will be deprecated once clients upgrade to consider
	// this flag.
	IsCompression *bool `json:"isCompression,omitempty"`

	// SQL compression flag
	Issqlcompression *bool `json:"issqlcompression,omitempty"`

	// TimeZone optional input as string. For example: TimeZone = "Pacific Standard Time".
	TimeZone *string `json:"timeZone,omitempty"`
}

Settings - Common settings field for backup management

type SimpleRetentionPolicy

type SimpleRetentionPolicy struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	RetentionPolicyType *string `json:"retentionPolicyType,omitempty"`

	// Retention duration of the protection policy.
	RetentionDuration *RetentionDuration `json:"retentionDuration,omitempty"`
}

SimpleRetentionPolicy - Simple policy retention.

func (*SimpleRetentionPolicy) GetRetentionPolicy added in v0.2.0

func (s *SimpleRetentionPolicy) GetRetentionPolicy() *RetentionPolicy

GetRetentionPolicy implements the RetentionPolicyClassification interface for type SimpleRetentionPolicy.

func (SimpleRetentionPolicy) MarshalJSON

func (s SimpleRetentionPolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SimpleRetentionPolicy.

func (*SimpleRetentionPolicy) UnmarshalJSON

func (s *SimpleRetentionPolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type SimpleRetentionPolicy.

type SimpleSchedulePolicy

type SimpleSchedulePolicy struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	SchedulePolicyType *string `json:"schedulePolicyType,omitempty"`

	// Hourly Schedule of this Policy
	HourlySchedule *HourlySchedule `json:"hourlySchedule,omitempty"`

	// List of days of week this schedule has to be run.
	ScheduleRunDays []*DayOfWeek `json:"scheduleRunDays,omitempty"`

	// Frequency of the schedule operation of this policy.
	ScheduleRunFrequency *ScheduleRunType `json:"scheduleRunFrequency,omitempty"`

	// List of times of day this schedule has to be run.
	ScheduleRunTimes []*time.Time `json:"scheduleRunTimes,omitempty"`

	// At every number weeks this schedule has to be run.
	ScheduleWeeklyFrequency *int32 `json:"scheduleWeeklyFrequency,omitempty"`
}

SimpleSchedulePolicy - Simple policy schedule.

func (*SimpleSchedulePolicy) GetSchedulePolicy added in v0.2.0

func (s *SimpleSchedulePolicy) GetSchedulePolicy() *SchedulePolicy

GetSchedulePolicy implements the SchedulePolicyClassification interface for type SimpleSchedulePolicy.

func (SimpleSchedulePolicy) MarshalJSON

func (s SimpleSchedulePolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SimpleSchedulePolicy.

func (*SimpleSchedulePolicy) UnmarshalJSON

func (s *SimpleSchedulePolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type SimpleSchedulePolicy.

type SimpleSchedulePolicyV2 added in v0.3.0

type SimpleSchedulePolicyV2 struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	SchedulePolicyType *string `json:"schedulePolicyType,omitempty"`

	// Daily schedule of this policy
	DailySchedule *DailySchedule `json:"dailySchedule,omitempty"`

	// hourly schedule of this policy
	HourlySchedule *HourlySchedule `json:"hourlySchedule,omitempty"`

	// Frequency of the schedule operation of this policy.
	ScheduleRunFrequency *ScheduleRunType `json:"scheduleRunFrequency,omitempty"`

	// Weekly schedule of this policy
	WeeklySchedule *WeeklySchedule `json:"weeklySchedule,omitempty"`
}

SimpleSchedulePolicyV2 - The V2 policy schedule for IaaS that supports hourly backups.

func (*SimpleSchedulePolicyV2) GetSchedulePolicy added in v0.3.0

func (s *SimpleSchedulePolicyV2) GetSchedulePolicy() *SchedulePolicy

GetSchedulePolicy implements the SchedulePolicyClassification interface for type SimpleSchedulePolicyV2.

func (SimpleSchedulePolicyV2) MarshalJSON added in v0.3.0

func (s SimpleSchedulePolicyV2) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SimpleSchedulePolicyV2.

func (*SimpleSchedulePolicyV2) UnmarshalJSON added in v0.3.0

func (s *SimpleSchedulePolicyV2) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type SimpleSchedulePolicyV2.

type SoftDeleteFeatureState

type SoftDeleteFeatureState string

SoftDeleteFeatureState - Soft Delete feature state

const (
	SoftDeleteFeatureStateDisabled SoftDeleteFeatureState = "Disabled"
	SoftDeleteFeatureStateEnabled  SoftDeleteFeatureState = "Enabled"
	SoftDeleteFeatureStateInvalid  SoftDeleteFeatureState = "Invalid"
)

func PossibleSoftDeleteFeatureStateValues

func PossibleSoftDeleteFeatureStateValues() []SoftDeleteFeatureState

PossibleSoftDeleteFeatureStateValues returns the possible values for the SoftDeleteFeatureState const type.

type StorageType

type StorageType string

StorageType - Storage type

const (
	StorageTypeGeoRedundant               StorageType = "GeoRedundant"
	StorageTypeInvalid                    StorageType = "Invalid"
	StorageTypeLocallyRedundant           StorageType = "LocallyRedundant"
	StorageTypeReadAccessGeoZoneRedundant StorageType = "ReadAccessGeoZoneRedundant"
	StorageTypeZoneRedundant              StorageType = "ZoneRedundant"
)

func PossibleStorageTypeValues

func PossibleStorageTypeValues() []StorageType

PossibleStorageTypeValues returns the possible values for the StorageType const type.

type StorageTypeState

type StorageTypeState string

StorageTypeState - Locked or Unlocked. Once a machine is registered against a resource, the storageTypeState is always Locked.

const (
	StorageTypeStateInvalid  StorageTypeState = "Invalid"
	StorageTypeStateLocked   StorageTypeState = "Locked"
	StorageTypeStateUnlocked StorageTypeState = "Unlocked"
)

func PossibleStorageTypeStateValues

func PossibleStorageTypeStateValues() []StorageTypeState

PossibleStorageTypeStateValues returns the possible values for the StorageTypeState const type.

type SubProtectionPolicy

type SubProtectionPolicy struct {
	// Type of backup policy type
	PolicyType *PolicyType `json:"policyType,omitempty"`

	// Retention policy with the details on backup copy retention ranges.
	RetentionPolicy RetentionPolicyClassification `json:"retentionPolicy,omitempty"`

	// Backup schedule specified as part of backup policy.
	SchedulePolicy SchedulePolicyClassification `json:"schedulePolicy,omitempty"`
}

SubProtectionPolicy - Sub-protection policy which includes schedule and retention

func (SubProtectionPolicy) MarshalJSON

func (s SubProtectionPolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SubProtectionPolicy.

func (*SubProtectionPolicy) UnmarshalJSON

func (s *SubProtectionPolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type SubProtectionPolicy.

type SupportStatus

type SupportStatus string

SupportStatus - Support status of feature

const (
	SupportStatusDefaultOFF   SupportStatus = "DefaultOFF"
	SupportStatusDefaultON    SupportStatus = "DefaultON"
	SupportStatusInvalid      SupportStatus = "Invalid"
	SupportStatusNotSupported SupportStatus = "NotSupported"
	SupportStatusSupported    SupportStatus = "Supported"
)

func PossibleSupportStatusValues

func PossibleSupportStatusValues() []SupportStatus

PossibleSupportStatusValues returns the possible values for the SupportStatus const type.

type TargetAFSRestoreInfo

type TargetAFSRestoreInfo struct {
	// File share name
	Name *string `json:"name,omitempty"`

	// Target file share resource ARM ID
	TargetResourceID *string `json:"targetResourceId,omitempty"`
}

TargetAFSRestoreInfo - Target Azure File Share Info.

type TargetRestoreInfo

type TargetRestoreInfo struct {
	// Resource Id name of the container in which Target DataBase resides
	ContainerID *string `json:"containerId,omitempty"`

	// Database name InstanceName/DataBaseName for SQL or System/DbName for SAP Hana
	DatabaseName *string `json:"databaseName,omitempty"`

	// Can Overwrite if Target DataBase already exists
	OverwriteOption *OverwriteOptions `json:"overwriteOption,omitempty"`

	// Target directory location for restore as files.
	TargetDirectoryForFileRestore *string `json:"targetDirectoryForFileRestore,omitempty"`
}

TargetRestoreInfo - Details about target workload during restore operation.

type TokenInformation

type TokenInformation struct {
	// Expiry time of token.
	ExpiryTimeInUTCTicks *int64 `json:"expiryTimeInUtcTicks,omitempty"`

	// Security PIN
	SecurityPIN *string `json:"securityPIN,omitempty"`

	// Token value.
	Token *string `json:"token,omitempty"`
}

TokenInformation - The token information details.

type TriggerDataMoveRequest

type TriggerDataMoveRequest struct {
	// REQUIRED; Correlation Id
	CorrelationID *string `json:"correlationId,omitempty"`

	// REQUIRED; DataMove Level
	DataMoveLevel *DataMoveLevel `json:"dataMoveLevel,omitempty"`

	// REQUIRED; Source Region
	SourceRegion *string `json:"sourceRegion,omitempty"`

	// REQUIRED; ARM Id of source vault
	SourceResourceID *string `json:"sourceResourceId,omitempty"`

	// Pause GC
	PauseGC *bool `json:"pauseGC,omitempty"`

	// Source Container ArmIds
	SourceContainerArmIDs []*string `json:"sourceContainerArmIds,omitempty"`
}

TriggerDataMoveRequest - Trigger DataMove Request

func (TriggerDataMoveRequest) MarshalJSON

func (t TriggerDataMoveRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type TriggerDataMoveRequest.

type Type

type Type string

Type - Backup management type for this container.

const (
	TypeBackupProtectedItemCountSummary       Type = "BackupProtectedItemCountSummary"
	TypeBackupProtectionContainerCountSummary Type = "BackupProtectionContainerCountSummary"
	TypeInvalid                               Type = "Invalid"
)

func PossibleTypeValues

func PossibleTypeValues() []Type

PossibleTypeValues returns the possible values for the Type const type.

type UnlockDeleteRequest

type UnlockDeleteRequest struct {
	ResourceGuardOperationRequests []*string `json:"resourceGuardOperationRequests,omitempty"`
	ResourceToBeDeleted            *string   `json:"resourceToBeDeleted,omitempty"`
}

UnlockDeleteRequest - Request body of unlock delete API.

func (UnlockDeleteRequest) MarshalJSON

func (u UnlockDeleteRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type UnlockDeleteRequest.

type UnlockDeleteResponse

type UnlockDeleteResponse struct {
	// This is the time when unlock delete privileges will get expired.
	UnlockDeleteExpiryTime *string `json:"unlockDeleteExpiryTime,omitempty"`
}

UnlockDeleteResponse - Response of Unlock Delete API.

type UsagesUnit

type UsagesUnit string

UsagesUnit - Unit of the usage.

const (
	UsagesUnitBytes          UsagesUnit = "Bytes"
	UsagesUnitBytesPerSecond UsagesUnit = "BytesPerSecond"
	UsagesUnitCount          UsagesUnit = "Count"
	UsagesUnitCountPerSecond UsagesUnit = "CountPerSecond"
	UsagesUnitPercent        UsagesUnit = "Percent"
	UsagesUnitSeconds        UsagesUnit = "Seconds"
)

func PossibleUsagesUnitValues

func PossibleUsagesUnitValues() []UsagesUnit

PossibleUsagesUnitValues returns the possible values for the UsagesUnit const type.

type ValidateIaasVMRestoreOperationRequest

type ValidateIaasVMRestoreOperationRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Sets restore request to be validated
	RestoreRequest RestoreRequestClassification `json:"restoreRequest,omitempty"`
}

ValidateIaasVMRestoreOperationRequest - AzureRestoreValidation request.

func (*ValidateIaasVMRestoreOperationRequest) GetValidateOperationRequest added in v0.2.0

func (v *ValidateIaasVMRestoreOperationRequest) GetValidateOperationRequest() *ValidateOperationRequest

GetValidateOperationRequest implements the ValidateOperationRequestClassification interface for type ValidateIaasVMRestoreOperationRequest.

func (*ValidateIaasVMRestoreOperationRequest) GetValidateRestoreOperationRequest added in v0.2.0

func (v *ValidateIaasVMRestoreOperationRequest) GetValidateRestoreOperationRequest() *ValidateRestoreOperationRequest

GetValidateRestoreOperationRequest implements the ValidateRestoreOperationRequestClassification interface for type ValidateIaasVMRestoreOperationRequest.

func (ValidateIaasVMRestoreOperationRequest) MarshalJSON

func (v ValidateIaasVMRestoreOperationRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ValidateIaasVMRestoreOperationRequest.

func (*ValidateIaasVMRestoreOperationRequest) UnmarshalJSON added in v0.2.0

func (v *ValidateIaasVMRestoreOperationRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ValidateIaasVMRestoreOperationRequest.

type ValidateOperationClient added in v0.2.0

type ValidateOperationClient struct {
	// contains filtered or unexported fields
}

ValidateOperationClient contains the methods for the ValidateOperation group. Don't use this type directly, use NewValidateOperationClient() instead.

func NewValidateOperationClient added in v0.2.0

func NewValidateOperationClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ValidateOperationClient, error)

NewValidateOperationClient creates a new instance of ValidateOperationClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ValidateOperationClient) BeginTrigger added in v0.2.0

BeginTrigger - Validate operation for specified backed up item in the form of an asynchronous operation. Returns tracking headers which can be tracked using GetValidateOperationResult API. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. parameters - resource validate operation request options - ValidateOperationClientBeginTriggerOptions contains the optional parameters for the ValidateOperationClient.BeginTrigger method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/TriggerValidateOperation_RestoreDisk.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewValidateOperationClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := client.BeginTrigger(ctx,
		"testVault",
		"testRG",
		&armrecoveryservicesbackup.ValidateIaasVMRestoreOperationRequest{
			ObjectType: to.Ptr("ValidateIaasVMRestoreOperationRequest"),
			RestoreRequest: &armrecoveryservicesbackup.IaasVMRestoreRequest{
				ObjectType:            to.Ptr("IaasVMRestoreRequest"),
				CreateNewCloudService: to.Ptr(true),
				EncryptionDetails: &armrecoveryservicesbackup.EncryptionDetails{
					EncryptionEnabled: to.Ptr(false),
				},
				IdentityInfo: &armrecoveryservicesbackup.IdentityInfo{
					IsSystemAssignedIdentity:  to.Ptr(false),
					ManagedIdentityResourceID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/asmaskarRG1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/asmaskartestmsi"),
				},
				OriginalStorageAccountOption: to.Ptr(false),
				RecoveryPointID:              to.Ptr("348916168024334"),
				RecoveryType:                 to.Ptr(armrecoveryservicesbackup.RecoveryTypeRestoreDisks),
				Region:                       to.Ptr("southeastasia"),
				SourceResourceID:             to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/netsdktestrg/providers/Microsoft.Compute/virtualMachines/netvmtestv2vm1"),
				StorageAccountID:             to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testingRg/providers/Microsoft.Storage/storageAccounts/testAccount"),
			},
		},
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
}
Output:

type ValidateOperationClientBeginTriggerOptions added in v0.2.0

type ValidateOperationClientBeginTriggerOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

ValidateOperationClientBeginTriggerOptions contains the optional parameters for the ValidateOperationClient.BeginTrigger method.

type ValidateOperationClientTriggerResponse added in v0.2.0

type ValidateOperationClientTriggerResponse struct {
}

ValidateOperationClientTriggerResponse contains the response from method ValidateOperationClient.Trigger.

type ValidateOperationRequest

type ValidateOperationRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`
}

ValidateOperationRequest - Base class for validate operation request.

func (*ValidateOperationRequest) GetValidateOperationRequest

func (v *ValidateOperationRequest) GetValidateOperationRequest() *ValidateOperationRequest

GetValidateOperationRequest implements the ValidateOperationRequestClassification interface for type ValidateOperationRequest.

type ValidateOperationRequestClassification

type ValidateOperationRequestClassification interface {
	// GetValidateOperationRequest returns the ValidateOperationRequest content of the underlying type.
	GetValidateOperationRequest() *ValidateOperationRequest
}

ValidateOperationRequestClassification provides polymorphic access to related types. Call the interface's GetValidateOperationRequest() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *ValidateIaasVMRestoreOperationRequest, *ValidateOperationRequest, *ValidateRestoreOperationRequest

type ValidateOperationResponse

type ValidateOperationResponse struct {
	// Gets the validation result
	ValidationResults []*ErrorDetail `json:"validationResults,omitempty"`
}

ValidateOperationResponse - Base class for validate operation response.

type ValidateOperationResultsClient added in v0.2.0

type ValidateOperationResultsClient struct {
	// contains filtered or unexported fields
}

ValidateOperationResultsClient contains the methods for the ValidateOperationResults group. Don't use this type directly, use NewValidateOperationResultsClient() instead.

func NewValidateOperationResultsClient added in v0.2.0

func NewValidateOperationResultsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ValidateOperationResultsClient, error)

NewValidateOperationResultsClient creates a new instance of ValidateOperationResultsClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ValidateOperationResultsClient) Get added in v0.2.0

Get - Fetches the result of a triggered validate operation. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. operationID - OperationID which represents the operation whose result needs to be fetched. options - ValidateOperationResultsClientGetOptions contains the optional parameters for the ValidateOperationResultsClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/ValidateOperationResults.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewValidateOperationResultsClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type ValidateOperationResultsClientGetOptions added in v0.2.0

type ValidateOperationResultsClientGetOptions struct {
}

ValidateOperationResultsClientGetOptions contains the optional parameters for the ValidateOperationResultsClient.Get method.

type ValidateOperationResultsClientGetResponse added in v0.2.0

type ValidateOperationResultsClientGetResponse struct {
	ValidateOperationsResponse
}

ValidateOperationResultsClientGetResponse contains the response from method ValidateOperationResultsClient.Get.

type ValidateOperationStatusesClient added in v0.2.0

type ValidateOperationStatusesClient struct {
	// contains filtered or unexported fields
}

ValidateOperationStatusesClient contains the methods for the ValidateOperationStatuses group. Don't use this type directly, use NewValidateOperationStatusesClient() instead.

func NewValidateOperationStatusesClient added in v0.2.0

func NewValidateOperationStatusesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ValidateOperationStatusesClient, error)

NewValidateOperationStatusesClient creates a new instance of ValidateOperationStatusesClient with the specified values. subscriptionID - The subscription Id. credential - used to authorize requests. Usually a credential from azidentity. options - pass nil to accept the default values.

func (*ValidateOperationStatusesClient) Get added in v0.2.0

Get - Fetches the status of a triggered validate operation. The status can be in progress, completed or failed. You can refer to the OperationStatus enum for all the possible states of the operation. If operation has completed, this method returns the list of errors obtained while validating the operation. If the operation fails it returns an *azcore.ResponseError type. Generated from API version 2022-02-01 vaultName - The name of the recovery services vault. resourceGroupName - The name of the resource group where the recovery services vault is present. operationID - OperationID represents the operation whose status needs to be fetched. options - ValidateOperationStatusesClientGetOptions contains the optional parameters for the ValidateOperationStatusesClient.Get method.

Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2022-02-01/examples/AzureIaasVm/ValidateOperationStatus.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	client, err := armrecoveryservicesbackup.NewValidateOperationStatusesClient("00000000-0000-0000-0000-000000000000", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := client.Get(ctx,
		"NetSDKTestRsVault",
		"SwaggerTestRg",
		"00000000-0000-0000-0000-000000000000",
		nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// TODO: use response item
	_ = res
}
Output:

type ValidateOperationStatusesClientGetOptions added in v0.2.0

type ValidateOperationStatusesClientGetOptions struct {
}

ValidateOperationStatusesClientGetOptions contains the optional parameters for the ValidateOperationStatusesClient.Get method.

type ValidateOperationStatusesClientGetResponse added in v0.2.0

type ValidateOperationStatusesClientGetResponse struct {
	OperationStatus
}

ValidateOperationStatusesClientGetResponse contains the response from method ValidateOperationStatusesClient.Get.

type ValidateOperationsResponse

type ValidateOperationsResponse struct {
	// Base class for validate operation response.
	ValidateOperationResponse *ValidateOperationResponse `json:"validateOperationResponse,omitempty"`
}

type ValidateRestoreOperationRequest

type ValidateRestoreOperationRequest struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`

	// Sets restore request to be validated
	RestoreRequest RestoreRequestClassification `json:"restoreRequest,omitempty"`
}

ValidateRestoreOperationRequest - AzureRestoreValidation request.

func (*ValidateRestoreOperationRequest) GetValidateOperationRequest added in v0.2.0

func (v *ValidateRestoreOperationRequest) GetValidateOperationRequest() *ValidateOperationRequest

GetValidateOperationRequest implements the ValidateOperationRequestClassification interface for type ValidateRestoreOperationRequest.

func (*ValidateRestoreOperationRequest) GetValidateRestoreOperationRequest

func (v *ValidateRestoreOperationRequest) GetValidateRestoreOperationRequest() *ValidateRestoreOperationRequest

GetValidateRestoreOperationRequest implements the ValidateRestoreOperationRequestClassification interface for type ValidateRestoreOperationRequest.

func (ValidateRestoreOperationRequest) MarshalJSON

func (v ValidateRestoreOperationRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ValidateRestoreOperationRequest.

func (*ValidateRestoreOperationRequest) UnmarshalJSON

func (v *ValidateRestoreOperationRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ValidateRestoreOperationRequest.

type ValidateRestoreOperationRequestClassification

type ValidateRestoreOperationRequestClassification interface {
	ValidateOperationRequestClassification
	// GetValidateRestoreOperationRequest returns the ValidateRestoreOperationRequest content of the underlying type.
	GetValidateRestoreOperationRequest() *ValidateRestoreOperationRequest
}

ValidateRestoreOperationRequestClassification provides polymorphic access to related types. Call the interface's GetValidateRestoreOperationRequest() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *ValidateIaasVMRestoreOperationRequest, *ValidateRestoreOperationRequest

type ValidationStatus

type ValidationStatus string

ValidationStatus - Validation Status

const (
	ValidationStatusFailed    ValidationStatus = "Failed"
	ValidationStatusInvalid   ValidationStatus = "Invalid"
	ValidationStatusSucceeded ValidationStatus = "Succeeded"
)

func PossibleValidationStatusValues

func PossibleValidationStatusValues() []ValidationStatus

PossibleValidationStatusValues returns the possible values for the ValidationStatus const type.

type VaultJob

type VaultJob struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	JobType *string `json:"jobType,omitempty"`

	// Gets or sets the state/actions applicable on this job like cancel/retry.
	ActionsInfo []*JobSupportedAction `json:"actionsInfo,omitempty"`

	// ActivityId of job.
	ActivityID *string `json:"activityId,omitempty"`

	// Backup management type to execute the current job.
	BackupManagementType *BackupManagementType `json:"backupManagementType,omitempty"`

	// Time elapsed during the execution of this job.
	Duration *string `json:"duration,omitempty"`

	// The end time.
	EndTime *time.Time `json:"endTime,omitempty"`

	// Friendly name of the entity on which the current job is executing.
	EntityFriendlyName *string `json:"entityFriendlyName,omitempty"`

	// Error details on execution of this job.
	ErrorDetails []*VaultJobErrorInfo `json:"errorDetails,omitempty"`

	// Additional information about the job.
	ExtendedInfo *VaultJobExtendedInfo `json:"extendedInfo,omitempty"`

	// The operation name.
	Operation *string `json:"operation,omitempty"`

	// The start time.
	StartTime *time.Time `json:"startTime,omitempty"`

	// Job status.
	Status *string `json:"status,omitempty"`
}

VaultJob - Vault level Job

func (*VaultJob) GetJob added in v0.2.0

func (v *VaultJob) GetJob() *Job

GetJob implements the JobClassification interface for type VaultJob.

func (VaultJob) MarshalJSON

func (v VaultJob) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type VaultJob.

func (*VaultJob) UnmarshalJSON

func (v *VaultJob) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type VaultJob.

type VaultJobErrorInfo

type VaultJobErrorInfo struct {
	// Error code.
	ErrorCode *int32 `json:"errorCode,omitempty"`

	// Localized error string.
	ErrorString *string `json:"errorString,omitempty"`

	// List of localized recommendations for above error code.
	Recommendations []*string `json:"recommendations,omitempty"`
}

VaultJobErrorInfo - Vault Job specific error information

func (VaultJobErrorInfo) MarshalJSON

func (v VaultJobErrorInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type VaultJobErrorInfo.

type VaultJobExtendedInfo

type VaultJobExtendedInfo struct {
	// Job properties.
	PropertyBag map[string]*string `json:"propertyBag,omitempty"`
}

VaultJobExtendedInfo - Vault Job for CMK - has CMK specific info.

func (VaultJobExtendedInfo) MarshalJSON

func (v VaultJobExtendedInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type VaultJobExtendedInfo.

type VaultStorageConfigOperationResultResponse

type VaultStorageConfigOperationResultResponse struct {
	// REQUIRED; This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.
	ObjectType *string `json:"objectType,omitempty"`
}

VaultStorageConfigOperationResultResponse - Operation result response for Vault Storage Config

func (*VaultStorageConfigOperationResultResponse) GetVaultStorageConfigOperationResultResponse

func (v *VaultStorageConfigOperationResultResponse) GetVaultStorageConfigOperationResultResponse() *VaultStorageConfigOperationResultResponse

GetVaultStorageConfigOperationResultResponse implements the VaultStorageConfigOperationResultResponseClassification interface for type VaultStorageConfigOperationResultResponse.

type VaultStorageConfigOperationResultResponseClassification

type VaultStorageConfigOperationResultResponseClassification interface {
	// GetVaultStorageConfigOperationResultResponse returns the VaultStorageConfigOperationResultResponse content of the underlying type.
	GetVaultStorageConfigOperationResultResponse() *VaultStorageConfigOperationResultResponse
}

VaultStorageConfigOperationResultResponseClassification provides polymorphic access to related types. Call the interface's GetVaultStorageConfigOperationResultResponse() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *PrepareDataMoveResponse, *VaultStorageConfigOperationResultResponse

type WeekOfMonth

type WeekOfMonth string
const (
	WeekOfMonthFirst   WeekOfMonth = "First"
	WeekOfMonthSecond  WeekOfMonth = "Second"
	WeekOfMonthThird   WeekOfMonth = "Third"
	WeekOfMonthFourth  WeekOfMonth = "Fourth"
	WeekOfMonthLast    WeekOfMonth = "Last"
	WeekOfMonthInvalid WeekOfMonth = "Invalid"
)

func PossibleWeekOfMonthValues

func PossibleWeekOfMonthValues() []WeekOfMonth

PossibleWeekOfMonthValues returns the possible values for the WeekOfMonth const type.

type WeeklyRetentionFormat

type WeeklyRetentionFormat struct {
	// List of days of the week.
	DaysOfTheWeek []*DayOfWeek `json:"daysOfTheWeek,omitempty"`

	// List of weeks of month.
	WeeksOfTheMonth []*WeekOfMonth `json:"weeksOfTheMonth,omitempty"`
}

WeeklyRetentionFormat - Weekly retention format.

func (WeeklyRetentionFormat) MarshalJSON

func (w WeeklyRetentionFormat) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WeeklyRetentionFormat.

type WeeklyRetentionSchedule

type WeeklyRetentionSchedule struct {
	// List of days of week for weekly retention policy.
	DaysOfTheWeek []*DayOfWeek `json:"daysOfTheWeek,omitempty"`

	// Retention duration of retention Policy.
	RetentionDuration *RetentionDuration `json:"retentionDuration,omitempty"`

	// Retention times of retention policy.
	RetentionTimes []*time.Time `json:"retentionTimes,omitempty"`
}

WeeklyRetentionSchedule - Weekly retention schedule.

func (WeeklyRetentionSchedule) MarshalJSON

func (w WeeklyRetentionSchedule) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WeeklyRetentionSchedule.

type WeeklySchedule added in v0.3.0

type WeeklySchedule struct {
	ScheduleRunDays []*DayOfWeek `json:"scheduleRunDays,omitempty"`

	// List of times of day this schedule has to be run.
	ScheduleRunTimes []*time.Time `json:"scheduleRunTimes,omitempty"`
}

func (WeeklySchedule) MarshalJSON added in v0.3.0

func (w WeeklySchedule) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WeeklySchedule.

type WorkloadInquiryDetails

type WorkloadInquiryDetails struct {
	// Inquiry validation such as permissions and other backup validations.
	InquiryValidation *InquiryValidation `json:"inquiryValidation,omitempty"`

	// Contains the protectable item Count inside this Container.
	ItemCount *int64 `json:"itemCount,omitempty"`

	// Type of the Workload such as SQL, Oracle etc.
	Type *string `json:"type,omitempty"`
}

WorkloadInquiryDetails - Details of an inquired protectable item.

type WorkloadItem

type WorkloadItem struct {
	// REQUIRED; Type of the backup item.
	WorkloadItemType *string `json:"workloadItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

WorkloadItem - Base class for backup item. Workload-specific backup items are derived from this class.

func (*WorkloadItem) GetWorkloadItem

func (w *WorkloadItem) GetWorkloadItem() *WorkloadItem

GetWorkloadItem implements the WorkloadItemClassification interface for type WorkloadItem.

type WorkloadItemClassification

type WorkloadItemClassification interface {
	// GetWorkloadItem returns the WorkloadItem content of the underlying type.
	GetWorkloadItem() *WorkloadItem
}

WorkloadItemClassification provides polymorphic access to related types. Call the interface's GetWorkloadItem() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureVMWorkloadItem, *AzureVMWorkloadSAPAseDatabaseWorkloadItem, *AzureVMWorkloadSAPAseSystemWorkloadItem, *AzureVMWorkloadSAPHanaDatabaseWorkloadItem, - *AzureVMWorkloadSAPHanaSystemWorkloadItem, *AzureVMWorkloadSQLDatabaseWorkloadItem, *AzureVMWorkloadSQLInstanceWorkloadItem, - *WorkloadItem

type WorkloadItemResource

type WorkloadItemResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// WorkloadItemResource properties
	Properties WorkloadItemClassification `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

WorkloadItemResource - Base class for backup item. Workload-specific backup items are derived from this class.

func (WorkloadItemResource) MarshalJSON

func (w WorkloadItemResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WorkloadItemResource.

func (*WorkloadItemResource) UnmarshalJSON

func (w *WorkloadItemResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type WorkloadItemResource.

type WorkloadItemResourceList

type WorkloadItemResourceList struct {
	// The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.
	NextLink *string `json:"nextLink,omitempty"`

	// List of resources.
	Value []*WorkloadItemResource `json:"value,omitempty"`
}

WorkloadItemResourceList - List of WorkloadItem resources

type WorkloadItemType

type WorkloadItemType string

WorkloadItemType - Workload item type of the item for which intent is to be set

const (
	WorkloadItemTypeInvalid         WorkloadItemType = "Invalid"
	WorkloadItemTypeSAPAseDatabase  WorkloadItemType = "SAPAseDatabase"
	WorkloadItemTypeSAPAseSystem    WorkloadItemType = "SAPAseSystem"
	WorkloadItemTypeSAPHanaDatabase WorkloadItemType = "SAPHanaDatabase"
	WorkloadItemTypeSAPHanaSystem   WorkloadItemType = "SAPHanaSystem"
	WorkloadItemTypeSQLDataBase     WorkloadItemType = "SQLDataBase"
	WorkloadItemTypeSQLInstance     WorkloadItemType = "SQLInstance"
)

func PossibleWorkloadItemTypeValues

func PossibleWorkloadItemTypeValues() []WorkloadItemType

PossibleWorkloadItemTypeValues returns the possible values for the WorkloadItemType const type.

type WorkloadProtectableItem

type WorkloadProtectableItem struct {
	// REQUIRED; Type of the backup item.
	ProtectableItemType *string `json:"protectableItemType,omitempty"`

	// Type of backup management to backup an item.
	BackupManagementType *string `json:"backupManagementType,omitempty"`

	// Friendly name of the backup item.
	FriendlyName *string `json:"friendlyName,omitempty"`

	// State of the back up item.
	ProtectionState *ProtectionStatus `json:"protectionState,omitempty"`

	// Type of workload for the backup management
	WorkloadType *string `json:"workloadType,omitempty"`
}

WorkloadProtectableItem - Base class for backup item. Workload-specific backup items are derived from this class.

func (*WorkloadProtectableItem) GetWorkloadProtectableItem

func (w *WorkloadProtectableItem) GetWorkloadProtectableItem() *WorkloadProtectableItem

GetWorkloadProtectableItem implements the WorkloadProtectableItemClassification interface for type WorkloadProtectableItem.

type WorkloadProtectableItemClassification

type WorkloadProtectableItemClassification interface {
	// GetWorkloadProtectableItem returns the WorkloadProtectableItem content of the underlying type.
	GetWorkloadProtectableItem() *WorkloadProtectableItem
}

WorkloadProtectableItemClassification provides polymorphic access to related types. Call the interface's GetWorkloadProtectableItem() method to access the common type. Use a type switch to determine the concrete type. The possible types are: - *AzureFileShareProtectableItem, *AzureIaaSClassicComputeVMProtectableItem, *AzureIaaSComputeVMProtectableItem, *AzureVMWorkloadProtectableItem, - *AzureVMWorkloadSAPAseSystemProtectableItem, *AzureVMWorkloadSAPHanaDatabaseProtectableItem, *AzureVMWorkloadSAPHanaSystemProtectableItem, - *AzureVMWorkloadSQLAvailabilityGroupProtectableItem, *AzureVMWorkloadSQLDatabaseProtectableItem, *AzureVMWorkloadSQLInstanceProtectableItem, - *IaaSVMProtectableItem, *WorkloadProtectableItem

type WorkloadProtectableItemResource

type WorkloadProtectableItemResource struct {
	// Optional ETag.
	ETag *string `json:"eTag,omitempty"`

	// Resource location.
	Location *string `json:"location,omitempty"`

	// WorkloadProtectableItemResource properties
	Properties WorkloadProtectableItemClassification `json:"properties,omitempty"`

	// Resource tags.
	Tags map[string]*string `json:"tags,omitempty"`

	// READ-ONLY; Resource Id represents the complete path to the resource.
	ID *string `json:"id,omitempty" azure:"ro"`

	// READ-ONLY; Resource name associated with the resource.
	Name *string `json:"name,omitempty" azure:"ro"`

	// READ-ONLY; Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/…
	Type *string `json:"type,omitempty" azure:"ro"`
}

WorkloadProtectableItemResource - Base class for backup item. Workload-specific backup items are derived from this class.

func (WorkloadProtectableItemResource) MarshalJSON

func (w WorkloadProtectableItemResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WorkloadProtectableItemResource.

func (*WorkloadProtectableItemResource) UnmarshalJSON

func (w *WorkloadProtectableItemResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type WorkloadProtectableItemResource.

type WorkloadProtectableItemResourceList

type WorkloadProtectableItemResourceList struct {
	// The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.
	NextLink *string `json:"nextLink,omitempty"`

	// List of resources.
	Value []*WorkloadProtectableItemResource `json:"value,omitempty"`
}

WorkloadProtectableItemResourceList - List of WorkloadProtectableItem resources

type WorkloadType

type WorkloadType string

WorkloadType - Type of workload for the backup management

const (
	WorkloadTypeAzureFileShare    WorkloadType = "AzureFileShare"
	WorkloadTypeAzureSQLDb        WorkloadType = "AzureSqlDb"
	WorkloadTypeClient            WorkloadType = "Client"
	WorkloadTypeExchange          WorkloadType = "Exchange"
	WorkloadTypeFileFolder        WorkloadType = "FileFolder"
	WorkloadTypeGenericDataSource WorkloadType = "GenericDataSource"
	WorkloadTypeInvalid           WorkloadType = "Invalid"
	WorkloadTypeSAPAseDatabase    WorkloadType = "SAPAseDatabase"
	WorkloadTypeSAPHanaDatabase   WorkloadType = "SAPHanaDatabase"
	WorkloadTypeSQLDB             WorkloadType = "SQLDB"
	WorkloadTypeSQLDataBase       WorkloadType = "SQLDataBase"
	WorkloadTypeSharepoint        WorkloadType = "Sharepoint"
	WorkloadTypeSystemState       WorkloadType = "SystemState"
	WorkloadTypeVM                WorkloadType = "VM"
	WorkloadTypeVMwareVM          WorkloadType = "VMwareVM"
)

func PossibleWorkloadTypeValues

func PossibleWorkloadTypeValues() []WorkloadType

PossibleWorkloadTypeValues returns the possible values for the WorkloadType const type.

type XcoolState added in v0.2.0

type XcoolState string

XcoolState - Vault x-cool state

const (
	XcoolStateDisabled XcoolState = "Disabled"
	XcoolStateEnabled  XcoolState = "Enabled"
	XcoolStateInvalid  XcoolState = "Invalid"
)

func PossibleXcoolStateValues added in v0.2.0

func PossibleXcoolStateValues() []XcoolState

PossibleXcoolStateValues returns the possible values for the XcoolState const type.

type YearlyRetentionSchedule

type YearlyRetentionSchedule struct {
	// List of months of year of yearly retention policy.
	MonthsOfYear []*MonthOfYear `json:"monthsOfYear,omitempty"`

	// Retention duration of retention Policy.
	RetentionDuration *RetentionDuration `json:"retentionDuration,omitempty"`

	// Daily retention format for yearly retention policy.
	RetentionScheduleDaily *DailyRetentionFormat `json:"retentionScheduleDaily,omitempty"`

	// Retention schedule format for yearly retention policy.
	RetentionScheduleFormatType *RetentionScheduleFormat `json:"retentionScheduleFormatType,omitempty"`

	// Weekly retention format for yearly retention policy.
	RetentionScheduleWeekly *WeeklyRetentionFormat `json:"retentionScheduleWeekly,omitempty"`

	// Retention times of retention policy.
	RetentionTimes []*time.Time `json:"retentionTimes,omitempty"`
}

YearlyRetentionSchedule - Yearly retention schedule.

func (YearlyRetentionSchedule) MarshalJSON

func (y YearlyRetentionSchedule) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type YearlyRetentionSchedule.

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL