Skip to content

Commit e271bcb

Browse files
committed
Merge pull request #182 from MabOneSdk/sql-pikumar
AzureSql provider skeleton.
2 parents 9da1b94 + c0e2c18 commit e271bcb

File tree

4 files changed

+81
-0
lines changed

4 files changed

+81
-0
lines changed

src/ResourceManager/RecoveryServices.Backup/Commands.RecoveryServices.Backup.Models/CommonModels/Enums.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ namespace Microsoft.Azure.Commands.RecoveryServices.Backup.Cmdlets.Models
2323
public enum ContainerType
2424
{
2525
AzureVM,
26+
27+
AzureSqlContainer,
2628
}
2729

2830
public enum BackupManagementType
@@ -37,6 +39,8 @@ public enum WorkloadType
3739
public enum PsBackupProviderTypes
3840
{
3941
IaasVm = 1,
42+
43+
AzureSql,
4044
}
4145

4246
public enum ContainerRegistrationStatus

src/ResourceManager/RecoveryServices.Backup/Commands.RecoveryServices.Backup.Providers/Commands.RecoveryServices.Backup.Providers.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@
5353
<ItemGroup>
5454
<Compile Include="IPsBackupProvider.cs" />
5555
<Compile Include="Properties\AssemblyInfo.cs" />
56+
<Compile Include="Providers\AzureSqlPsBackupProvider.cs" />
5657
<Compile Include="PsBackupProviderManager.cs" />
5758
<Compile Include="PsBackupProviderDC.cs" />
5859
<Compile Include="Providers\IaasVmPsBackupProvider.cs" />
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
// ----------------------------------------------------------------------------------
2+
//
3+
// Copyright Microsoft Corporation
4+
// Licensed under the Apache License, Version 2.0 (the "License");
5+
// you may not use this file except in compliance with the License.
6+
// You may obtain a copy of the License at
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
// Unless required by applicable law or agreed to in writing, software
9+
// distributed under the License is distributed on an "AS IS" BASIS,
10+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11+
// See the License for the specific language governing permissions and
12+
// limitations under the License.
13+
// ----------------------------------------------------------------------------------
14+
15+
using System;
16+
using System.Collections.Generic;
17+
using System.Linq;
18+
using System.Text;
19+
using System.Threading.Tasks;
20+
21+
namespace Microsoft.Azure.Commands.RecoveryServices.Backup.Cmdlets.ProviderModel
22+
{
23+
public class AzureSqlPsBackupProvider : IPsBackupProvider
24+
{
25+
public void Initialize(ProviderData providerData, HydraAdapter.HydraAdapter hydraAdapter)
26+
{
27+
throw new NotImplementedException();
28+
}
29+
30+
public Management.RecoveryServices.Backup.Models.BaseRecoveryServicesJobResponse EnableProtection()
31+
{
32+
throw new NotImplementedException();
33+
}
34+
35+
public Management.RecoveryServices.Backup.Models.BaseRecoveryServicesJobResponse DisableProtection()
36+
{
37+
throw new NotImplementedException();
38+
}
39+
40+
public Management.RecoveryServices.Backup.Models.BaseRecoveryServicesJobResponse TriggerBackup()
41+
{
42+
throw new NotImplementedException();
43+
}
44+
45+
public Management.RecoveryServices.Backup.Models.BaseRecoveryServicesJobResponse TriggerRestore()
46+
{
47+
throw new NotImplementedException();
48+
}
49+
50+
public Management.RecoveryServices.Backup.Models.ProtectedItemResponse GetProtectedItem()
51+
{
52+
throw new NotImplementedException();
53+
}
54+
55+
public Management.RecoveryServices.Backup.Models.RecoveryPointResponse GetRecoveryPoint()
56+
{
57+
throw new NotImplementedException();
58+
}
59+
60+
public Management.RecoveryServices.Backup.Models.ProtectionPolicyResponse CreatePolicy()
61+
{
62+
throw new NotImplementedException();
63+
}
64+
65+
public Management.RecoveryServices.Backup.Models.ProtectionPolicyResponse ModifyPolicy()
66+
{
67+
throw new NotImplementedException();
68+
}
69+
}
70+
}

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,9 @@ public IPsBackupProvider GetProviderInstance(ContainerType containerType)
4444
case ContainerType.AzureVM:
4545
providerType = PsBackupProviderTypes.IaasVm;
4646
break;
47+
case ContainerType.AzureSqlContainer:
48+
providerType = PsBackupProviderTypes.AzureSql;
49+
break;
4750
default:
4851
break;
4952
}
@@ -70,6 +73,9 @@ public IPsBackupProvider GetProviderInstance(PsBackupProviderTypes providerType)
7073
case PsBackupProviderTypes.IaasVm:
7174
psBackupProvider = new IaasVmPsBackupProvider();
7275
break;
76+
case PsBackupProviderTypes.AzureSql:
77+
psBackupProvider = new AzureSqlPsBackupProvider();
78+
break;
7379
default:
7480
break;
7581
}

0 commit comments

Comments
 (0)