//go:build go1.18
// +build go1.18

// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information.
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
// DO NOT EDIT.

package armrecoveryservicessiterecovery_test

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/armrecoveryservicessiterecovery/v2"
)

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4fc983fb08e5fd8a7a821eb6491f5338ce52a9cf/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_ListByReplicationProtectionContainers.json
func ExampleReplicationProtectionClustersClient_NewListByReplicationProtectionContainersPager() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armrecoveryservicessiterecovery.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewReplicationProtectionClustersClient().NewListByReplicationProtectionContainersPager("resourceGroupPS1", "vault1", "eastus", "eastus-container", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page.ReplicationProtectionClusterCollection = armrecoveryservicessiterecovery.ReplicationProtectionClusterCollection{
		// 	Value: []*armrecoveryservicessiterecovery.ReplicationProtectionCluster{
		// 		{
		// 			Name: to.Ptr("cluster1"),
		// 			Type: to.Ptr("Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionClusters"),
		// 			ID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/eastus/replicationProtectionContainers/eastus-container/replicationProtectionClusters/cluster1"),
		// 			Properties: &armrecoveryservicessiterecovery.ReplicationProtectionClusterProperties{
		// 				ActiveLocation: to.Ptr("Primary"),
		// 				AgentClusterID: to.Ptr("dd9925cf-5f90-49e9-bd6d-d4cbdcec956b"),
		// 				AllowedOperations: []*string{
		// 					to.Ptr("UnplannedFailover"),
		// 					to.Ptr("DisableProtection")},
		// 					AreAllClusterNodesRegistered: to.Ptr(true),
		// 					ClusterFqdn: to.Ptr("ad45f2fc-f9d6-42ac-8a7c-1c5380c88c28"),
		// 					ClusterNodeFqdns: []*string{
		// 					},
		// 					ClusterProtectedItemIDs: []*string{
		// 						to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/eastus/replicationProtectionContainers/eastus-container/replicationProtectedItems/cluster2vm0"),
		// 						to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/eastus/replicationProtectionContainers/eastus-container/replicationProtectedItems/cluster2vm1")},
		// 						ClusterRegisteredNodes: []*armrecoveryservicessiterecovery.RegisteredClusterNodes{
		// 							{
		// 								BiosID: to.Ptr("eed7a457-b11f-420e-8e4f-384833a6b7c9"),
		// 								ClusterNodeFqdn: to.Ptr("VM0"),
		// 								IsSharedDiskVirtualNode: to.Ptr(true),
		// 								MachineID: to.Ptr("a7eaf02d-60d9-45be-a444-d1b945f1c7b2"),
		// 						}},
		// 						HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
		// 						},
		// 						PolicyFriendlyName: to.Ptr("24-hour-retention-policy"),
		// 						PolicyID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/24-hour-retention-policy"),
		// 						PrimaryFabricFriendlyName: to.Ptr("eastus"),
		// 						PrimaryFabricProvider: to.Ptr("AzureFabric"),
		// 						PrimaryProtectionContainerFriendlyName: to.Ptr("eastus"),
		// 						ProtectionClusterType: to.Ptr("WindowsServerFailoverCluster"),
		// 						ProtectionState: to.Ptr("Protected"),
		// 						ProtectionStateDescription: to.Ptr("Protected"),
		// 						ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AReplicationProtectionClusterDetails{
		// 							InstanceType: to.Ptr("A2A"),
		// 							ClusterManagementID: to.Ptr("1ed32804-ae51-4752-9448-9f686ae27d7b"),
		// 							InitialPrimaryFabricLocation: to.Ptr("eastus"),
		// 							InitialPrimaryZone: to.Ptr(""),
		// 							InitialRecoveryFabricLocation: to.Ptr("centraluseuap"),
		// 							InitialRecoveryZone: to.Ptr(""),
		// 							MultiVMGroupCreateOption: to.Ptr(armrecoveryservicessiterecovery.MultiVMGroupCreateOptionUserSpecified),
		// 							MultiVMGroupID: to.Ptr("4c2988ed-7e2a-566e-9c5f-c33835621e83"),
		// 							MultiVMGroupName: to.Ptr("multiVmGroupName1111"),
		// 							PrimaryFabricLocation: to.Ptr("eastus"),
		// 							RecoveryFabricLocation: to.Ptr("centraluseuap"),
		// 						},
		// 						ProvisioningState: to.Ptr("Succeeded"),
		// 						RecoveryContainerID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/centraluseuap/replicationProtectionContainers/centraluseuap-container"),
		// 						RecoveryFabricFriendlyName: to.Ptr("centraluseuap"),
		// 						RecoveryFabricID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/centraluseuap"),
		// 						RecoveryProtectionContainerFriendlyName: to.Ptr("eastus-container"),
		// 						ReplicationHealth: to.Ptr("Normal"),
		// 						SharedDiskProperties: &armrecoveryservicessiterecovery.SharedDiskReplicationItemProperties{
		// 							AllowedOperations: []*string{
		// 							},
		// 							HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
		// 							},
		// 							ProtectionState: to.Ptr("Protected"),
		// 							ReplicationHealth: to.Ptr("Normal"),
		// 							SharedDiskProviderSpecificDetails: &armrecoveryservicessiterecovery.A2ASharedDiskReplicationDetails{
		// 								InstanceType: to.Ptr("A2A"),
		// 								LastRpoCalculatedTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2022-11-11T07:34:58.856Z"); return t}()),
		// 								ManagementID: to.Ptr("1ed32804-ae51-4752-9448-9f686ae27d7b"),
		// 								PrimaryFabricLocation: to.Ptr("eastus"),
		// 								RecoveryFabricLocation: to.Ptr("centraluseuap"),
		// 								RpoInSeconds: to.Ptr[int64](300),
		// 							},
		// 						},
		// 					},
		// 			}},
		// 		}
	}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4fc983fb08e5fd8a7a821eb6491f5338ce52a9cf/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_Get.json
func ExampleReplicationProtectionClustersClient_Get() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armrecoveryservicessiterecovery.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewReplicationProtectionClustersClient().Get(ctx, "resourceGroupPS1", "vault1", "eastus", "eastus-container", "cluster1", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.ReplicationProtectionCluster = armrecoveryservicessiterecovery.ReplicationProtectionCluster{
	// 	Name: to.Ptr("cluster1"),
	// 	Type: to.Ptr("Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionClusters"),
	// 	ID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/eastus/replicationProtectionContainers/eastus-container/replicationProtectionClusters/cluster1"),
	// 	Properties: &armrecoveryservicessiterecovery.ReplicationProtectionClusterProperties{
	// 		ActiveLocation: to.Ptr("Primary"),
	// 		AgentClusterID: to.Ptr("dd9925cf-5f90-49e9-bd6d-d4cbdcec956b"),
	// 		AllowedOperations: []*string{
	// 			to.Ptr("UnplannedFailover"),
	// 			to.Ptr("DisableProtection")},
	// 			AreAllClusterNodesRegistered: to.Ptr(true),
	// 			ClusterFqdn: to.Ptr("ad45f2fc-f9d6-42ac-8a7c-1c5380c88c28"),
	// 			ClusterNodeFqdns: []*string{
	// 			},
	// 			ClusterProtectedItemIDs: []*string{
	// 				to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/eastus/replicationProtectionContainers/eastus-container/replicationProtectedItems/cluster2vm0"),
	// 				to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/eastus/replicationProtectionContainers/eastus-container/replicationProtectedItems/cluster2vm1")},
	// 				ClusterRegisteredNodes: []*armrecoveryservicessiterecovery.RegisteredClusterNodes{
	// 					{
	// 						BiosID: to.Ptr("eed7a457-b11f-420e-8e4f-384833a6b7c9"),
	// 						ClusterNodeFqdn: to.Ptr("VM0"),
	// 						IsSharedDiskVirtualNode: to.Ptr(true),
	// 						MachineID: to.Ptr("a7eaf02d-60d9-45be-a444-d1b945f1c7b2"),
	// 				}},
	// 				HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 				},
	// 				PolicyFriendlyName: to.Ptr("24-hour-retention-policy"),
	// 				PolicyID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/24-hour-retention-policy"),
	// 				PrimaryFabricFriendlyName: to.Ptr("eastus"),
	// 				PrimaryFabricProvider: to.Ptr("AzureFabric"),
	// 				PrimaryProtectionContainerFriendlyName: to.Ptr("eastus"),
	// 				ProtectionClusterType: to.Ptr("WindowsServerFailoverCluster"),
	// 				ProtectionState: to.Ptr("Protected"),
	// 				ProtectionStateDescription: to.Ptr("Protected"),
	// 				ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AReplicationProtectionClusterDetails{
	// 					InstanceType: to.Ptr("A2A"),
	// 					ClusterManagementID: to.Ptr("1ed32804-ae51-4752-9448-9f686ae27d7b"),
	// 					InitialPrimaryFabricLocation: to.Ptr("eastus"),
	// 					InitialPrimaryZone: to.Ptr(""),
	// 					InitialRecoveryFabricLocation: to.Ptr("centraluseuap"),
	// 					InitialRecoveryZone: to.Ptr(""),
	// 					MultiVMGroupCreateOption: to.Ptr(armrecoveryservicessiterecovery.MultiVMGroupCreateOptionUserSpecified),
	// 					MultiVMGroupID: to.Ptr("4c2988ed-7e2a-566e-9c5f-c33835621e83"),
	// 					MultiVMGroupName: to.Ptr("multiVmGroupName1111"),
	// 					PrimaryFabricLocation: to.Ptr("eastus"),
	// 					RecoveryFabricLocation: to.Ptr("centraluseuap"),
	// 				},
	// 				ProvisioningState: to.Ptr("Succeeded"),
	// 				RecoveryContainerID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/centraluseuap/replicationProtectionContainers/centraluseuap-container"),
	// 				RecoveryFabricFriendlyName: to.Ptr("centraluseuap"),
	// 				RecoveryFabricID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/centraluseuap"),
	// 				RecoveryProtectionContainerFriendlyName: to.Ptr("eastus-container"),
	// 				ReplicationHealth: to.Ptr("Normal"),
	// 				SharedDiskProperties: &armrecoveryservicessiterecovery.SharedDiskReplicationItemProperties{
	// 					AllowedOperations: []*string{
	// 					},
	// 					HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 					},
	// 					ProtectionState: to.Ptr("Protected"),
	// 					ReplicationHealth: to.Ptr("Normal"),
	// 					SharedDiskProviderSpecificDetails: &armrecoveryservicessiterecovery.A2ASharedDiskReplicationDetails{
	// 						InstanceType: to.Ptr("A2A"),
	// 						LastRpoCalculatedTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2022-11-11T07:34:58.856Z"); return t}()),
	// 						ManagementID: to.Ptr("1ed32804-ae51-4752-9448-9f686ae27d7b"),
	// 						PrimaryFabricLocation: to.Ptr("eastus"),
	// 						ProtectedManagedDisks: []*armrecoveryservicessiterecovery.A2AProtectedManagedDiskDetails{
	// 							{
	// 								AllowedDiskLevelOperation: []*string{
	// 								},
	// 								DataPendingAtSourceAgentInMB: to.Ptr[float64](10),
	// 								DataPendingInStagingStorageAccountInMB: to.Ptr[float64](100),
	// 								DiskCapacityInBytes: to.Ptr[int64](0),
	// 								DiskID: to.Ptr("/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourcegroups/resourceGroupPS2/providers/microsoft.compute/disks/cluster2-datadisk0"),
	// 								DiskName: to.Ptr("cluster2-datadisk0"),
	// 								DiskState: to.Ptr("Unavailable"),
	// 								DiskType: to.Ptr("Data"),
	// 								FailoverDiskName: to.Ptr("cluster2-datadisk0"),
	// 								IsDiskEncrypted: to.Ptr(false),
	// 								IsDiskKeyEncrypted: to.Ptr(false),
	// 								PrimaryStagingAzureStorageAccountID: to.Ptr("/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS2/providers/Microsoft.Storage/storageAccounts/eastus1210192341"),
	// 								RecoveryReplicaDiskAccountType: to.Ptr("Premium_LRS"),
	// 								RecoveryReplicaDiskID: to.Ptr("/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.Compute/disks/cluster2-datadisk0-ASRReplica"),
	// 								RecoveryResourceGroupID: to.Ptr("/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1"),
	// 								RecoveryTargetDiskAccountType: to.Ptr("Premium_LRS"),
	// 								ResyncRequired: to.Ptr(true),
	// 								TfoDiskName: to.Ptr("cluster2-datadisk0-ASRtest"),
	// 						}},
	// 						RecoveryFabricLocation: to.Ptr("centraluseuap"),
	// 						RpoInSeconds: to.Ptr[int64](300),
	// 						UnprotectedDisks: []*armrecoveryservicessiterecovery.A2AUnprotectedDiskDetails{
	// 							{
	// 								DiskAutoProtectionStatus: to.Ptr(armrecoveryservicessiterecovery.AutoProtectionOfDataDiskDisabled),
	// 								DiskLunID: to.Ptr[int32](1),
	// 							},
	// 							{
	// 								DiskAutoProtectionStatus: to.Ptr(armrecoveryservicessiterecovery.AutoProtectionOfDataDiskDisabled),
	// 								DiskLunID: to.Ptr[int32](2),
	// 						}},
	// 					},
	// 				},
	// 			},
	// 		}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4fc983fb08e5fd8a7a821eb6491f5338ce52a9cf/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_Create.json
func ExampleReplicationProtectionClustersClient_BeginCreate() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armrecoveryservicessiterecovery.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewReplicationProtectionClustersClient().BeginCreate(ctx, "resourceGroupPS1", "vault1", "eastus", "eastus-container", "cluster12", armrecoveryservicessiterecovery.ReplicationProtectionCluster{
		Properties: &armrecoveryservicessiterecovery.ReplicationProtectionClusterProperties{
			PolicyID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/24-hour-retention-policy"),
			ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AReplicationProtectionClusterDetails{
				InstanceType: to.Ptr("A2A"),
			},
			RecoveryContainerID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/centraluseuap/replicationProtectionContainers/centraluseuap-container"),
		},
	}, 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)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.ReplicationProtectionCluster = armrecoveryservicessiterecovery.ReplicationProtectionCluster{
	// 	Name: to.Ptr("cluster12"),
	// 	Type: to.Ptr("Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionClusters"),
	// 	ID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/eastus/replicationProtectionContainers/eastus-container/replicationProtectionClusters/cluster12"),
	// 	Properties: &armrecoveryservicessiterecovery.ReplicationProtectionClusterProperties{
	// 		ActiveLocation: to.Ptr("Primary"),
	// 		AllowedOperations: []*string{
	// 			to.Ptr("UnplannedFailover"),
	// 			to.Ptr("DisableProtection")},
	// 			AreAllClusterNodesRegistered: to.Ptr(false),
	// 			ClusterNodeFqdns: []*string{
	// 			},
	// 			ClusterProtectedItemIDs: []*string{
	// 			},
	// 			ClusterRegisteredNodes: []*armrecoveryservicessiterecovery.RegisteredClusterNodes{
	// 			},
	// 			HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 			},
	// 			PolicyFriendlyName: to.Ptr("24-hour-retention-policy"),
	// 			PolicyID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/24-hour-retention-policy"),
	// 			PrimaryFabricFriendlyName: to.Ptr("eastus"),
	// 			PrimaryFabricProvider: to.Ptr("AzureFabric"),
	// 			PrimaryProtectionContainerFriendlyName: to.Ptr("eastus"),
	// 			ProtectionState: to.Ptr("NotProtected"),
	// 			ProtectionStateDescription: to.Ptr("NotProtected"),
	// 			ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AReplicationProtectionClusterDetails{
	// 				InstanceType: to.Ptr("A2A"),
	// 				ClusterManagementID: to.Ptr("4b8c1c01-5ad7-4958-a98d-daf7cca6a124"),
	// 				InitialPrimaryFabricLocation: to.Ptr("eastus"),
	// 				InitialPrimaryZone: to.Ptr(""),
	// 				InitialRecoveryFabricLocation: to.Ptr("centraluseuap"),
	// 				InitialRecoveryZone: to.Ptr(""),
	// 				LifecycleID: to.Ptr("d5f6f011-7ef5-4c78-80fe-6e1b28401c4d"),
	// 				PrimaryFabricLocation: to.Ptr("eastus"),
	// 				RecoveryFabricLocation: to.Ptr("centraluseuap"),
	// 			},
	// 			ProvisioningState: to.Ptr("Succeeded"),
	// 			RecoveryContainerID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/centraluseuap/replicationProtectionContainers/centraluseuap-container"),
	// 			RecoveryFabricFriendlyName: to.Ptr("centraluseuap"),
	// 			RecoveryFabricID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/centraluseuap"),
	// 			RecoveryProtectionContainerFriendlyName: to.Ptr("eastus-container"),
	// 			ReplicationHealth: to.Ptr("Normal"),
	// 			SharedDiskProperties: &armrecoveryservicessiterecovery.SharedDiskReplicationItemProperties{
	// 				AllowedOperations: []*string{
	// 				},
	// 				HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 				},
	// 				ProtectionState: to.Ptr("EnablingProtection"),
	// 				ReplicationHealth: to.Ptr("Normal"),
	// 				SharedDiskProviderSpecificDetails: &armrecoveryservicessiterecovery.A2ASharedDiskReplicationDetails{
	// 					InstanceType: to.Ptr("A2A"),
	// 					ManagementID: to.Ptr("4b8c1c01-5ad7-4958-a98d-daf7cca6a124"),
	// 					PrimaryFabricLocation: to.Ptr("eastus"),
	// 					ProtectedManagedDisks: []*armrecoveryservicessiterecovery.A2AProtectedManagedDiskDetails{
	// 					},
	// 					RecoveryFabricLocation: to.Ptr("centraluseuap"),
	// 				},
	// 			},
	// 		},
	// 	}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4fc983fb08e5fd8a7a821eb6491f5338ce52a9cf/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_Purge.json
func ExampleReplicationProtectionClustersClient_BeginPurge() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armrecoveryservicessiterecovery.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewReplicationProtectionClustersClient().BeginPurge(ctx, "resourceGroupPS1", "vault1", "eastus", "eastus-container", "cluster1", 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)
	}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4fc983fb08e5fd8a7a821eb6491f5338ce52a9cf/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_ApplyRecoveryPoint.json
func ExampleReplicationProtectionClustersClient_BeginApplyRecoveryPoint() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armrecoveryservicessiterecovery.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewReplicationProtectionClustersClient().BeginApplyRecoveryPoint(ctx, "resourceGroupPS1", "vault1", "fabric-pri-eastus", "pri-cloud-eastus", "testcluster", armrecoveryservicessiterecovery.ApplyClusterRecoveryPointInput{
		Properties: &armrecoveryservicessiterecovery.ApplyClusterRecoveryPointInputProperties{
			ClusterRecoveryPointID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/shashankvaultpvt/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster/recoveryPoints/cc48b7f3-b267-432b-ad76-45528974dc62"),
			IndividualNodeRecoveryPoints: []*string{
				to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/shashankvaultpvt/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/testVM/recoveryPoints/b5c2051b-79e3-41ad-9d25-244f6ef8ce7d")},
			ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AApplyClusterRecoveryPointInput{
				InstanceType: to.Ptr("A2A"),
			},
		},
	}, 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)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.ReplicationProtectionCluster = armrecoveryservicessiterecovery.ReplicationProtectionCluster{
	// 	Name: to.Ptr("testcluster"),
	// 	Type: to.Ptr("Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionClusters"),
	// 	ID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster"),
	// 	Properties: &armrecoveryservicessiterecovery.ReplicationProtectionClusterProperties{
	// 		ActiveLocation: to.Ptr("Recovery"),
	// 		AgentClusterID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 		AllowedOperations: []*string{
	// 			to.Ptr("CommitFailoverProtectionCluster"),
	// 			to.Ptr("ChangePitProtectionCluster"),
	// 			to.Ptr("PurgeProtectionCluster")},
	// 			AreAllClusterNodesRegistered: to.Ptr(true),
	// 			ClusterFqdn: to.Ptr("sdgqlc"),
	// 			ClusterNodeFqdns: []*string{
	// 				to.Ptr("sdgql0"),
	// 				to.Ptr("sdgql1")},
	// 				ClusterProtectedItemIDs: []*string{
	// 					to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/yNdYnDYKZ7hYU7zyVeBychFBCyAbEkrJcJNUarDrXio"),
	// 					to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/kdUdWvpVnm3QgOQPHoVMX8YAtAO8OC4kKNjt40ERSr4")},
	// 					ClusterRegisteredNodes: []*armrecoveryservicessiterecovery.RegisteredClusterNodes{
	// 						{
	// 							BiosID: to.Ptr("37D0059C-9118-4220-AA1D-58A10EFA7660"),
	// 							ClusterNodeFqdn: to.Ptr("sdgql0"),
	// 							IsSharedDiskVirtualNode: to.Ptr(false),
	// 							MachineID: to.Ptr("3794026b-6792-4d12-9c0c-de0c79376c90"),
	// 						},
	// 						{
	// 							BiosID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 							ClusterNodeFqdn: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 							IsSharedDiskVirtualNode: to.Ptr(true),
	// 							MachineID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 						},
	// 						{
	// 							BiosID: to.Ptr("83CCE932-67EC-4C13-AB29-ACF5F8F7ED48"),
	// 							ClusterNodeFqdn: to.Ptr("sdgql1"),
	// 							IsSharedDiskVirtualNode: to.Ptr(false),
	// 							MachineID: to.Ptr("cb27913a-a5f2-4691-9eba-78b67f45a57a"),
	// 					}},
	// 					CurrentScenario: &armrecoveryservicessiterecovery.CurrentScenarioDetails{
	// 						JobID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None"),
	// 						ScenarioName: to.Ptr("None"),
	// 						StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "1753-01-01T01:01:01.000Z"); return t}()),
	// 					},
	// 					HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 					},
	// 					LastSuccessfulFailoverTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T09:31:13.160Z"); return t}()),
	// 					LastSuccessfulTestFailoverTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T06:08:01.744Z"); return t}()),
	// 					PolicyFriendlyName: to.Ptr("klncksan"),
	// 					PolicyID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/klncksan"),
	// 					PrimaryFabricFriendlyName: to.Ptr("East US"),
	// 					PrimaryFabricProvider: to.Ptr("AzureFabric"),
	// 					PrimaryProtectionContainerFriendlyName: to.Ptr("East US"),
	// 					ProtectionClusterType: to.Ptr("WindowsServerFailoverCluster"),
	// 					ProtectionState: to.Ptr("FailoverCompleted"),
	// 					ProtectionStateDescription: to.Ptr("Failover completed."),
	// 					ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AReplicationProtectionClusterDetails{
	// 						InstanceType: to.Ptr("A2A"),
	// 						ClusterManagementID: to.Ptr("a24d47b2-a80b-4553-9c16-499c30c3be07"),
	// 						FailoverRecoveryPointID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster/recoveryPoints/cc48b7f3-b267-432b-ad76-45528974dc62"),
	// 						InitialPrimaryFabricLocation: to.Ptr("eastus"),
	// 						InitialPrimaryZone: to.Ptr(""),
	// 						InitialRecoveryFabricLocation: to.Ptr("westus"),
	// 						InitialRecoveryZone: to.Ptr(""),
	// 						LastRpoCalculatedTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T10:19:11.049Z"); return t}()),
	// 						LifecycleID: to.Ptr("3d523ab9-8c6d-40af-850d-ccee06513dc6"),
	// 						MultiVMGroupCreateOption: to.Ptr(armrecoveryservicessiterecovery.MultiVMGroupCreateOptionUserSpecified),
	// 						MultiVMGroupID: to.Ptr("a7ef77cb-ae59-545f-a32a-bf30575ab1c6"),
	// 						MultiVMGroupName: to.Ptr("testcluster"),
	// 						PrimaryFabricLocation: to.Ptr("eastus"),
	// 						RecoveryFabricLocation: to.Ptr("westus"),
	// 						RpoInSeconds: to.Ptr[int64](3213),
	// 					},
	// 					ProvisioningState: to.Ptr("Succeeded"),
	// 					RecoveryContainerID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-rec-westus/replicationProtectionContainers/rec-cloud-westus"),
	// 					RecoveryFabricFriendlyName: to.Ptr("West US"),
	// 					RecoveryFabricID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-rec-westus"),
	// 					RecoveryProtectionContainerFriendlyName: to.Ptr("pri-cloud-eastus"),
	// 					ReplicationHealth: to.Ptr("Normal"),
	// 					SharedDiskProperties: &armrecoveryservicessiterecovery.SharedDiskReplicationItemProperties{
	// 						AllowedOperations: []*string{
	// 						},
	// 						HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 						},
	// 						ProtectionState: to.Ptr("UnplannedFailoverCommitRequired"),
	// 						ReplicationHealth: to.Ptr("Normal"),
	// 						SharedDiskProviderSpecificDetails: &armrecoveryservicessiterecovery.A2ASharedDiskReplicationDetails{
	// 							InstanceType: to.Ptr("A2A"),
	// 							FailoverRecoveryPointID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster/recoveryPoints/cc48b7f3-b267-432b-ad76-45528974dc62"),
	// 							LastRpoCalculatedTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T09:20:35.930Z"); return t}()),
	// 							ManagementID: to.Ptr("a24d47b2-a80b-4553-9c16-499c30c3be07"),
	// 							PrimaryFabricLocation: to.Ptr("eastus"),
	// 							ProtectedManagedDisks: []*armrecoveryservicessiterecovery.A2AProtectedManagedDiskDetails{
	// 								{
	// 									AllowedDiskLevelOperation: []*string{
	// 									},
	// 									DataPendingAtSourceAgentInMB: to.Ptr[float64](0),
	// 									DataPendingInStagingStorageAccountInMB: to.Ptr[float64](0),
	// 									DiskCapacityInBytes: to.Ptr[int64](274877906944),
	// 									DiskID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourcegroups/clustertestrg-19-01/providers/microsoft.compute/disks/sdgql-datadisk0"),
	// 									DiskName: to.Ptr("sdgql-datadisk0"),
	// 									DiskState: to.Ptr("Protected"),
	// 									DiskType: to.Ptr("Data"),
	// 									FailoverDiskName: to.Ptr("sdgql-datadisk0"),
	// 									IsDiskEncrypted: to.Ptr(false),
	// 									IsDiskKeyEncrypted: to.Ptr(false),
	// 									PrimaryStagingAzureStorageAccountID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.Storage/storageAccounts/ix701lshashankvaasrcache"),
	// 									RecoveryReplicaDiskAccountType: to.Ptr("Premium_LRS"),
	// 									RecoveryReplicaDiskID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr/providers/Microsoft.Compute/disks/sdgql-datadisk0-ASRReplica"),
	// 									RecoveryResourceGroupID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr"),
	// 									RecoveryTargetDiskAccountType: to.Ptr("Premium_LRS"),
	// 									RecoveryTargetDiskID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr/providers/Microsoft.Compute/disks/sdgql-datadisk0"),
	// 									ResyncRequired: to.Ptr(false),
	// 									TfoDiskName: to.Ptr("sdgql-datadisk0-ASRtest"),
	// 							}},
	// 							RecoveryFabricLocation: to.Ptr("westus"),
	// 							RpoInSeconds: to.Ptr[int64](10),
	// 						},
	// 						TestFailoverState: to.Ptr("None"),
	// 					},
	// 					TestFailoverState: to.Ptr("None"),
	// 					TestFailoverStateDescription: to.Ptr("None"),
	// 				},
	// 			}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4fc983fb08e5fd8a7a821eb6491f5338ce52a9cf/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_FailoverCommit.json
func ExampleReplicationProtectionClustersClient_BeginFailoverCommit() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armrecoveryservicessiterecovery.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewReplicationProtectionClustersClient().BeginFailoverCommit(ctx, "resourceGroupPS1", "vault1", "fabric-pri-eastus", "pri-cloud-eastus", "testcluster", 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)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.ReplicationProtectionCluster = armrecoveryservicessiterecovery.ReplicationProtectionCluster{
	// 	Name: to.Ptr("testcluster"),
	// 	Type: to.Ptr("Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionClusters"),
	// 	ID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster"),
	// 	Properties: &armrecoveryservicessiterecovery.ReplicationProtectionClusterProperties{
	// 		ActiveLocation: to.Ptr("Primary"),
	// 		AgentClusterID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 		AllowedOperations: []*string{
	// 			to.Ptr("PurgeProtectionCluster")},
	// 			AreAllClusterNodesRegistered: to.Ptr(true),
	// 			ClusterFqdn: to.Ptr("sdgqlc"),
	// 			ClusterNodeFqdns: []*string{
	// 				to.Ptr("sdgql0"),
	// 				to.Ptr("sdgql1")},
	// 				ClusterProtectedItemIDs: []*string{
	// 					to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/yNdYnDYKZ7hYU7zyVeBychFBCyAbEkrJcJNUarDrXio"),
	// 					to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/kdUdWvpVnm3QgOQPHoVMX8YAtAO8OC4kKNjt40ERSr4")},
	// 					ClusterRegisteredNodes: []*armrecoveryservicessiterecovery.RegisteredClusterNodes{
	// 						{
	// 							BiosID: to.Ptr("37D0059C-9118-4220-AA1D-58A10EFA7660"),
	// 							ClusterNodeFqdn: to.Ptr("sdgql0"),
	// 							IsSharedDiskVirtualNode: to.Ptr(false),
	// 							MachineID: to.Ptr("3794026b-6792-4d12-9c0c-de0c79376c90"),
	// 						},
	// 						{
	// 							BiosID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 							ClusterNodeFqdn: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 							IsSharedDiskVirtualNode: to.Ptr(true),
	// 							MachineID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 						},
	// 						{
	// 							BiosID: to.Ptr("83CCE932-67EC-4C13-AB29-ACF5F8F7ED48"),
	// 							ClusterNodeFqdn: to.Ptr("sdgql1"),
	// 							IsSharedDiskVirtualNode: to.Ptr(false),
	// 							MachineID: to.Ptr("cb27913a-a5f2-4691-9eba-78b67f45a57a"),
	// 					}},
	// 					CurrentScenario: &armrecoveryservicessiterecovery.CurrentScenarioDetails{
	// 						JobID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None"),
	// 						ScenarioName: to.Ptr("None"),
	// 						StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "1753-01-01T01:01:01.000Z"); return t}()),
	// 					},
	// 					HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 					},
	// 					LastSuccessfulFailoverTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T09:31:13.160Z"); return t}()),
	// 					LastSuccessfulTestFailoverTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T06:08:01.744Z"); return t}()),
	// 					PolicyFriendlyName: to.Ptr("klncksan"),
	// 					PolicyID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/klncksan"),
	// 					PrimaryFabricFriendlyName: to.Ptr("East US"),
	// 					PrimaryFabricProvider: to.Ptr("AzureFabric"),
	// 					PrimaryProtectionContainerFriendlyName: to.Ptr("East US"),
	// 					ProtectionClusterType: to.Ptr("WindowsServerFailoverCluster"),
	// 					ProtectionState: to.Ptr("FailoverCommited"),
	// 					ProtectionStateDescription: to.Ptr("Failover committed."),
	// 					ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AReplicationProtectionClusterDetails{
	// 						InstanceType: to.Ptr("A2A"),
	// 						ClusterManagementID: to.Ptr("a24d47b2-a80b-4553-9c16-499c30c3be07"),
	// 						FailoverRecoveryPointID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster/recoveryPoints/cc48b7f3-b267-432b-ad76-45528974dc62"),
	// 						InitialPrimaryFabricLocation: to.Ptr("eastus"),
	// 						InitialPrimaryZone: to.Ptr(""),
	// 						InitialRecoveryFabricLocation: to.Ptr("westus"),
	// 						InitialRecoveryZone: to.Ptr(""),
	// 						LastRpoCalculatedTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-24T04:47:24.327Z"); return t}()),
	// 						LifecycleID: to.Ptr("3d523ab9-8c6d-40af-850d-ccee06513dc6"),
	// 						MultiVMGroupCreateOption: to.Ptr(armrecoveryservicessiterecovery.MultiVMGroupCreateOptionUserSpecified),
	// 						MultiVMGroupID: to.Ptr("a7ef77cb-ae59-545f-a32a-bf30575ab1c6"),
	// 						MultiVMGroupName: to.Ptr("testcluster"),
	// 						PrimaryFabricLocation: to.Ptr("eastus"),
	// 						RecoveryFabricLocation: to.Ptr("westus"),
	// 						RpoInSeconds: to.Ptr[int64](156107),
	// 					},
	// 					ProvisioningState: to.Ptr("Succeeded"),
	// 					RecoveryContainerID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-rec-westus/replicationProtectionContainers/rec-cloud-westus"),
	// 					RecoveryFabricFriendlyName: to.Ptr("West US"),
	// 					RecoveryFabricID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-rec-westus"),
	// 					RecoveryProtectionContainerFriendlyName: to.Ptr("pri-cloud-eastus"),
	// 					ReplicationHealth: to.Ptr("Normal"),
	// 					SharedDiskProperties: &armrecoveryservicessiterecovery.SharedDiskReplicationItemProperties{
	// 						AllowedOperations: []*string{
	// 						},
	// 						HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 						},
	// 						ProtectionState: to.Ptr("UnplannedFailoverCommitted"),
	// 						ReplicationHealth: to.Ptr("Normal"),
	// 						SharedDiskProviderSpecificDetails: &armrecoveryservicessiterecovery.A2ASharedDiskReplicationDetails{
	// 							InstanceType: to.Ptr("A2A"),
	// 							FailoverRecoveryPointID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster/recoveryPoints/cc48b7f3-b267-432b-ad76-45528974dc62"),
	// 							LastRpoCalculatedTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T09:20:35.930Z"); return t}()),
	// 							ManagementID: to.Ptr("a24d47b2-a80b-4553-9c16-499c30c3be07"),
	// 							PrimaryFabricLocation: to.Ptr("eastus"),
	// 							ProtectedManagedDisks: []*armrecoveryservicessiterecovery.A2AProtectedManagedDiskDetails{
	// 								{
	// 									AllowedDiskLevelOperation: []*string{
	// 									},
	// 									DataPendingAtSourceAgentInMB: to.Ptr[float64](0),
	// 									DataPendingInStagingStorageAccountInMB: to.Ptr[float64](0),
	// 									DiskCapacityInBytes: to.Ptr[int64](274877906944),
	// 									DiskID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourcegroups/clustertestrg-19-01/providers/microsoft.compute/disks/sdgql-datadisk0"),
	// 									DiskName: to.Ptr("sdgql-datadisk0"),
	// 									DiskState: to.Ptr("Protected"),
	// 									DiskType: to.Ptr("Data"),
	// 									FailoverDiskName: to.Ptr("sdgql-datadisk0"),
	// 									IsDiskEncrypted: to.Ptr(false),
	// 									IsDiskKeyEncrypted: to.Ptr(false),
	// 									PrimaryStagingAzureStorageAccountID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.Storage/storageAccounts/ix701lshashankvaasrcache"),
	// 									RecoveryReplicaDiskAccountType: to.Ptr("Premium_LRS"),
	// 									RecoveryReplicaDiskID: to.Ptr(""),
	// 									RecoveryResourceGroupID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr"),
	// 									RecoveryTargetDiskAccountType: to.Ptr("Premium_LRS"),
	// 									RecoveryTargetDiskID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr/providers/Microsoft.Compute/disks/sdgql-datadisk0"),
	// 									ResyncRequired: to.Ptr(false),
	// 									TfoDiskName: to.Ptr("sdgql-datadisk0-ASRtest"),
	// 							}},
	// 							RecoveryFabricLocation: to.Ptr("westus"),
	// 							RpoInSeconds: to.Ptr[int64](10),
	// 						},
	// 						TestFailoverState: to.Ptr("None"),
	// 					},
	// 					TestFailoverState: to.Ptr("None"),
	// 					TestFailoverStateDescription: to.Ptr("None"),
	// 				},
	// 			}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4fc983fb08e5fd8a7a821eb6491f5338ce52a9cf/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_GetOperationResults.json
func ExampleReplicationProtectionClustersClient_GetOperationResults() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armrecoveryservicessiterecovery.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewReplicationProtectionClustersClient().GetOperationResults(ctx, "resourceGroupPS1", "vault1", "eastus", "eastus-container", "cluster1", "ea63a935-59d5-4b12-aff2-98773f63c116", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.ReplicationProtectionCluster = armrecoveryservicessiterecovery.ReplicationProtectionCluster{
	// 	Name: to.Ptr("cluster12"),
	// 	Type: to.Ptr("Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionClusters"),
	// 	ID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/eastus/replicationProtectionContainers/eastus-container/replicationProtectionClusters/cluster12"),
	// 	Properties: &armrecoveryservicessiterecovery.ReplicationProtectionClusterProperties{
	// 		ActiveLocation: to.Ptr("Primary"),
	// 		AllowedOperations: []*string{
	// 			to.Ptr("UnplannedFailover"),
	// 			to.Ptr("DisableProtection")},
	// 			AreAllClusterNodesRegistered: to.Ptr(false),
	// 			ClusterNodeFqdns: []*string{
	// 			},
	// 			ClusterProtectedItemIDs: []*string{
	// 			},
	// 			ClusterRegisteredNodes: []*armrecoveryservicessiterecovery.RegisteredClusterNodes{
	// 			},
	// 			HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 			},
	// 			PolicyFriendlyName: to.Ptr("24-hour-retention-policy"),
	// 			PolicyID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/24-hour-retention-policy"),
	// 			PrimaryFabricFriendlyName: to.Ptr("eastus"),
	// 			PrimaryFabricProvider: to.Ptr("AzureFabric"),
	// 			PrimaryProtectionContainerFriendlyName: to.Ptr("eastus"),
	// 			ProtectionState: to.Ptr("NotProtected"),
	// 			ProtectionStateDescription: to.Ptr("NotProtected"),
	// 			ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AReplicationProtectionClusterDetails{
	// 				InstanceType: to.Ptr("A2A"),
	// 				ClusterManagementID: to.Ptr("4b8c1c01-5ad7-4958-a98d-daf7cca6a124"),
	// 				InitialPrimaryFabricLocation: to.Ptr("eastus"),
	// 				InitialPrimaryZone: to.Ptr(""),
	// 				InitialRecoveryFabricLocation: to.Ptr("centraluseuap"),
	// 				InitialRecoveryZone: to.Ptr(""),
	// 				LifecycleID: to.Ptr("d5f6f011-7ef5-4c78-80fe-6e1b28401c4d"),
	// 				PrimaryFabricLocation: to.Ptr("eastus"),
	// 				RecoveryFabricLocation: to.Ptr("centraluseuap"),
	// 			},
	// 			ProvisioningState: to.Ptr("Succeeded"),
	// 			RecoveryContainerID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/centraluseuap/replicationProtectionContainers/centraluseuap-container"),
	// 			RecoveryFabricFriendlyName: to.Ptr("centraluseuap"),
	// 			RecoveryFabricID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/centraluseuap"),
	// 			RecoveryProtectionContainerFriendlyName: to.Ptr("eastus-container"),
	// 			ReplicationHealth: to.Ptr("Normal"),
	// 			SharedDiskProperties: &armrecoveryservicessiterecovery.SharedDiskReplicationItemProperties{
	// 				AllowedOperations: []*string{
	// 				},
	// 				HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 				},
	// 				ProtectionState: to.Ptr("EnablingProtection"),
	// 				ReplicationHealth: to.Ptr("Normal"),
	// 				SharedDiskProviderSpecificDetails: &armrecoveryservicessiterecovery.A2ASharedDiskReplicationDetails{
	// 					InstanceType: to.Ptr("A2A"),
	// 					ManagementID: to.Ptr("4b8c1c01-5ad7-4958-a98d-daf7cca6a124"),
	// 					PrimaryFabricLocation: to.Ptr("eastus"),
	// 					ProtectedManagedDisks: []*armrecoveryservicessiterecovery.A2AProtectedManagedDiskDetails{
	// 					},
	// 					RecoveryFabricLocation: to.Ptr("centraluseuap"),
	// 				},
	// 			},
	// 		},
	// 	}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4fc983fb08e5fd8a7a821eb6491f5338ce52a9cf/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_RepairReplication.json
func ExampleReplicationProtectionClustersClient_BeginRepairReplication() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armrecoveryservicessiterecovery.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewReplicationProtectionClustersClient().BeginRepairReplication(ctx, "resourceGroupPS1", "vault1", "eastus", "eastus-container", "cluster12", 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)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.ReplicationProtectionCluster = armrecoveryservicessiterecovery.ReplicationProtectionCluster{
	// 	Name: to.Ptr("cluster1"),
	// 	Type: to.Ptr("Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionClusters"),
	// 	ID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/eastus/replicationProtectionContainers/eastus-container/replicationProtectionClusters/cluster1"),
	// 	Properties: &armrecoveryservicessiterecovery.ReplicationProtectionClusterProperties{
	// 		ActiveLocation: to.Ptr("Primary"),
	// 		AgentClusterID: to.Ptr("dd9925cf-5f90-49e9-bd6d-d4cbdcec956b"),
	// 		AllowedOperations: []*string{
	// 			to.Ptr("UnplannedFailover"),
	// 			to.Ptr("DisableProtection")},
	// 			AreAllClusterNodesRegistered: to.Ptr(true),
	// 			ClusterFqdn: to.Ptr("ad45f2fc-f9d6-42ac-8a7c-1c5380c88c28"),
	// 			ClusterNodeFqdns: []*string{
	// 			},
	// 			ClusterProtectedItemIDs: []*string{
	// 				to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/eastus/replicationProtectionContainers/eastus-container/replicationProtectedItems/cluster2vm0"),
	// 				to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/eastus/replicationProtectionContainers/eastus-container/replicationProtectedItems/cluster2vm1")},
	// 				ClusterRegisteredNodes: []*armrecoveryservicessiterecovery.RegisteredClusterNodes{
	// 					{
	// 						BiosID: to.Ptr("eed7a457-b11f-420e-8e4f-384833a6b7c9"),
	// 						ClusterNodeFqdn: to.Ptr("VM0"),
	// 						IsSharedDiskVirtualNode: to.Ptr(true),
	// 						MachineID: to.Ptr("a7eaf02d-60d9-45be-a444-d1b945f1c7b2"),
	// 				}},
	// 				HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 				},
	// 				PolicyFriendlyName: to.Ptr("24-hour-retention-policy"),
	// 				PolicyID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/24-hour-retention-policy"),
	// 				PrimaryFabricFriendlyName: to.Ptr("eastus"),
	// 				PrimaryFabricProvider: to.Ptr("AzureFabric"),
	// 				PrimaryProtectionContainerFriendlyName: to.Ptr("eastus"),
	// 				ProtectionClusterType: to.Ptr("WindowsServerFailoverCluster"),
	// 				ProtectionState: to.Ptr("Protected"),
	// 				ProtectionStateDescription: to.Ptr("Protected"),
	// 				ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AReplicationProtectionClusterDetails{
	// 					InstanceType: to.Ptr("A2A"),
	// 					ClusterManagementID: to.Ptr("1ed32804-ae51-4752-9448-9f686ae27d7b"),
	// 					InitialPrimaryFabricLocation: to.Ptr("eastus"),
	// 					InitialPrimaryZone: to.Ptr(""),
	// 					InitialRecoveryFabricLocation: to.Ptr("centraluseuap"),
	// 					InitialRecoveryZone: to.Ptr(""),
	// 					MultiVMGroupCreateOption: to.Ptr(armrecoveryservicessiterecovery.MultiVMGroupCreateOptionUserSpecified),
	// 					MultiVMGroupID: to.Ptr("4c2988ed-7e2a-566e-9c5f-c33835621e83"),
	// 					MultiVMGroupName: to.Ptr("multiVmGroupName1111"),
	// 					PrimaryFabricLocation: to.Ptr("eastus"),
	// 					RecoveryFabricLocation: to.Ptr("centraluseuap"),
	// 				},
	// 				ProvisioningState: to.Ptr("Succeeded"),
	// 				RecoveryContainerID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/centraluseuap/replicationProtectionContainers/centraluseuap-container"),
	// 				RecoveryFabricFriendlyName: to.Ptr("centraluseuap"),
	// 				RecoveryFabricID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/centraluseuap"),
	// 				RecoveryProtectionContainerFriendlyName: to.Ptr("eastus-container"),
	// 				ReplicationHealth: to.Ptr("Normal"),
	// 				SharedDiskProperties: &armrecoveryservicessiterecovery.SharedDiskReplicationItemProperties{
	// 					AllowedOperations: []*string{
	// 					},
	// 					HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 					},
	// 					ProtectionState: to.Ptr("Protected"),
	// 					ReplicationHealth: to.Ptr("Normal"),
	// 					SharedDiskProviderSpecificDetails: &armrecoveryservicessiterecovery.A2ASharedDiskReplicationDetails{
	// 						InstanceType: to.Ptr("A2A"),
	// 						LastRpoCalculatedTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2022-11-11T07:34:58.856Z"); return t}()),
	// 						ManagementID: to.Ptr("1ed32804-ae51-4752-9448-9f686ae27d7b"),
	// 						PrimaryFabricLocation: to.Ptr("eastus"),
	// 						ProtectedManagedDisks: []*armrecoveryservicessiterecovery.A2AProtectedManagedDiskDetails{
	// 							{
	// 								AllowedDiskLevelOperation: []*string{
	// 								},
	// 								DataPendingAtSourceAgentInMB: to.Ptr[float64](10),
	// 								DataPendingInStagingStorageAccountInMB: to.Ptr[float64](100),
	// 								DiskCapacityInBytes: to.Ptr[int64](0),
	// 								DiskID: to.Ptr("/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourcegroups/resourceGroupPS2/providers/microsoft.compute/disks/cluster2-datadisk0"),
	// 								DiskName: to.Ptr("cluster2-datadisk0"),
	// 								DiskState: to.Ptr("Unavailable"),
	// 								DiskType: to.Ptr("Data"),
	// 								FailoverDiskName: to.Ptr("cluster2-datadisk0"),
	// 								IsDiskEncrypted: to.Ptr(false),
	// 								IsDiskKeyEncrypted: to.Ptr(false),
	// 								PrimaryStagingAzureStorageAccountID: to.Ptr("/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS2/providers/Microsoft.Storage/storageAccounts/eastus1210192341"),
	// 								RecoveryReplicaDiskAccountType: to.Ptr("Premium_LRS"),
	// 								RecoveryReplicaDiskID: to.Ptr("/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.Compute/disks/cluster2-datadisk0-ASRReplica"),
	// 								RecoveryResourceGroupID: to.Ptr("/subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1"),
	// 								RecoveryTargetDiskAccountType: to.Ptr("Premium_LRS"),
	// 								ResyncRequired: to.Ptr(true),
	// 								TfoDiskName: to.Ptr("cluster2-datadisk0-ASRtest"),
	// 						}},
	// 						RecoveryFabricLocation: to.Ptr("centraluseuap"),
	// 						RpoInSeconds: to.Ptr[int64](300),
	// 						UnprotectedDisks: []*armrecoveryservicessiterecovery.A2AUnprotectedDiskDetails{
	// 							{
	// 								DiskAutoProtectionStatus: to.Ptr(armrecoveryservicessiterecovery.AutoProtectionOfDataDiskDisabled),
	// 								DiskLunID: to.Ptr[int32](1),
	// 							},
	// 							{
	// 								DiskAutoProtectionStatus: to.Ptr(armrecoveryservicessiterecovery.AutoProtectionOfDataDiskDisabled),
	// 								DiskLunID: to.Ptr[int32](2),
	// 						}},
	// 					},
	// 				},
	// 			},
	// 		}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4fc983fb08e5fd8a7a821eb6491f5338ce52a9cf/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_TestFailover.json
func ExampleReplicationProtectionClustersClient_BeginTestFailover() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armrecoveryservicessiterecovery.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewReplicationProtectionClustersClient().BeginTestFailover(ctx, "resourceGroupPS1", "vault1", "fabric-pri-eastus", "pri-cloud-eastus", "testcluster", armrecoveryservicessiterecovery.ClusterTestFailoverInput{
		Properties: &armrecoveryservicessiterecovery.ClusterTestFailoverInputProperties{
			FailoverDirection: to.Ptr(armrecoveryservicessiterecovery.FailoverDirectionPrimaryToRecovery),
			NetworkID:         to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr/providers/Microsoft.Network/virtualNetworks/adVNET-asr"),
			NetworkType:       to.Ptr("VmNetworkAsInput"),
			ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AClusterTestFailoverInput{
				InstanceType:           to.Ptr("A2A"),
				ClusterRecoveryPointID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster/recoveryPoints/cc48b7f3-b267-432b-ad76-45528974dc62"),
				IndividualNodeRecoveryPoints: []*string{
					to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/testVM/recoveryPoints/b5c2051b-79e3-41ad-9d25-244f6ef8ce7d")},
			},
		},
	}, 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)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.ReplicationProtectionCluster = armrecoveryservicessiterecovery.ReplicationProtectionCluster{
	// 	Name: to.Ptr("testcluster"),
	// 	Type: to.Ptr("Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionClusters"),
	// 	ID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster"),
	// 	Properties: &armrecoveryservicessiterecovery.ReplicationProtectionClusterProperties{
	// 		ActiveLocation: to.Ptr("Primary"),
	// 		AgentClusterID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 		AllowedOperations: []*string{
	// 			to.Ptr("ClusterTestFailoverCleanup"),
	// 			to.Ptr("PurgeProtectionCluster")},
	// 			AreAllClusterNodesRegistered: to.Ptr(true),
	// 			ClusterFqdn: to.Ptr("sdgqlc"),
	// 			ClusterNodeFqdns: []*string{
	// 				to.Ptr("sdgql0"),
	// 				to.Ptr("sdgql1")},
	// 				ClusterProtectedItemIDs: []*string{
	// 					to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/yNdYnDYKZ7hYU7zyVeBychFBCyAbEkrJcJNUarDrXio"),
	// 					to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/kdUdWvpVnm3QgOQPHoVMX8YAtAO8OC4kKNjt40ERSr4")},
	// 					ClusterRegisteredNodes: []*armrecoveryservicessiterecovery.RegisteredClusterNodes{
	// 						{
	// 							BiosID: to.Ptr("37D0059C-9118-4220-AA1D-58A10EFA7660"),
	// 							ClusterNodeFqdn: to.Ptr("sdgql0"),
	// 							IsSharedDiskVirtualNode: to.Ptr(false),
	// 							MachineID: to.Ptr("3794026b-6792-4d12-9c0c-de0c79376c90"),
	// 						},
	// 						{
	// 							BiosID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 							ClusterNodeFqdn: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 							IsSharedDiskVirtualNode: to.Ptr(true),
	// 							MachineID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 						},
	// 						{
	// 							BiosID: to.Ptr("83CCE932-67EC-4C13-AB29-ACF5F8F7ED48"),
	// 							ClusterNodeFqdn: to.Ptr("sdgql1"),
	// 							IsSharedDiskVirtualNode: to.Ptr(false),
	// 							MachineID: to.Ptr("cb27913a-a5f2-4691-9eba-78b67f45a57a"),
	// 					}},
	// 					CurrentScenario: &armrecoveryservicessiterecovery.CurrentScenarioDetails{
	// 						JobID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None"),
	// 						ScenarioName: to.Ptr("None"),
	// 						StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "1753-01-01T01:01:01.000Z"); return t}()),
	// 					},
	// 					HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 					},
	// 					LastSuccessfulTestFailoverTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T06:08:01.744Z"); return t}()),
	// 					PolicyFriendlyName: to.Ptr("klncksan"),
	// 					PolicyID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/klncksan"),
	// 					PrimaryFabricFriendlyName: to.Ptr("East US"),
	// 					PrimaryFabricProvider: to.Ptr("AzureFabric"),
	// 					PrimaryProtectionContainerFriendlyName: to.Ptr("East US"),
	// 					ProtectionClusterType: to.Ptr("WindowsServerFailoverCluster"),
	// 					ProtectionState: to.Ptr("Protected"),
	// 					ProtectionStateDescription: to.Ptr("Protected"),
	// 					ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AReplicationProtectionClusterDetails{
	// 						InstanceType: to.Ptr("A2A"),
	// 						ClusterManagementID: to.Ptr("a24d47b2-a80b-4553-9c16-499c30c3be07"),
	// 						InitialPrimaryFabricLocation: to.Ptr("eastus"),
	// 						InitialPrimaryZone: to.Ptr(""),
	// 						InitialRecoveryFabricLocation: to.Ptr("westus"),
	// 						InitialRecoveryZone: to.Ptr(""),
	// 						LastRpoCalculatedTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T06:12:49.837Z"); return t}()),
	// 						LifecycleID: to.Ptr("3d523ab9-8c6d-40af-850d-ccee06513dc6"),
	// 						MultiVMGroupCreateOption: to.Ptr(armrecoveryservicessiterecovery.MultiVMGroupCreateOptionUserSpecified),
	// 						MultiVMGroupID: to.Ptr("a7ef77cb-ae59-545f-a32a-bf30575ab1c6"),
	// 						MultiVMGroupName: to.Ptr("testcluster"),
	// 						PrimaryFabricLocation: to.Ptr("eastus"),
	// 						RecoveryFabricLocation: to.Ptr("westus"),
	// 						RpoInSeconds: to.Ptr[int64](192),
	// 					},
	// 					ProvisioningState: to.Ptr("Succeeded"),
	// 					RecoveryContainerID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-rec-westus/replicationProtectionContainers/rec-cloud-westus"),
	// 					RecoveryFabricFriendlyName: to.Ptr("West US"),
	// 					RecoveryFabricID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-rec-westus"),
	// 					RecoveryProtectionContainerFriendlyName: to.Ptr("pri-cloud-eastus"),
	// 					ReplicationHealth: to.Ptr("Normal"),
	// 					SharedDiskProperties: &armrecoveryservicessiterecovery.SharedDiskReplicationItemProperties{
	// 						AllowedOperations: []*string{
	// 						},
	// 						HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 						},
	// 						ProtectionState: to.Ptr("Protected"),
	// 						ReplicationHealth: to.Ptr("Normal"),
	// 						SharedDiskProviderSpecificDetails: &armrecoveryservicessiterecovery.A2ASharedDiskReplicationDetails{
	// 							InstanceType: to.Ptr("A2A"),
	// 							LastRpoCalculatedTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T06:12:52.499Z"); return t}()),
	// 							ManagementID: to.Ptr("a24d47b2-a80b-4553-9c16-499c30c3be07"),
	// 							PrimaryFabricLocation: to.Ptr("eastus"),
	// 							ProtectedManagedDisks: []*armrecoveryservicessiterecovery.A2AProtectedManagedDiskDetails{
	// 								{
	// 									AllowedDiskLevelOperation: []*string{
	// 									},
	// 									DataPendingAtSourceAgentInMB: to.Ptr[float64](0),
	// 									DataPendingInStagingStorageAccountInMB: to.Ptr[float64](0),
	// 									DiskCapacityInBytes: to.Ptr[int64](274877906944),
	// 									DiskID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourcegroups/clustertestrg-19-01/providers/microsoft.compute/disks/sdgql-datadisk0"),
	// 									DiskName: to.Ptr("sdgql-datadisk0"),
	// 									DiskState: to.Ptr("Protected"),
	// 									DiskType: to.Ptr("Data"),
	// 									FailoverDiskName: to.Ptr("sdgql-datadisk0"),
	// 									IsDiskEncrypted: to.Ptr(false),
	// 									IsDiskKeyEncrypted: to.Ptr(false),
	// 									PrimaryStagingAzureStorageAccountID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.Storage/storageAccounts/ix701lshashankvaasrcache"),
	// 									RecoveryReplicaDiskAccountType: to.Ptr("Premium_LRS"),
	// 									RecoveryReplicaDiskID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr/providers/Microsoft.Compute/disks/sdgql-datadisk0-ASRReplica"),
	// 									RecoveryResourceGroupID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr"),
	// 									RecoveryTargetDiskAccountType: to.Ptr("Premium_LRS"),
	// 									ResyncRequired: to.Ptr(false),
	// 									TfoDiskName: to.Ptr("sdgql-datadisk0-ASRtest"),
	// 							}},
	// 							RecoveryFabricLocation: to.Ptr("westus"),
	// 							RpoInSeconds: to.Ptr[int64](195),
	// 						},
	// 						TestFailoverState: to.Ptr("WaitingForCompletion"),
	// 					},
	// 					TestFailoverState: to.Ptr("WaitingForCleanup"),
	// 					TestFailoverStateDescription: to.Ptr("Waiting for Test Failover Cleanup to start"),
	// 				},
	// 			}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4fc983fb08e5fd8a7a821eb6491f5338ce52a9cf/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_TestFailoverCleanup.json
func ExampleReplicationProtectionClustersClient_BeginTestFailoverCleanup() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armrecoveryservicessiterecovery.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewReplicationProtectionClustersClient().BeginTestFailoverCleanup(ctx, "resourceGroupPS1", "vault1", "fabric-pri-eastus", "pri-cloud-eastus", "testcluster", armrecoveryservicessiterecovery.ClusterTestFailoverCleanupInput{
		Properties: &armrecoveryservicessiterecovery.ClusterTestFailoverCleanupInputProperties{
			Comments: to.Ptr("Test Failover Cleanup"),
		},
	}, 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)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.ReplicationProtectionCluster = armrecoveryservicessiterecovery.ReplicationProtectionCluster{
	// 	Name: to.Ptr("testcluster"),
	// 	Type: to.Ptr("Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionClusters"),
	// 	ID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster"),
	// 	Properties: &armrecoveryservicessiterecovery.ReplicationProtectionClusterProperties{
	// 		ActiveLocation: to.Ptr("Primary"),
	// 		AgentClusterID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 		AllowedOperations: []*string{
	// 			to.Ptr("PurgeProtectionCluster"),
	// 			to.Ptr("UnplannedFailoverProtectionCluster"),
	// 			to.Ptr("TestFailoverProtectionCluster")},
	// 			AreAllClusterNodesRegistered: to.Ptr(true),
	// 			ClusterFqdn: to.Ptr("sdgqlc"),
	// 			ClusterNodeFqdns: []*string{
	// 				to.Ptr("sdgql0"),
	// 				to.Ptr("sdgql1")},
	// 				ClusterProtectedItemIDs: []*string{
	// 					to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/yNdYnDYKZ7hYU7zyVeBychFBCyAbEkrJcJNUarDrXio"),
	// 					to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/kdUdWvpVnm3QgOQPHoVMX8YAtAO8OC4kKNjt40ERSr4")},
	// 					ClusterRegisteredNodes: []*armrecoveryservicessiterecovery.RegisteredClusterNodes{
	// 						{
	// 							BiosID: to.Ptr("37D0059C-9118-4220-AA1D-58A10EFA7660"),
	// 							ClusterNodeFqdn: to.Ptr("sdgql0"),
	// 							IsSharedDiskVirtualNode: to.Ptr(false),
	// 							MachineID: to.Ptr("3794026b-6792-4d12-9c0c-de0c79376c90"),
	// 						},
	// 						{
	// 							BiosID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 							ClusterNodeFqdn: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 							IsSharedDiskVirtualNode: to.Ptr(true),
	// 							MachineID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 						},
	// 						{
	// 							BiosID: to.Ptr("83CCE932-67EC-4C13-AB29-ACF5F8F7ED48"),
	// 							ClusterNodeFqdn: to.Ptr("sdgql1"),
	// 							IsSharedDiskVirtualNode: to.Ptr(false),
	// 							MachineID: to.Ptr("cb27913a-a5f2-4691-9eba-78b67f45a57a"),
	// 					}},
	// 					CurrentScenario: &armrecoveryservicessiterecovery.CurrentScenarioDetails{
	// 						JobID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None"),
	// 						ScenarioName: to.Ptr("None"),
	// 						StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "1753-01-01T01:01:01.000Z"); return t}()),
	// 					},
	// 					HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 					},
	// 					LastSuccessfulTestFailoverTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T06:08:01.744Z"); return t}()),
	// 					PolicyFriendlyName: to.Ptr("klncksan"),
	// 					PolicyID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/klncksan"),
	// 					PrimaryFabricFriendlyName: to.Ptr("East US"),
	// 					PrimaryFabricProvider: to.Ptr("AzureFabric"),
	// 					PrimaryProtectionContainerFriendlyName: to.Ptr("East US"),
	// 					ProtectionClusterType: to.Ptr("WindowsServerFailoverCluster"),
	// 					ProtectionState: to.Ptr("Protected"),
	// 					ProtectionStateDescription: to.Ptr("Protected"),
	// 					ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AReplicationProtectionClusterDetails{
	// 						InstanceType: to.Ptr("A2A"),
	// 						ClusterManagementID: to.Ptr("a24d47b2-a80b-4553-9c16-499c30c3be07"),
	// 						InitialPrimaryFabricLocation: to.Ptr("eastus"),
	// 						InitialPrimaryZone: to.Ptr(""),
	// 						InitialRecoveryFabricLocation: to.Ptr("westus"),
	// 						InitialRecoveryZone: to.Ptr(""),
	// 						LastRpoCalculatedTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T09:14:51.854Z"); return t}()),
	// 						LifecycleID: to.Ptr("3d523ab9-8c6d-40af-850d-ccee06513dc6"),
	// 						MultiVMGroupCreateOption: to.Ptr(armrecoveryservicessiterecovery.MultiVMGroupCreateOptionUserSpecified),
	// 						MultiVMGroupID: to.Ptr("a7ef77cb-ae59-545f-a32a-bf30575ab1c6"),
	// 						MultiVMGroupName: to.Ptr("testcluster"),
	// 						PrimaryFabricLocation: to.Ptr("eastus"),
	// 						RecoveryFabricLocation: to.Ptr("westus"),
	// 						RpoInSeconds: to.Ptr[int64](258),
	// 					},
	// 					ProvisioningState: to.Ptr("Succeeded"),
	// 					RecoveryContainerID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-rec-westus/replicationProtectionContainers/rec-cloud-westus"),
	// 					RecoveryFabricFriendlyName: to.Ptr("West US"),
	// 					RecoveryFabricID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-rec-westus"),
	// 					RecoveryProtectionContainerFriendlyName: to.Ptr("pri-cloud-eastus"),
	// 					ReplicationHealth: to.Ptr("Normal"),
	// 					SharedDiskProperties: &armrecoveryservicessiterecovery.SharedDiskReplicationItemProperties{
	// 						AllowedOperations: []*string{
	// 						},
	// 						HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 						},
	// 						ProtectionState: to.Ptr("Protected"),
	// 						ReplicationHealth: to.Ptr("Normal"),
	// 						SharedDiskProviderSpecificDetails: &armrecoveryservicessiterecovery.A2ASharedDiskReplicationDetails{
	// 							InstanceType: to.Ptr("A2A"),
	// 							LastRpoCalculatedTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T09:13:33.520Z"); return t}()),
	// 							ManagementID: to.Ptr("a24d47b2-a80b-4553-9c16-499c30c3be07"),
	// 							PrimaryFabricLocation: to.Ptr("eastus"),
	// 							ProtectedManagedDisks: []*armrecoveryservicessiterecovery.A2AProtectedManagedDiskDetails{
	// 								{
	// 									AllowedDiskLevelOperation: []*string{
	// 									},
	// 									DataPendingAtSourceAgentInMB: to.Ptr[float64](0),
	// 									DataPendingInStagingStorageAccountInMB: to.Ptr[float64](0),
	// 									DiskCapacityInBytes: to.Ptr[int64](274877906944),
	// 									DiskID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourcegroups/clustertestrg-19-01/providers/microsoft.compute/disks/sdgql-datadisk0"),
	// 									DiskName: to.Ptr("sdgql-datadisk0"),
	// 									DiskState: to.Ptr("Protected"),
	// 									DiskType: to.Ptr("Data"),
	// 									FailoverDiskName: to.Ptr("sdgql-datadisk0"),
	// 									IsDiskEncrypted: to.Ptr(false),
	// 									IsDiskKeyEncrypted: to.Ptr(false),
	// 									PrimaryStagingAzureStorageAccountID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.Storage/storageAccounts/ix701lshashankvaasrcache"),
	// 									RecoveryReplicaDiskAccountType: to.Ptr("Premium_LRS"),
	// 									RecoveryReplicaDiskID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr/providers/Microsoft.Compute/disks/sdgql-datadisk0-ASRReplica"),
	// 									RecoveryResourceGroupID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr"),
	// 									RecoveryTargetDiskAccountType: to.Ptr("Premium_LRS"),
	// 									ResyncRequired: to.Ptr(false),
	// 									TfoDiskName: to.Ptr("sdgql-datadisk0-ASRtest"),
	// 							}},
	// 							RecoveryFabricLocation: to.Ptr("westus"),
	// 							RpoInSeconds: to.Ptr[int64](180),
	// 						},
	// 						TestFailoverState: to.Ptr("None"),
	// 					},
	// 					TestFailoverState: to.Ptr("None"),
	// 					TestFailoverStateDescription: to.Ptr("None"),
	// 				},
	// 			}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4fc983fb08e5fd8a7a821eb6491f5338ce52a9cf/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_UnplannedFailover.json
func ExampleReplicationProtectionClustersClient_BeginUnplannedFailover() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armrecoveryservicessiterecovery.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewReplicationProtectionClustersClient().BeginUnplannedFailover(ctx, "resourceGroupPS1", "vault1", "fabric-pri-eastus", "pri-cloud-eastus", "testcluster", armrecoveryservicessiterecovery.ClusterUnplannedFailoverInput{
		Properties: &armrecoveryservicessiterecovery.ClusterUnplannedFailoverInputProperties{
			FailoverDirection: to.Ptr("primarytorecovery"),
			ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AClusterUnplannedFailoverInput{
				InstanceType:           to.Ptr("A2A"),
				ClusterRecoveryPointID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster/recoveryPoints/cc48b7f3-b267-432b-ad76-45528974dc62"),
				IndividualNodeRecoveryPoints: []*string{
					to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/testVM/recoveryPoints/b5c2051b-79e3-41ad-9d25-244f6ef8ce7d")},
			},
			SourceSiteOperations: to.Ptr("NotRequired"),
		},
	}, 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)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.ReplicationProtectionCluster = armrecoveryservicessiterecovery.ReplicationProtectionCluster{
	// 	Name: to.Ptr("testcluster"),
	// 	Type: to.Ptr("Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionClusters"),
	// 	ID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster"),
	// 	Properties: &armrecoveryservicessiterecovery.ReplicationProtectionClusterProperties{
	// 		ActiveLocation: to.Ptr("Recovery"),
	// 		AgentClusterID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 		AllowedOperations: []*string{
	// 			to.Ptr("CommitFailoverProtectionCluster"),
	// 			to.Ptr("ChangePitProtectionCluster"),
	// 			to.Ptr("PurgeProtectionCluster")},
	// 			AreAllClusterNodesRegistered: to.Ptr(true),
	// 			ClusterFqdn: to.Ptr("sdgqlc"),
	// 			ClusterNodeFqdns: []*string{
	// 				to.Ptr("sdgql0"),
	// 				to.Ptr("sdgql1")},
	// 				ClusterProtectedItemIDs: []*string{
	// 					to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/yNdYnDYKZ7hYU7zyVeBychFBCyAbEkrJcJNUarDrXio"),
	// 					to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectedItems/kdUdWvpVnm3QgOQPHoVMX8YAtAO8OC4kKNjt40ERSr4")},
	// 					ClusterRegisteredNodes: []*armrecoveryservicessiterecovery.RegisteredClusterNodes{
	// 						{
	// 							BiosID: to.Ptr("37D0059C-9118-4220-AA1D-58A10EFA7660"),
	// 							ClusterNodeFqdn: to.Ptr("sdgql0"),
	// 							IsSharedDiskVirtualNode: to.Ptr(false),
	// 							MachineID: to.Ptr("3794026b-6792-4d12-9c0c-de0c79376c90"),
	// 						},
	// 						{
	// 							BiosID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 							ClusterNodeFqdn: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 							IsSharedDiskVirtualNode: to.Ptr(true),
	// 							MachineID: to.Ptr("aeeca6a3-171b-4c9d-ae22-0e4adb6416a0"),
	// 						},
	// 						{
	// 							BiosID: to.Ptr("83CCE932-67EC-4C13-AB29-ACF5F8F7ED48"),
	// 							ClusterNodeFqdn: to.Ptr("sdgql1"),
	// 							IsSharedDiskVirtualNode: to.Ptr(false),
	// 							MachineID: to.Ptr("cb27913a-a5f2-4691-9eba-78b67f45a57a"),
	// 					}},
	// 					CurrentScenario: &armrecoveryservicessiterecovery.CurrentScenarioDetails{
	// 						JobID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationJobs/None"),
	// 						ScenarioName: to.Ptr("None"),
	// 						StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "1753-01-01T01:01:01.000Z"); return t}()),
	// 					},
	// 					HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 					},
	// 					LastSuccessfulFailoverTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T09:31:13.160Z"); return t}()),
	// 					LastSuccessfulTestFailoverTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T06:08:01.744Z"); return t}()),
	// 					PolicyFriendlyName: to.Ptr("klncksan"),
	// 					PolicyID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/klncksan"),
	// 					PrimaryFabricFriendlyName: to.Ptr("East US"),
	// 					PrimaryFabricProvider: to.Ptr("AzureFabric"),
	// 					PrimaryProtectionContainerFriendlyName: to.Ptr("East US"),
	// 					ProtectionClusterType: to.Ptr("WindowsServerFailoverCluster"),
	// 					ProtectionState: to.Ptr("FailoverCompleted"),
	// 					ProtectionStateDescription: to.Ptr("Failover completed."),
	// 					ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AReplicationProtectionClusterDetails{
	// 						InstanceType: to.Ptr("A2A"),
	// 						ClusterManagementID: to.Ptr("a24d47b2-a80b-4553-9c16-499c30c3be07"),
	// 						FailoverRecoveryPointID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster/recoveryPoints/cc48b7f3-b267-432b-ad76-45528974dc62"),
	// 						InitialPrimaryFabricLocation: to.Ptr("eastus"),
	// 						InitialPrimaryZone: to.Ptr(""),
	// 						InitialRecoveryFabricLocation: to.Ptr("westus"),
	// 						InitialRecoveryZone: to.Ptr(""),
	// 						LastRpoCalculatedTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T10:19:11.049Z"); return t}()),
	// 						LifecycleID: to.Ptr("3d523ab9-8c6d-40af-850d-ccee06513dc6"),
	// 						MultiVMGroupCreateOption: to.Ptr(armrecoveryservicessiterecovery.MultiVMGroupCreateOptionUserSpecified),
	// 						MultiVMGroupID: to.Ptr("a7ef77cb-ae59-545f-a32a-bf30575ab1c6"),
	// 						MultiVMGroupName: to.Ptr("testcluster"),
	// 						PrimaryFabricLocation: to.Ptr("eastus"),
	// 						RecoveryFabricLocation: to.Ptr("westus"),
	// 						RpoInSeconds: to.Ptr[int64](3213),
	// 					},
	// 					ProvisioningState: to.Ptr("Succeeded"),
	// 					RecoveryContainerID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-rec-westus/replicationProtectionContainers/rec-cloud-westus"),
	// 					RecoveryFabricFriendlyName: to.Ptr("West US"),
	// 					RecoveryFabricID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-rec-westus"),
	// 					RecoveryProtectionContainerFriendlyName: to.Ptr("pri-cloud-eastus"),
	// 					ReplicationHealth: to.Ptr("Normal"),
	// 					SharedDiskProperties: &armrecoveryservicessiterecovery.SharedDiskReplicationItemProperties{
	// 						AllowedOperations: []*string{
	// 						},
	// 						HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
	// 						},
	// 						ProtectionState: to.Ptr("UnplannedFailoverCommitRequired"),
	// 						ReplicationHealth: to.Ptr("Normal"),
	// 						SharedDiskProviderSpecificDetails: &armrecoveryservicessiterecovery.A2ASharedDiskReplicationDetails{
	// 							InstanceType: to.Ptr("A2A"),
	// 							FailoverRecoveryPointID: to.Ptr("/Subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/fabric-pri-eastus/replicationProtectionContainers/pri-cloud-eastus/replicationProtectionClusters/testcluster/recoveryPoints/cc48b7f3-b267-432b-ad76-45528974dc62"),
	// 							LastRpoCalculatedTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2024-01-22T09:20:35.930Z"); return t}()),
	// 							ManagementID: to.Ptr("a24d47b2-a80b-4553-9c16-499c30c3be07"),
	// 							PrimaryFabricLocation: to.Ptr("eastus"),
	// 							ProtectedManagedDisks: []*armrecoveryservicessiterecovery.A2AProtectedManagedDiskDetails{
	// 								{
	// 									AllowedDiskLevelOperation: []*string{
	// 									},
	// 									DataPendingAtSourceAgentInMB: to.Ptr[float64](0),
	// 									DataPendingInStagingStorageAccountInMB: to.Ptr[float64](0),
	// 									DiskCapacityInBytes: to.Ptr[int64](274877906944),
	// 									DiskID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourcegroups/clustertestrg-19-01/providers/microsoft.compute/disks/sdgql-datadisk0"),
	// 									DiskName: to.Ptr("sdgql-datadisk0"),
	// 									DiskState: to.Ptr("Protected"),
	// 									DiskType: to.Ptr("Data"),
	// 									FailoverDiskName: to.Ptr("sdgql-datadisk0"),
	// 									IsDiskEncrypted: to.Ptr(false),
	// 									IsDiskKeyEncrypted: to.Ptr(false),
	// 									PrimaryStagingAzureStorageAccountID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/resourceGroupPS1/providers/Microsoft.Storage/storageAccounts/ix701lshashankvaasrcache"),
	// 									RecoveryReplicaDiskAccountType: to.Ptr("Premium_LRS"),
	// 									RecoveryReplicaDiskID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr/providers/Microsoft.Compute/disks/sdgql-datadisk0-ASRReplica"),
	// 									RecoveryResourceGroupID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr"),
	// 									RecoveryTargetDiskAccountType: to.Ptr("Premium_LRS"),
	// 									RecoveryTargetDiskID: to.Ptr("/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/ClusterTestRG-19-01-asr/providers/Microsoft.Compute/disks/sdgql-datadisk0"),
	// 									ResyncRequired: to.Ptr(false),
	// 									TfoDiskName: to.Ptr("sdgql-datadisk0-ASRtest"),
	// 							}},
	// 							RecoveryFabricLocation: to.Ptr("westus"),
	// 							RpoInSeconds: to.Ptr[int64](10),
	// 						},
	// 						TestFailoverState: to.Ptr("None"),
	// 					},
	// 					TestFailoverState: to.Ptr("None"),
	// 					TestFailoverStateDescription: to.Ptr("None"),
	// 				},
	// 			}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4fc983fb08e5fd8a7a821eb6491f5338ce52a9cf/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2025-01-01/examples/ReplicationProtectionClusters_List.json
func ExampleReplicationProtectionClustersClient_NewListPager() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armrecoveryservicessiterecovery.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewReplicationProtectionClustersClient().NewListPager("resourceGroupPS1", "vault1", &armrecoveryservicessiterecovery.ReplicationProtectionClustersClientListOptions{SkipToken: nil,
		Filter: to.Ptr("SourceFabricName eq 'asr-a2a-default-eastus' and SourceFabricLocation eq 'East US' and InstanceType eq 'A2A'"),
	})
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page.ReplicationProtectionClusterCollection = armrecoveryservicessiterecovery.ReplicationProtectionClusterCollection{
		// 	Value: []*armrecoveryservicessiterecovery.ReplicationProtectionCluster{
		// 		{
		// 			Name: to.Ptr("cluster1"),
		// 			Type: to.Ptr("Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionClusters"),
		// 			ID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/eastus/replicationProtectionContainers/eastus-container/replicationProtectionClusters/cluster1"),
		// 			Properties: &armrecoveryservicessiterecovery.ReplicationProtectionClusterProperties{
		// 				ActiveLocation: to.Ptr("Primary"),
		// 				AgentClusterID: to.Ptr("dd9925cf-5f90-49e9-bd6d-d4cbdcec956b"),
		// 				AllowedOperations: []*string{
		// 					to.Ptr("UnplannedFailover"),
		// 					to.Ptr("DisableProtection")},
		// 					AreAllClusterNodesRegistered: to.Ptr(true),
		// 					ClusterFqdn: to.Ptr("ad45f2fc-f9d6-42ac-8a7c-1c5380c88c28"),
		// 					ClusterNodeFqdns: []*string{
		// 					},
		// 					ClusterProtectedItemIDs: []*string{
		// 						to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/eastus/replicationProtectionContainers/eastus-container/replicationProtectedItems/cluster2vm0"),
		// 						to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/eastus/replicationProtectionContainers/eastus-container/replicationProtectedItems/cluster2vm1")},
		// 						ClusterRegisteredNodes: []*armrecoveryservicessiterecovery.RegisteredClusterNodes{
		// 							{
		// 								BiosID: to.Ptr("eed7a457-b11f-420e-8e4f-384833a6b7c9"),
		// 								ClusterNodeFqdn: to.Ptr("VM0"),
		// 								IsSharedDiskVirtualNode: to.Ptr(true),
		// 								MachineID: to.Ptr("a7eaf02d-60d9-45be-a444-d1b945f1c7b2"),
		// 						}},
		// 						HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
		// 						},
		// 						PolicyFriendlyName: to.Ptr("24-hour-retention-policy"),
		// 						PolicyID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationPolicies/24-hour-retention-policy"),
		// 						PrimaryFabricFriendlyName: to.Ptr("eastus"),
		// 						PrimaryFabricProvider: to.Ptr("AzureFabric"),
		// 						PrimaryProtectionContainerFriendlyName: to.Ptr("eastus"),
		// 						ProtectionClusterType: to.Ptr("WindowsServerFailoverCluster"),
		// 						ProtectionState: to.Ptr("Protected"),
		// 						ProtectionStateDescription: to.Ptr("Protected"),
		// 						ProviderSpecificDetails: &armrecoveryservicessiterecovery.A2AReplicationProtectionClusterDetails{
		// 							InstanceType: to.Ptr("A2A"),
		// 							ClusterManagementID: to.Ptr("1ed32804-ae51-4752-9448-9f686ae27d7b"),
		// 							InitialPrimaryFabricLocation: to.Ptr("eastus"),
		// 							InitialPrimaryZone: to.Ptr(""),
		// 							InitialRecoveryFabricLocation: to.Ptr("centraluseuap"),
		// 							InitialRecoveryZone: to.Ptr(""),
		// 							MultiVMGroupCreateOption: to.Ptr(armrecoveryservicessiterecovery.MultiVMGroupCreateOptionUserSpecified),
		// 							MultiVMGroupID: to.Ptr("4c2988ed-7e2a-566e-9c5f-c33835621e83"),
		// 							MultiVMGroupName: to.Ptr("multiVmGroupName1111"),
		// 							PrimaryFabricLocation: to.Ptr("eastus"),
		// 							RecoveryFabricLocation: to.Ptr("centraluseuap"),
		// 						},
		// 						ProvisioningState: to.Ptr("Succeeded"),
		// 						RecoveryContainerID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/centraluseuap/replicationProtectionContainers/centraluseuap-container"),
		// 						RecoveryFabricFriendlyName: to.Ptr("centraluseuap"),
		// 						RecoveryFabricID: to.Ptr("/Subscriptions/c183865e-6077-46f2-a3b1-deb0f4f4650a/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationFabrics/centraluseuap"),
		// 						RecoveryProtectionContainerFriendlyName: to.Ptr("eastus-container"),
		// 						ReplicationHealth: to.Ptr("Normal"),
		// 						SharedDiskProperties: &armrecoveryservicessiterecovery.SharedDiskReplicationItemProperties{
		// 							AllowedOperations: []*string{
		// 							},
		// 							HealthErrors: []*armrecoveryservicessiterecovery.HealthError{
		// 							},
		// 							ProtectionState: to.Ptr("Protected"),
		// 							ReplicationHealth: to.Ptr("Normal"),
		// 							SharedDiskProviderSpecificDetails: &armrecoveryservicessiterecovery.A2ASharedDiskReplicationDetails{
		// 								InstanceType: to.Ptr("A2A"),
		// 								LastRpoCalculatedTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2022-11-11T07:34:58.856Z"); return t}()),
		// 								ManagementID: to.Ptr("1ed32804-ae51-4752-9448-9f686ae27d7b"),
		// 								PrimaryFabricLocation: to.Ptr("eastus"),
		// 								RecoveryFabricLocation: to.Ptr("centraluseuap"),
		// 								RpoInSeconds: to.Ptr[int64](300),
		// 							},
		// 						},
		// 					},
		// 			}},
		// 		}
	}
}
