Example #1
0
 internal FirewallRule(XElement xml, DatabaseServer parent)
 {
     Parent = parent;
     xml.HydrateObject(XmlNamespaces.WindowsAzure, this);
     var startIpAddressElement = xml.Element(XmlNamespaces.WindowsAzure + "StartIPAddress");
     if (startIpAddressElement != null)
     {
         StartIpAddress = startIpAddressElement.Value;
     }
     var endIpAddressElement = xml.Element(XmlNamespaces.WindowsAzure + "EndIPAddress");
     if (endIpAddressElement != null)
     {
         EndIpAddress = endIpAddressElement.Value;
     }
 }
Example #2
0
        internal async Task CreateAsync(DatabaseServer server)
        {
            Contract.Requires(Parent == null);
            Contract.Requires(server != null);
            Contract.Requires(!string.IsNullOrWhiteSpace(Name));
            Contract.Requires(!string.IsNullOrWhiteSpace(StartIpAddress));
            Contract.Requires(!string.IsNullOrWhiteSpace(EndIpAddress));

            var ns = XmlNamespaces.SqlAzure;
            var content = new XElement(ns + "FirewallRule",
                new XElement(ns + "StartIpAddress", StartIpAddress),
                new XElement(ns + "EndIpAddress", EndIpAddress)
                );

            var hc = GetRestClient(server);
            await hc.PutAsync(content);

            Parent = server;
        }
Example #3
0
 internal Database(XElement xml, DatabaseServer databaseServer)
 {
     xml.HydrateObject(XmlNamespaces.WindowsAzure, this);
     DatabaseServer = databaseServer;
 }
Example #4
0
 public Task <Replica> CreateOfflineReplica(DatabaseServer partnerServer)
 {
     return(CreateReplica(partnerServer, Name, true, true));
 }
Example #5
0
 public Task <Replica> CreateLiveReplica(DatabaseServer partnerServer)
 {
     return(CreateReplica(partnerServer, Name, true, false));
 }
Example #6
0
 public Task <Replica> CreateCopy(DatabaseServer partnerServer, string partnerDatabase)
 {
     return(CreateReplica(partnerServer, partnerDatabase, false, false));
 }
Example #7
0
 internal Database(XElement xml, DatabaseServer databaseServer)
 {
     xml.HydrateObject(XmlNamespaces.WindowsAzure, this);
     DatabaseServer = databaseServer;
     Replicas       = new LatentSequence <Replica>(GetReplicasAsync);
 }
Example #8
0
 AzureRestClient GetRestClient(DatabaseServer server, string pathSuffix = null)
 {
     string servicePath = "servers/" + server.Name + "/firewallrules/" + Name;
     if (!string.IsNullOrEmpty(pathSuffix)) servicePath += pathSuffix;
     return server.Subscription.GetDatabaseRestClient(servicePath);
 }
Example #9
0
 public async Task DeleteAsync()
 {
     Contract.Requires(Parent != null);
     await GetRestClient().DeleteAsync();
     Parent = null;
 }
Example #10
0
 internal FirewallRule(XElement xml, DatabaseServer parent)
 {
     Parent = parent;
     xml.HydrateObject(XmlNamespaces.SqlAzure, this);
 }
Example #11
0
 internal Database(XElement xml, DatabaseServer databaseServer)
 {
     xml.HydrateObject(XmlNamespaces.WindowsAzure, this);
     DatabaseServer = databaseServer;
 }
Example #12
0
 public Task CreateDatabaseServerAsync(DatabaseServer server, string adminPassword) { return server.CreateAsync(this, adminPassword); }
Example #13
0
        private AzureRestClient GetRestClient(DatabaseServer server, string databaseName)
        {
            var servicePath = "services/sqlservers/servers/" + server.Name + "/databases/" + databaseName + "/databasecopies/" + Name;

            return(server.Subscription.GetDatabaseRestClient(servicePath));
        }
Example #14
0
 internal FirewallRule(XElement xml, DatabaseServer parent)
 {
     Parent = parent;
     xml.HydrateObject(XmlNamespaces.SqlAzure, this);
 }