internal async Task CreateAsync(Subscription subscription) { Contract.Requires(Subscription == null); Contract.Requires(subscription != null); Contract.Requires(!string.IsNullOrWhiteSpace(Name)); Contract.Requires(!string.IsNullOrWhiteSpace(Label)); Contract.Requires(Location == null || Location.Trim().Length > 0); Contract.Requires(AffinityGroup == null || AffinityGroup.Trim().Length > 0); Contract.Requires((Location == null) != (AffinityGroup == null)); var ns = XmlNamespaces.WindowsAzure; var content = new XElement(ns + "CreateHostedService", new XElement(ns + "ServiceName", Name), new XElement(ns + "Label", Label.ToBase64String()), string.IsNullOrWhiteSpace(Description) ? null : new XElement(ns + "Description", Description), string.IsNullOrWhiteSpace(Location) ? null : new XElement(ns + "Location", Location), string.IsNullOrWhiteSpace(AffinityGroup) ? null : new XElement(ns + "AffinityGroup", AffinityGroup), ExtendedProperties == null || ExtendedProperties.Count == 0 ? null : new XElement(ns + "ExtendedProperties", ExtendedProperties.Select(kv => new XElement(ns + "ExtendedProperty", new XElement(ns + "Name", kv.Key), new XElement(ns + "Value", kv.Value)))) ); var hc = subscription.GetCoreRestClient20140601("services/hostedservices"); await hc.PostAsync(content); Subscription = subscription; }
internal async Task CreateAsync(Subscription subscription) { Contract.Requires(Subscription == null); Contract.Requires(subscription != null); Contract.Requires(!string.IsNullOrWhiteSpace(ServiceName)); Contract.Requires(!string.IsNullOrWhiteSpace(Label)); Contract.Requires(Location == null || Location.Trim().Length > 0); Contract.Requires(AffinityGroup == null || AffinityGroup.Trim().Length > 0); Contract.Requires((Location == null) != (AffinityGroup == null)); var azureNamespace = XmlNamespaces.WindowsAzure; var content = new XElement(azureNamespace + "CreateStorageServiceInput", new XElement(azureNamespace + "ServiceName", ServiceName), string.IsNullOrWhiteSpace(Description) ? null : new XElement(azureNamespace + "Description", Description), new XElement(azureNamespace + "Label", Label.ToBase64String()), string.IsNullOrWhiteSpace(Location) ? null : new XElement(azureNamespace + "Location", Location), string.IsNullOrWhiteSpace(AffinityGroup) ? null : new XElement(azureNamespace + "AffinityGroup", AffinityGroup), new XElement(azureNamespace + "GeoReplicationEnabled", GeoReplicationEnabled ? "true" : "false"), ExtendedProperties == null || ExtendedProperties.Count == 0 ? new XElement(azureNamespace + "ExtendedProperties") : new XElement(azureNamespace + "ExtendedProperties", ExtendedProperties.Select(kv => new XElement(azureNamespace + "ExtendedProperty", new XElement(azureNamespace + "Name", kv.Key), new XElement(azureNamespace + "Value", kv.Value)))), new XElement(azureNamespace + "SecondaryReadEnabled", SecondaryReadEnabled ? "true" : "false")); var hc = subscription.GetCoreRestClient20131101("services/storageservices"); await hc.PostAsync(content); Subscription = subscription; }
public IEnumerable <AffinityGroup> GetAffinityGroupProcess(out Operation operation) { IEnumerable <AffinityGroup> affinityGroups; Func <string, AffinityGroup> func = null; Func <string, AffinityGroupList> func1 = null; IEnumerable <AffinityGroup> affinityGroups1 = null; operation = null; using (OperationContextScope operationContextScope = new OperationContextScope((IContextChannel)base.Channel)) { try { if (this.Name == null) { GetAzureAffinityGroupCommand getAzureAffinityGroupCommand = this; if (func1 == null) { func1 = (string s) => base.Channel.ListAffinityGroups(s); } affinityGroups1 = ((CmdletBase <IServiceManagement>)getAzureAffinityGroupCommand).RetryCall <AffinityGroupList>(func1); } else { AffinityGroup[] affinityGroupArray = new AffinityGroup[1]; AffinityGroup[] affinityGroupArray1 = affinityGroupArray; int num = 0; GetAzureAffinityGroupCommand getAzureAffinityGroupCommand1 = this; if (func == null) { func = (string s) => base.Channel.GetAffinityGroup(s, this.Name); } affinityGroupArray1[num] = ((CmdletBase <IServiceManagement>)getAzureAffinityGroupCommand1).RetryCall <AffinityGroup>(func); affinityGroups1 = affinityGroupArray; } operation = base.WaitForOperation(base.CommandRuntime.ToString()); } catch (CommunicationException communicationException1) { CommunicationException communicationException = communicationException1; if (communicationException as EndpointNotFoundException == null || base.IsVerbose()) { this.WriteErrorDetails(communicationException); } else { affinityGroups = null; return(affinityGroups); } } return(affinityGroups1); } return(affinityGroups); }
/// <summary> /// Connect to an Azure subscription and obtain affinity group information. /// </summary> protected override void AzureExecute() { try { AffinityGroup group = this.RetryCall(s => this.Channel.GetAffinityGroup(s, this.AffinityGroupName.Get(this.ActivityContext))); this.AffinityGroup.Set(this.ActivityContext, group); } catch (EndpointNotFoundException ex) { this.LogBuildMessage(ex.Message); this.AffinityGroup.Set(this.ActivityContext, null); } }
internal static void LogObject(AffinityGroup affinityGroup) { if (affinityGroup == null) return; Console.WriteLine("AffinityGroup Name:{0}", affinityGroup.Name); if (!string.IsNullOrEmpty(affinityGroup.Label)) { Console.WriteLine("AffinityGroup Label:{0}", ServiceManagementHelper.DecodeFromBase64String(affinityGroup.Label)); } Console.WriteLine("AffinityGroup Description:{0}", affinityGroup.Description); Console.WriteLine("AffinityGroup Location:{0}", affinityGroup.Location); LogObject(affinityGroup.HostedServices); LogObject(affinityGroup.StorageServices); }
public Task CreateAffinityGroupAsync(AffinityGroup affinityGroup) { return(affinityGroup.CreateAsync(this)); }