Skip to content

Commit c725444

Browse files
authored
Mkherani swagger (#354)
* Container: ServiceCLient and conversionHelper * Container: conversionHelper.cs * container changes completed.
1 parent a9352ba commit c725444

File tree

8 files changed

+56
-49
lines changed

8 files changed

+56
-49
lines changed

src/ResourceManager/RecoveryServices.Backup/Commands.RecoveryServices.Backup.Helpers/Conversions/ConversionHelpers.cs

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,16 +41,16 @@ public static ContainerBase GetContainerModel(ServiceClientModel.ProtectionConta
4141
if (protectionContainer != null &&
4242
protectionContainer.Properties != null)
4343
{
44-
if (protectionContainer.Properties.GetType().IsSubclassOf(typeof(ServiceClientModel.AzureIaaSVMProtectionContainer)))
44+
if (protectionContainer.Properties.GetType().IsSubclassOf(typeof(ServiceClientModel.IaaSVMContainer)))
4545
{
4646
containerModel = new AzureVmContainer(protectionContainer);
4747
}
48-
if (protectionContainer.Properties.GetType() == typeof(ServiceClientModel.MabProtectionContainer))
48+
if (protectionContainer.Properties.GetType() == typeof(ServiceClientModel.MabContainer))
4949
{
5050
containerModel = new MabContainer(protectionContainer);
5151
}
5252
else if (protectionContainer.Properties.GetType() ==
53-
typeof(ServiceClientModel.AzureSqlProtectionContainer))
53+
typeof(ServiceClientModel.AzureSqlContainer))
5454
{
5555
containerModel = new AzureSqlContainer(protectionContainer);
5656
}
@@ -62,13 +62,20 @@ public static ContainerBase GetContainerModel(ServiceClientModel.ProtectionConta
6262
/// <summary>
6363
/// Helper function to convert ps backup engine model from service response.
6464
/// </summary>
65-
public static BackupEngineBase GetBackupEngineModel(ServiceClientModel.BackupEngineResource backupEngine)
65+
public static BackupEngineBase GetBackupEngineModel(ServiceClientModel.BackupEngineBaseResource backupEngine)
6666
{
6767
BackupEngineBase backupEngineModel = null;
6868

6969
if (backupEngine != null &&
7070
backupEngine.Properties != null)
7171
{
72+
string friendlyName = backupEngine.Properties.FriendlyName;
73+
string backupManagementType = backupEngine.Properties.BackupManagementType;
74+
string registrationStatus = backupEngine.Properties.RegistrationStatus;
75+
string healthStatus = backupEngine.Properties.HealthStatus;
76+
bool? canReRegister = backupEngine.Properties.CanReRegister;
77+
string backupEngineId = backupEngine.Properties.BackupEngineId;
78+
7279
if (backupEngine.Properties.GetType() == (typeof(ServiceClientModel.DpmBackupEngine)))
7380
{
7481
backupEngineModel = new DpmBackupEngine(backupEngine);
@@ -100,7 +107,7 @@ public static List<ContainerBase> GetContainerModelList(IEnumerable<ServiceClien
100107
/// <summary>
101108
/// Helper function to convert ps backup engine model list from service response.
102109
/// </summary>
103-
public static List<BackupEngineBase> GetBackupEngineModelList(IEnumerable<ServiceClientModel.BackupEngineResource> backupEngines)
110+
public static List<BackupEngineBase> GetBackupEngineModelList(IEnumerable<ServiceClientModel.BackupEngineBaseResource> backupEngines)
104111
{
105112
List<BackupEngineBase> backupEngineModel = new List<BackupEngineBase>();
106113

src/ResourceManager/RecoveryServices.Backup/Commands.RecoveryServices.Backup.Models/BaseObjects.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ public class BackupEngineBase : BackupEngineContext
120120
/// </summary>
121121
public string Name { get; set; }
122122

123-
public BackupEngineBase(ServiceClientModel.BackupEngineResource backupEngine)
123+
public BackupEngineBase(ServiceClientModel.BackupEngineBaseResource backupEngine)
124124
: base(((ServiceClientModel.BackupEngineBase)backupEngine.Properties).BackupEngineType,
125125
((ServiceClientModel.BackupEngineBase)backupEngine.Properties).BackupManagementType)
126126
{

src/ResourceManager/RecoveryServices.Backup/Commands.RecoveryServices.Backup.Models/DpmModels/DpmBackupEngine.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ public class DpmBackupEngine : BackupEngineBase
3636
/// </summary>
3737
public string Status { get; set; }
3838

39-
public DpmBackupEngine(ServiceClientModel.BackupEngineResource backupEngine)
39+
public DpmBackupEngine(ServiceClientModel.BackupEngineBaseResource backupEngine)
4040
: base(backupEngine)
4141
{
4242
ServiceClientModel.BackupEngineBase dpmBackupEngine = (ServiceClientModel.BackupEngineBase)backupEngine.Properties;
@@ -60,7 +60,7 @@ public class AzureBackupServerEngine : BackupEngineBase
6060
/// </summary>
6161
public string Status { get; set; }
6262

63-
public AzureBackupServerEngine(ServiceClientModel.BackupEngineResource backupEngine)
63+
public AzureBackupServerEngine(ServiceClientModel.BackupEngineBaseResource backupEngine)
6464
: base(backupEngine)
6565
{
6666
ServiceClientModel.AzureBackupServerEngine azureBackupServerEngine = (ServiceClientModel.AzureBackupServerEngine)backupEngine.Properties;

src/ResourceManager/RecoveryServices.Backup/Commands.RecoveryServices.Backup.Providers/Providers/AzureSqlPsBackupProvider.cs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -246,11 +246,9 @@ public Microsoft.Rest.Azure.AzureOperationResponse<ProtectionPolicyResource> Mod
246246
{
247247
string name = (string)this.ProviderData[ContainerParams.Name];
248248

249-
ProtectionContainerListQueryParams queryParams =
250-
new ProtectionContainerListQueryParams();
249+
ODataQuery<BMSContainerQueryObject> queryParams = new ODataQuery<BMSContainerQueryObject>(
250+
q => q.BackupManagementType == ServiceClientModel.BackupManagementType.AzureSql.ToString());
251251

252-
queryParams.BackupManagementType =
253-
ServiceClientModel.BackupManagementType.AzureSql.ToString();
254252

255253
var listResponse = ServiceClientAdapter.ListContainers(queryParams);
256254

src/ResourceManager/RecoveryServices.Backup/Commands.RecoveryServices.Backup.Providers/Providers/DpmPsBackupProvider.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
using ServiceClientModel = Microsoft.Azure.Management.RecoveryServices.Backup.Models;
2222
using Microsoft.Azure.Commands.RecoveryServices.Backup.Helpers;
2323
using Microsoft.Azure.Commands.RecoveryServices.Backup.Cmdlets.ServiceClientAdapterNS;
24+
using Microsoft.Rest.Azure.OData;
2425

2526
namespace Microsoft.Azure.Commands.RecoveryServices.Backup.Cmdlets.ProviderModel
2627
{
@@ -101,7 +102,7 @@ public ServiceClientModel.ProtectionPolicyResponse ModifyPolicy()
101102
{
102103
string name = (string)this.ProviderData[ContainerParams.Name];
103104

104-
ServiceClientModel.BackupEngineListQueryParams queryParams = new ServiceClientModel.BackupEngineListQueryParams();
105+
ODataQuery<ServiceClientModel.BMSBackupEngineQueryObject> queryParams = new ODataQuery<ServiceClientModel.BMSBackupEngineQueryObject>();
105106

106107
var listResponse = ServiceClientAdapter.ListBackupEngines(queryParams);
107108

src/ResourceManager/RecoveryServices.Backup/Commands.RecoveryServices.Backup.Providers/Providers/IaasVmPsBackupProvider.cs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -467,19 +467,19 @@ public List<ContainerBase> ListProtectionContainers()
467467
}
468468
}
469469

470-
ProtectionContainerListQueryParams queryParams = new ProtectionContainerListQueryParams();
471-
472-
// 1. Filter by Name
473-
queryParams.FriendlyName = nameQueryFilter;
474-
475-
// 2. Filter by ContainerType
476-
queryParams.BackupManagementType =
477-
ServiceClientModel.BackupManagementType.AzureIaasVM.ToString();
478-
479-
// 3. Filter by Status
480-
if (status != 0)
470+
ODataQuery<BMSContainerQueryObject> queryParams = null;
471+
if (status == 0)
472+
{
473+
queryParams = new ODataQuery<BMSContainerQueryObject>(
474+
q => q.FriendlyName == nameQueryFilter &&
475+
q.BackupManagementType == ServiceClientModel.BackupManagementType.AzureIaasVM.ToString());
476+
}
477+
else
481478
{
482-
queryParams.RegistrationStatus = status.ToString();
479+
queryParams = new ODataQuery<BMSContainerQueryObject>(
480+
q => q.FriendlyName == nameQueryFilter &&
481+
q.BackupManagementType == ServiceClientModel.BackupManagementType.AzureIaasVM.ToString() &&
482+
q.Status == status.ToString());
483483
}
484484

485485
var listResponse = ServiceClientAdapter.ListContainers(queryParams);

src/ResourceManager/RecoveryServices.Backup/Commands.RecoveryServices.Backup.Providers/Providers/MabPsBackupProvider.cs

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
using CmdletModel = Microsoft.Azure.Commands.RecoveryServices.Backup.Cmdlets.Models;
2424
using Microsoft.Azure.Commands.RecoveryServices.Backup.Cmdlets.Models;
2525
using Microsoft.Azure.Commands.RecoveryServices.Backup.Cmdlets.ServiceClientAdapterNS;
26+
using Microsoft.Rest.Azure.OData;
2627

2728
namespace Microsoft.Azure.Commands.RecoveryServices.Backup.Cmdlets.ProviderModel
2829
{
@@ -98,13 +99,8 @@ public ProtectionPolicyResponse ModifyPolicy()
9899
{
99100
string name = (string)this.ProviderData[ContainerParams.Name];
100101

101-
ProtectionContainerListQueryParams queryParams = new ProtectionContainerListQueryParams();
102-
103-
// 1. Filter by Name
104-
queryParams.FriendlyName = name;
105-
106-
// 2. Filter by ContainerType
107-
queryParams.BackupManagementType = ServiceClientModel.BackupManagementType.MAB.ToString();
102+
ODataQuery<BMSContainerQueryObject> queryParams = new ODataQuery<BMSContainerQueryObject>(
103+
q => q.FriendlyName == name && q.BackupManagementType == ServiceClientModel.BackupManagementType.MAB.ToString());
108104

109105
var listResponse = ServiceClientAdapter.ListContainers(queryParams);
110106

src/ResourceManager/RecoveryServices.Backup/Commands.RecoveryServices.Backup.ServiceClientAdapter/BMSAPIs/ContainerAPIs.cs

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -56,30 +56,35 @@ public IEnumerable<ProtectionContainerResource> ListContainers(
5656
/// </summary>
5757
/// <param name="parameters">Query parameters</param>
5858
/// <returns>List of backup engines</returns>
59-
public IEnumerable<BackupEngineResource> ListBackupEngines(BackupEngineListQueryParams queryParams)
59+
public IEnumerable<BackupEngineBaseResource> ListBackupEngines(ODataQuery<BMSBackupEngineQueryObject> queryParams)
6060
{
61-
PaginationRequest paginationParam = new PaginationRequest();
62-
paginationParam.Top = "200";
63-
var listResponse = BmsAdapter.Client.BackupEngines.ListAsync(
64-
BmsAdapter.GetResourceGroupName(),
65-
BmsAdapter.GetResourceName(),
66-
queryParams,
67-
paginationParam,
68-
cancellationToken: BmsAdapter.CmdletCancellationToken).Result;
69-
return listResponse.ItemList.BackupEngines;
61+
queryParams.Top = 200;
62+
Func<IPage<BackupEngineBaseResource>> listAsync =
63+
() => BmsAdapter.Client.BackupEngines.GetWithHttpMessagesAsync(
64+
BmsAdapter.GetResourceName(),
65+
BmsAdapter.GetResourceGroupName(),
66+
queryParams,
67+
cancellationToken: BmsAdapter.CmdletCancellationToken).Result.Body;
68+
69+
Func<string, IPage<BackupEngineBaseResource>> listNextAsync =
70+
nextLink => BmsAdapter.Client.BackupEngines.GetNextWithHttpMessagesAsync(
71+
nextLink,
72+
cancellationToken: BmsAdapter.CmdletCancellationToken).Result.Body;
73+
var listResponse = HelperUtils.GetPagedList(listAsync, listNextAsync);
74+
return listResponse;
7075
}
7176

7277
/// <summary>
7378
/// Triggers refresh of container catalog in service
7479
/// </summary>
7580
/// <returns>Response of the job created in the service</returns>
76-
public BaseRecoveryServicesJobResponse RefreshContainers()
81+
public Microsoft.Rest.Azure.AzureOperationResponse RefreshContainers()
7782
{
7883
string resourceName = BmsAdapter.GetResourceName();
7984
string resourceGroupName = BmsAdapter.GetResourceGroupName();
80-
var response = BmsAdapter.Client.Containers.RefreshAsync(
85+
var response = BmsAdapter.Client.ProtectionContainers.RefreshWithHttpMessagesAsync(
86+
resourceName,
8187
resourceGroupName,
82-
resourceName,
8388
AzureFabricName,
8489
cancellationToken: BmsAdapter.CmdletCancellationToken).Result;
8590
return response;
@@ -88,14 +93,14 @@ public BaseRecoveryServicesJobResponse RefreshContainers()
8893
/// <summary>
8994
/// Triggers unregister of a container in service
9095
/// </summary>
91-
public AzureOperationResponse UnregisterContainers(string containerName)
96+
public Microsoft.Rest.Azure.AzureOperationResponse UnregisterContainers(string containerName)
9297
{
9398
string resourceName = BmsAdapter.GetResourceName();
9499
string resourceGroupName = BmsAdapter.GetResourceGroupName();
95100

96-
var response = BmsAdapter.Client.Containers.UnregisterAsync(
97-
resourceGroupName,
98-
resourceName,
101+
var response = BmsAdapter.Client.ProtectionContainers.UnregisterWithHttpMessagesAsync(
102+
resourceName,
103+
resourceGroupName,
99104
containerName,
100105
cancellationToken: BmsAdapter.CmdletCancellationToken).Result;
101106
return response;

0 commit comments

Comments
 (0)