public void EnumerateProtectedItemsUnderFabric() { using (UndoContext context = UndoContext.Current) { context.Start(); var client = GetSiteRecoveryClient(CustomHttpHandler); List <ReplicationProtectedItem> itemsList = new List <ReplicationProtectedItem>(); var queryParams = new ProtectedItemsQueryParameter { SourceFabricName = "2163c4b41217f3a2274ffa9914d6707b5a93b013683762e18378d0af4fe2ca0c" }; var protectedItemsResponse = client.ReplicationProtectedItem.ListAll( null, queryParams, RequestHeaders); itemsList.AddRange(protectedItemsResponse.ReplicationProtectedItems); while (protectedItemsResponse.NextLink != null) { protectedItemsResponse = client.ReplicationProtectedItem.ListAllNext( protectedItemsResponse.NextLink, RequestHeaders); itemsList.AddRange(protectedItemsResponse.ReplicationProtectedItems); } } }
/// <summary> /// Retrieves Protected Items. /// </summary> /// <param name="protectionContainerName">Recovery Plan Name</param> /// <param name="sourceFabricName">Source Fabric Name</param> /// <returns>Protection entity list response</returns> public ReplicationProtectedItemListResponse GetAzureSiteRecoveryReplicationProtectedItemInRP(string recoveryPlanName) { ReplicationProtectedItemListResponse output = new ReplicationProtectedItemListResponse(); List <ReplicationProtectedItem> replicationProtectedItems = new List <ReplicationProtectedItem>(); var protectedItemsQueryParameter = new ProtectedItemsQueryParameter() { RecoveryPlanName = recoveryPlanName }; ReplicationProtectedItemListResponse response = this .GetSiteRecoveryClient() .ReplicationProtectedItem.ListAll(null, protectedItemsQueryParameter, this.GetRequestHeaders()); replicationProtectedItems.AddRange(response.ReplicationProtectedItems); while (response.NextLink != null) { response = this .GetSiteRecoveryClient() .ReplicationProtectedItem.ListAllNext(response.NextLink, this.GetRequestHeaders()); replicationProtectedItems.AddRange(response.ReplicationProtectedItems); } output.ReplicationProtectedItems = replicationProtectedItems; return(output); }
/// <summary> /// Retrieves Protected Items. /// </summary> /// <param name="recoveryPlanName">Recovery Plan Name</param> /// <returns>Protection entity list response</returns> public List <ReplicationProtectedItem> GetAzureSiteRecoveryReplicationProtectedItemInRP( string recoveryPlanName) { var protectedItemsQueryParameter = new ProtectedItemsQueryParameter { RecoveryPlanName = recoveryPlanName }; var odataQuery = new ODataQuery <ProtectedItemsQueryParameter>( protectedItemsQueryParameter.ToQueryString()); var firstPage = this.GetSiteRecoveryClient() .ReplicationProtectedItems.ListWithHttpMessagesAsync( odataQuery, null, this.GetRequestHeaders(true)) .GetAwaiter() .GetResult() .Body; var pages = Utilities.GetAllFurtherPages( this.GetSiteRecoveryClient() .ReplicationProtectedItems.ListNextWithHttpMessagesAsync, firstPage.NextPageLink, this.GetRequestHeaders(true)); pages.Insert(0, firstPage); return(Utilities.IpageToList(pages)); }
public void EnumerateProtectedItemsUnderFabric() { using (UndoContext context = UndoContext.Current) { context.Start(); var client = GetSiteRecoveryClient(CustomHttpHandler); var fabrics = client.Fabrics.List(RequestHeaders).Fabrics.ToList(); List <ReplicationProtectedItem> itemsList = new List <ReplicationProtectedItem>(); var queryParams = new ProtectedItemsQueryParameter { SourceFabricName = fabrics.First().Name }; var protectedItemsResponse = client.ReplicationProtectedItem.ListAll( null, queryParams, RequestHeaders); itemsList.AddRange(protectedItemsResponse.ReplicationProtectedItems); while (protectedItemsResponse.NextLink != null) { protectedItemsResponse = client.ReplicationProtectedItem.ListAllNext( protectedItemsResponse.NextLink, RequestHeaders); itemsList.AddRange(protectedItemsResponse.ReplicationProtectedItems); } } }