public override void ExecuteCmdlet() { ConfirmAction( Force.IsPresent, string.Format(Resources.RemoveStaticIPAddressPoolConfirmationMessage, StaticIPAddressPool.Name), string.Format(Resources.RemoveStaticIPAddressPoolMessage), StaticIPAddressPool.Name, () => { Guid? jobId = Guid.Empty; var staticIPAddressPoolOperations = new StaticIPAddressPoolOperations(this.WebClientFactory); var filter = new Dictionary<string, string> { {"StampId", StaticIPAddressPool.StampId.ToString()}, {"ID ", StaticIPAddressPool.ID.ToString()} }; var deletedSstaticIPAddressPool = staticIPAddressPoolOperations.Read(filter)[0]; staticIPAddressPoolOperations.Delete(deletedSstaticIPAddressPool.ID, out jobId); var jobInfo = WaitForJobCompletion(jobId); if (this.PassThru) { WriteObject(jobInfo.jobStatus != JobStatusEnum.Failed); } }); }
public override void ExecuteCmdlet() { ConfirmAction( Force.IsPresent, string.Format(Resources.RemoveStaticIPAddressPoolConfirmationMessage, StaticIPAddressPool.Name), string.Format(Resources.RemoveStaticIPAddressPoolMessage), StaticIPAddressPool.Name, () => { Guid?jobId = Guid.Empty; var staticIPAddressPoolOperations = new StaticIPAddressPoolOperations(this.WebClientFactory); var filter = new Dictionary <string, string> { { "StampId", StaticIPAddressPool.StampId.ToString() }, { "ID ", StaticIPAddressPool.ID.ToString() } }; var deletedSstaticIPAddressPool = staticIPAddressPoolOperations.Read(filter)[0]; staticIPAddressPoolOperations.Delete(deletedSstaticIPAddressPool.ID, out jobId); var jobInfo = WaitForJobCompletion(jobId); if (this.PassThru) { WriteObject(jobInfo.jobStatus != JobStatusEnum.Failed); } }); }
public void ShouldDeleteStaticIPAddressPool() { var mockChannel = new MockRequestChannel(); var existingStaticIPAddressPool = new StaticIPAddressPool() { Name = staticIPAddressPoolName, VMSubnetId = Guid.Empty, IPAddressRangeStart = ipAddressRangeStart, IPAddressRangeEnd = ipAddressRangeEnd, StampId = Guid.Empty }; mockChannel.AddReturnObject(new Cloud() { StampId = Guid.NewGuid() }); mockChannel.AddReturnObject(existingStaticIPAddressPool, new WebHeaderCollection { "x-ms-request-id:" + Guid.NewGuid() }); Guid?jobOut; var staticIPAddressPoolOperations = new StaticIPAddressPoolOperations(new WebClientFactory(new Subscription(), mockChannel)); staticIPAddressPoolOperations.Delete(Guid.Empty, out jobOut); Assert.AreEqual(2, mockChannel.ClientRequests.Count); Assert.AreEqual(HttpMethod.Delete.ToString(), mockChannel.ClientRequests[1].Item1.Method); // Check the URI var requestURI = mockChannel.ClientRequests[1].Item1.Address.AbsolutePath; Assert.AreEqual("/Clouds", mockChannel.ClientRequests[0].Item1.Address.AbsolutePath.Substring(1)); Assert.AreEqual(baseURI, mockChannel.ClientRequests[1].Item1.Address.AbsolutePath.Substring(1).Remove(requestURI.IndexOf('(') - 1)); }
public override void ExecuteCmdlet() { ConfirmAction( Force.IsPresent, string.Format(Resources.RemoveVMNetworkConfirmationMessage, VNet.Name), string.Format(Resources.RemoveVMNetworkMessage), VNet.Name, () => { Guid?vmNetworkJobId = Guid.Empty; var vmNetworkOperations = new VMNetworkOperations(this.WebClientFactory); var vmSubnetOperations = new VMSubnetOperations(this.WebClientFactory); var staticIPAddressPoolOperations = new StaticIPAddressPoolOperations(this.WebClientFactory); var deletedVMNetwork = vmNetworkOperations.Read(VNet.ID); var deletedSubnet = vmSubnetOperations.Read(VNet); foreach (var subnet in deletedSubnet) { var deletedIpPool = staticIPAddressPoolOperations.Read(subnet); foreach (var ipPool in deletedIpPool) { Guid?ipPoolJobId = Guid.Empty; staticIPAddressPoolOperations.Delete(ipPool.ID, out ipPoolJobId); WaitForJobCompletion(ipPoolJobId); } } foreach (var subnet in deletedSubnet) { Guid?subnetJobId = Guid.Empty; vmSubnetOperations.Delete(subnet.ID, out subnetJobId); WaitForJobCompletion(subnetJobId); } vmNetworkOperations.Delete(VNet.ID, out vmNetworkJobId); var jobInfo = WaitForJobCompletion(vmNetworkJobId); if (this.PassThru) { WriteObject(jobInfo.jobStatus != JobStatusEnum.Failed); } }); }
public override void ExecuteCmdlet() { ConfirmAction( Force.IsPresent, string.Format(Resources.RemoveVMNetworkConfirmationMessage, VNet.Name), string.Format(Resources.RemoveVMNetworkMessage), VNet.Name, () => { Guid? vmNetworkJobId = Guid.Empty; var vmNetworkOperations = new VMNetworkOperations(this.WebClientFactory); var vmSubnetOperations = new VMSubnetOperations(this.WebClientFactory); var staticIPAddressPoolOperations = new StaticIPAddressPoolOperations(this.WebClientFactory); var deletedVMNetwork = vmNetworkOperations.Read(VNet.ID); var deletedSubnet = vmSubnetOperations.Read(VNet); foreach (var subnet in deletedSubnet) { var deletedIpPool = staticIPAddressPoolOperations.Read(subnet); foreach (var ipPool in deletedIpPool) { Guid? ipPoolJobId = Guid.Empty; staticIPAddressPoolOperations.Delete(ipPool.ID, out ipPoolJobId); WaitForJobCompletion(ipPoolJobId); } } foreach (var subnet in deletedSubnet) { Guid? subnetJobId = Guid.Empty; vmSubnetOperations.Delete(subnet.ID, out subnetJobId); WaitForJobCompletion(subnetJobId); } vmNetworkOperations.Delete(VNet.ID, out vmNetworkJobId); var jobInfo = WaitForJobCompletion(vmNetworkJobId); if (this.PassThru) { WriteObject(jobInfo.jobStatus != JobStatusEnum.Failed); } }); }
public override void ExecuteCmdlet() { ConfirmAction( Force.IsPresent, string.Format(Resources.RemoveVMSubnetConfirmationMessage, VMSubnet.Name), string.Format(Resources.RemoveVMSubnetMessage), VMSubnet.Name, () => { var vmSubnetOperations = new VMSubnetOperations(this.WebClientFactory); var staticIPAddressPoolOperations = new StaticIPAddressPoolOperations(this.WebClientFactory); var filter = new Dictionary<string, string> { {"StampId", VMSubnet.StampId.ToString()}, {"ID ", VMSubnet.ID.ToString()} }; var deletedSubnet = vmSubnetOperations.Read(filter)[0]; var deletedIpPool = staticIPAddressPoolOperations.Read(deletedSubnet); foreach (var ipPool in deletedIpPool) { Guid? ipPoolJobId = Guid.Empty; staticIPAddressPoolOperations.Delete(ipPool.ID, out ipPoolJobId); WaitForJobCompletion(ipPoolJobId); } Guid? subnetJobId = Guid.Empty; vmSubnetOperations.Delete(deletedSubnet.ID, out subnetJobId); var jobInfo = WaitForJobCompletion(subnetJobId); if (this.PassThru) { WriteObject(jobInfo.jobStatus != JobStatusEnum.Failed); } }); }
public override void ExecuteCmdlet() { ConfirmAction( Force.IsPresent, string.Format(Resources.RemoveVMSubnetConfirmationMessage, VMSubnet.Name), string.Format(Resources.RemoveVMSubnetMessage), VMSubnet.Name, () => { var vmSubnetOperations = new VMSubnetOperations(this.WebClientFactory); var staticIPAddressPoolOperations = new StaticIPAddressPoolOperations(this.WebClientFactory); var filter = new Dictionary <string, string> { { "StampId", VMSubnet.StampId.ToString() }, { "ID ", VMSubnet.ID.ToString() } }; var deletedSubnet = vmSubnetOperations.Read(filter)[0]; var deletedIpPool = staticIPAddressPoolOperations.Read(deletedSubnet); foreach (var ipPool in deletedIpPool) { Guid?ipPoolJobId = Guid.Empty; staticIPAddressPoolOperations.Delete(ipPool.ID, out ipPoolJobId); WaitForJobCompletion(ipPoolJobId); } Guid?subnetJobId = Guid.Empty; vmSubnetOperations.Delete(deletedSubnet.ID, out subnetJobId); var jobInfo = WaitForJobCompletion(subnetJobId); if (this.PassThru) { WriteObject(jobInfo.jobStatus != JobStatusEnum.Failed); } }); }
public void ShouldDeleteStaticIPAddressPool() { var mockChannel = new MockRequestChannel(); var existingStaticIPAddressPool = new StaticIPAddressPool() { Name = staticIPAddressPoolName, VMSubnetId = Guid.Empty, IPAddressRangeStart = ipAddressRangeStart, IPAddressRangeEnd = ipAddressRangeEnd, StampId = Guid.Empty }; mockChannel.AddReturnObject(new Cloud() { StampId = Guid.NewGuid() }); mockChannel.AddReturnObject(existingStaticIPAddressPool, new WebHeaderCollection { "x-ms-request-id:" + Guid.NewGuid() }); Guid? jobOut; var staticIPAddressPoolOperations = new StaticIPAddressPoolOperations(new WebClientFactory(new Subscription(), mockChannel)); staticIPAddressPoolOperations.Delete(Guid.Empty, out jobOut); Assert.Equal(2, mockChannel.ClientRequests.Count); Assert.Equal(HttpMethod.Delete.ToString(), mockChannel.ClientRequests[1].Item1.Method); // Check the URI var requestURI = mockChannel.ClientRequests[1].Item1.Address.AbsolutePath; Assert.Equal("/Clouds", mockChannel.ClientRequests[0].Item1.Address.AbsolutePath.Substring(1)); Assert.Equal(baseURI, mockChannel.ClientRequests[1].Item1.Address.AbsolutePath.Substring(1).Remove(requestURI.IndexOf('(') - 1)); }