/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the elasticloadbalancingv2-2015-12-01.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.ElasticLoadBalancingV2.Model { /// <summary> /// Container for the parameters to the CreateRule operation. /// Creates a rule for the specified listener. The listener must be associated with an /// Application Load Balancer. /// /// /// <para> /// Each rule consists of a priority, one or more actions, and one or more conditions. /// Rules are evaluated in priority order, from the lowest value to the highest value. /// When the conditions for a rule are met, its actions are performed. If the conditions /// for no rules are met, the actions for the default rule are performed. For more information, /// see <a href="https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#listener-rules">Listener /// rules</a> in the <i>Application Load Balancers Guide</i>. /// </para> /// </summary> public partial class CreateRuleRequest : AmazonElasticLoadBalancingV2Request { private List<Action> _actions = new List<Action>(); private List<RuleCondition> _conditions = new List<RuleCondition>(); private string _listenerArn; private int? _priority; private List<Tag> _tags = new List<Tag>(); /// <summary> /// Gets and sets the property Actions. /// <para> /// The actions. /// </para> /// </summary> [AWSProperty(Required=true)] public List<Action> Actions { get { return this._actions; } set { this._actions = value; } } // Check to see if Actions property is set internal bool IsSetActions() { return this._actions != null && this._actions.Count > 0; } /// <summary> /// Gets and sets the property Conditions. /// <para> /// The conditions. /// </para> /// </summary> [AWSProperty(Required=true)] public List<RuleCondition> Conditions { get { return this._conditions; } set { this._conditions = value; } } // Check to see if Conditions property is set internal bool IsSetConditions() { return this._conditions != null && this._conditions.Count > 0; } /// <summary> /// Gets and sets the property ListenerArn. /// <para> /// The Amazon Resource Name (ARN) of the listener. /// </para> /// </summary> [AWSProperty(Required=true)] public string ListenerArn { get { return this._listenerArn; } set { this._listenerArn = value; } } // Check to see if ListenerArn property is set internal bool IsSetListenerArn() { return this._listenerArn != null; } /// <summary> /// Gets and sets the property Priority. /// <para> /// The rule priority. A listener can't have multiple rules with the same priority. /// </para> /// </summary> [AWSProperty(Required=true, Min=1, Max=50000)] public int Priority { get { return this._priority.GetValueOrDefault(); } set { this._priority = value; } } // Check to see if Priority property is set internal bool IsSetPriority() { return this._priority.HasValue; } /// <summary> /// Gets and sets the property Tags. /// <para> /// The tags to assign to the rule. /// </para> /// </summary> [AWSProperty(Min=1)] public List<Tag> Tags { get { return this._tags; } set { this._tags = value; } } // Check to see if Tags property is set internal bool IsSetTags() { return this._tags != null && this._tags.Count > 0; } } }