/*
* 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 elasticloadbalancing-2012-06-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.ElasticLoadBalancing.Model
{
///
/// Container for the parameters to the CreateAppCookieStickinessPolicy operation.
/// Generates a stickiness policy with sticky session lifetimes that follow that of an
/// application-generated cookie. This policy can be associated only with HTTP/HTTPS listeners.
///
///
///
/// This policy is similar to the policy created by CreateLBCookieStickinessPolicy,
/// except that the lifetime of the special Elastic Load Balancing cookie, AWSELB
,
/// follows the lifetime of the application-generated cookie specified in the policy configuration.
/// The load balancer only inserts a new stickiness cookie when the application response
/// includes a new application cookie.
///
///
///
/// If the application cookie is explicitly removed or expires, the session stops being
/// sticky until a new application cookie is issued.
///
///
///
/// For more information, see Application-Controlled
/// Session Stickiness in the Classic Load Balancers Guide.
///
///
public partial class CreateAppCookieStickinessPolicyRequest : AmazonElasticLoadBalancingRequest
{
private string _cookieName;
private string _loadBalancerName;
private string _policyName;
///
/// Empty constructor used to set properties independently even when a simple constructor is available
///
public CreateAppCookieStickinessPolicyRequest() { }
///
/// Instantiates CreateAppCookieStickinessPolicyRequest with the parameterized properties
///
/// The name of the load balancer.
/// The name of the policy being created. Policy names must consist of alphanumeric characters and dashes (-). This name must be unique within the set of policies for this load balancer.
/// The name of the application cookie used for stickiness.
public CreateAppCookieStickinessPolicyRequest(string loadBalancerName, string policyName, string cookieName)
{
_loadBalancerName = loadBalancerName;
_policyName = policyName;
_cookieName = cookieName;
}
///
/// Gets and sets the property CookieName.
///
/// The name of the application cookie used for stickiness.
///
///
[AWSProperty(Required=true)]
public string CookieName
{
get { return this._cookieName; }
set { this._cookieName = value; }
}
// Check to see if CookieName property is set
internal bool IsSetCookieName()
{
return this._cookieName != null;
}
///
/// Gets and sets the property LoadBalancerName.
///
/// The name of the load balancer.
///
///
[AWSProperty(Required=true)]
public string LoadBalancerName
{
get { return this._loadBalancerName; }
set { this._loadBalancerName = value; }
}
// Check to see if LoadBalancerName property is set
internal bool IsSetLoadBalancerName()
{
return this._loadBalancerName != null;
}
///
/// Gets and sets the property PolicyName.
///
/// The name of the policy being created. Policy names must consist of alphanumeric characters
/// and dashes (-). This name must be unique within the set of policies for this load
/// balancer.
///
///
[AWSProperty(Required=true)]
public string PolicyName
{
get { return this._policyName; }
set { this._policyName = value; }
}
// Check to see if PolicyName property is set
internal bool IsSetPolicyName()
{
return this._policyName != null;
}
}
}