public override void ExecuteCmdlet() { base.ExecuteCmdlet(); var existingLoadBalancingRule = this.LoadBalancer.LoadBalancingRules.SingleOrDefault(resource => string.Equals(resource.Name, this.Name, System.StringComparison.CurrentCultureIgnoreCase)); if (existingLoadBalancingRule != null) { throw new ArgumentException("LoadBalancingRule with the specified name already exists"); } var loadBalancingRule = new PSLoadBalancingRule(); loadBalancingRule.Name = this.Name; loadBalancingRule.Protocol = this.Protocol; loadBalancingRule.FrontendPort = this.FrontendPort; loadBalancingRule.BackendPort = this.BackendPort; if (this.IdleTimeoutInMinutes > 0) { loadBalancingRule.IdleTimeoutInMinutes = this.IdleTimeoutInMinutes; } if (!string.IsNullOrEmpty(this.LoadDistribution)) { loadBalancingRule.LoadDistribution = this.LoadDistribution; } loadBalancingRule.EnableFloatingIP = this.EnableFloatingIP.IsPresent; if (!string.IsNullOrEmpty(this.BackendAddressPoolId)) { loadBalancingRule.BackendAddressPool = new PSResourceId(); loadBalancingRule.BackendAddressPool.Id = this.BackendAddressPoolId; } if (!string.IsNullOrEmpty(this.ProbeId)) { loadBalancingRule.Probe = new PSResourceId(); loadBalancingRule.Probe.Id = this.ProbeId; } if (!string.IsNullOrEmpty(this.FrontendIpConfigurationId)) { loadBalancingRule.FrontendIPConfiguration = new PSResourceId() { Id = this.FrontendIpConfigurationId }; } loadBalancingRule.Id = ChildResourceHelper.GetResourceId( this.NetworkClient.NetworkManagementClient.SubscriptionId, this.LoadBalancer.ResourceGroupName, this.LoadBalancer.Name, Microsoft.Azure.Commands.Network.Properties.Resources.LoadBalancerRuleName, this.Name); this.LoadBalancer.LoadBalancingRules.Add(loadBalancingRule); WriteObject(this.LoadBalancer); }
public override void ExecuteCmdlet() { base.ExecuteCmdlet(); var loadBalancingRule = new PSLoadBalancingRule(); loadBalancingRule.Name = this.Name; loadBalancingRule.Protocol = this.Protocol; loadBalancingRule.FrontendPort = this.FrontendPort; loadBalancingRule.BackendPort = this.BackendPort; if (this.IdleTimeoutInMinutes > 0) { loadBalancingRule.IdleTimeoutInMinutes = this.IdleTimeoutInMinutes; } if (!string.IsNullOrEmpty(this.LoadDistribution)) { loadBalancingRule.LoadDistribution = this.LoadDistribution; } loadBalancingRule.EnableFloatingIP = this.EnableFloatingIP.IsPresent; if (!string.IsNullOrEmpty(this.BackendAddressPoolId)) { loadBalancingRule.BackendAddressPool = new PSResourceId(); loadBalancingRule.BackendAddressPool.Id = this.BackendAddressPoolId; } if (!string.IsNullOrEmpty(this.ProbeId)) { loadBalancingRule.Probe = new PSResourceId(); loadBalancingRule.Probe.Id = this.ProbeId; } if (!string.IsNullOrEmpty(this.FrontendIpConfigurationId)) { loadBalancingRule.FrontendIPConfiguration = new PSResourceId() { Id = this.FrontendIpConfigurationId }; } loadBalancingRule.Id = ChildResourceHelper.GetResourceNotSetId( this.NetworkClient.NetworkManagementClient.SubscriptionId, Microsoft.Azure.Commands.Network.Properties.Resources.LoadBalancerRuleName, this.Name); WriteObject(loadBalancingRule); }