/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace ElasticLoadBalancing { namespace Model { /** *

The policies for a load balancer.

See Also:

AWS * API Reference

*/ class Policies { public: AWS_ELASTICLOADBALANCING_API Policies(); AWS_ELASTICLOADBALANCING_API Policies(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_ELASTICLOADBALANCING_API Policies& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_ELASTICLOADBALANCING_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; AWS_ELASTICLOADBALANCING_API void OutputToStream(Aws::OStream& oStream, const char* location) const; /** *

The stickiness policies created using * CreateAppCookieStickinessPolicy.

*/ inline const Aws::Vector& GetAppCookieStickinessPolicies() const{ return m_appCookieStickinessPolicies; } /** *

The stickiness policies created using * CreateAppCookieStickinessPolicy.

*/ inline bool AppCookieStickinessPoliciesHasBeenSet() const { return m_appCookieStickinessPoliciesHasBeenSet; } /** *

The stickiness policies created using * CreateAppCookieStickinessPolicy.

*/ inline void SetAppCookieStickinessPolicies(const Aws::Vector& value) { m_appCookieStickinessPoliciesHasBeenSet = true; m_appCookieStickinessPolicies = value; } /** *

The stickiness policies created using * CreateAppCookieStickinessPolicy.

*/ inline void SetAppCookieStickinessPolicies(Aws::Vector&& value) { m_appCookieStickinessPoliciesHasBeenSet = true; m_appCookieStickinessPolicies = std::move(value); } /** *

The stickiness policies created using * CreateAppCookieStickinessPolicy.

*/ inline Policies& WithAppCookieStickinessPolicies(const Aws::Vector& value) { SetAppCookieStickinessPolicies(value); return *this;} /** *

The stickiness policies created using * CreateAppCookieStickinessPolicy.

*/ inline Policies& WithAppCookieStickinessPolicies(Aws::Vector&& value) { SetAppCookieStickinessPolicies(std::move(value)); return *this;} /** *

The stickiness policies created using * CreateAppCookieStickinessPolicy.

*/ inline Policies& AddAppCookieStickinessPolicies(const AppCookieStickinessPolicy& value) { m_appCookieStickinessPoliciesHasBeenSet = true; m_appCookieStickinessPolicies.push_back(value); return *this; } /** *

The stickiness policies created using * CreateAppCookieStickinessPolicy.

*/ inline Policies& AddAppCookieStickinessPolicies(AppCookieStickinessPolicy&& value) { m_appCookieStickinessPoliciesHasBeenSet = true; m_appCookieStickinessPolicies.push_back(std::move(value)); return *this; } /** *

The stickiness policies created using * CreateLBCookieStickinessPolicy.

*/ inline const Aws::Vector& GetLBCookieStickinessPolicies() const{ return m_lBCookieStickinessPolicies; } /** *

The stickiness policies created using * CreateLBCookieStickinessPolicy.

*/ inline bool LBCookieStickinessPoliciesHasBeenSet() const { return m_lBCookieStickinessPoliciesHasBeenSet; } /** *

The stickiness policies created using * CreateLBCookieStickinessPolicy.

*/ inline void SetLBCookieStickinessPolicies(const Aws::Vector& value) { m_lBCookieStickinessPoliciesHasBeenSet = true; m_lBCookieStickinessPolicies = value; } /** *

The stickiness policies created using * CreateLBCookieStickinessPolicy.

*/ inline void SetLBCookieStickinessPolicies(Aws::Vector&& value) { m_lBCookieStickinessPoliciesHasBeenSet = true; m_lBCookieStickinessPolicies = std::move(value); } /** *

The stickiness policies created using * CreateLBCookieStickinessPolicy.

*/ inline Policies& WithLBCookieStickinessPolicies(const Aws::Vector& value) { SetLBCookieStickinessPolicies(value); return *this;} /** *

The stickiness policies created using * CreateLBCookieStickinessPolicy.

*/ inline Policies& WithLBCookieStickinessPolicies(Aws::Vector&& value) { SetLBCookieStickinessPolicies(std::move(value)); return *this;} /** *

The stickiness policies created using * CreateLBCookieStickinessPolicy.

*/ inline Policies& AddLBCookieStickinessPolicies(const LBCookieStickinessPolicy& value) { m_lBCookieStickinessPoliciesHasBeenSet = true; m_lBCookieStickinessPolicies.push_back(value); return *this; } /** *

The stickiness policies created using * CreateLBCookieStickinessPolicy.

*/ inline Policies& AddLBCookieStickinessPolicies(LBCookieStickinessPolicy&& value) { m_lBCookieStickinessPoliciesHasBeenSet = true; m_lBCookieStickinessPolicies.push_back(std::move(value)); return *this; } /** *

The policies other than the stickiness policies.

*/ inline const Aws::Vector& GetOtherPolicies() const{ return m_otherPolicies; } /** *

The policies other than the stickiness policies.

*/ inline bool OtherPoliciesHasBeenSet() const { return m_otherPoliciesHasBeenSet; } /** *

The policies other than the stickiness policies.

*/ inline void SetOtherPolicies(const Aws::Vector& value) { m_otherPoliciesHasBeenSet = true; m_otherPolicies = value; } /** *

The policies other than the stickiness policies.

*/ inline void SetOtherPolicies(Aws::Vector&& value) { m_otherPoliciesHasBeenSet = true; m_otherPolicies = std::move(value); } /** *

The policies other than the stickiness policies.

*/ inline Policies& WithOtherPolicies(const Aws::Vector& value) { SetOtherPolicies(value); return *this;} /** *

The policies other than the stickiness policies.

*/ inline Policies& WithOtherPolicies(Aws::Vector&& value) { SetOtherPolicies(std::move(value)); return *this;} /** *

The policies other than the stickiness policies.

*/ inline Policies& AddOtherPolicies(const Aws::String& value) { m_otherPoliciesHasBeenSet = true; m_otherPolicies.push_back(value); return *this; } /** *

The policies other than the stickiness policies.

*/ inline Policies& AddOtherPolicies(Aws::String&& value) { m_otherPoliciesHasBeenSet = true; m_otherPolicies.push_back(std::move(value)); return *this; } /** *

The policies other than the stickiness policies.

*/ inline Policies& AddOtherPolicies(const char* value) { m_otherPoliciesHasBeenSet = true; m_otherPolicies.push_back(value); return *this; } private: Aws::Vector m_appCookieStickinessPolicies; bool m_appCookieStickinessPoliciesHasBeenSet = false; Aws::Vector m_lBCookieStickinessPolicies; bool m_lBCookieStickinessPoliciesHasBeenSet = false; Aws::Vector m_otherPolicies; bool m_otherPoliciesHasBeenSet = false; }; } // namespace Model } // namespace ElasticLoadBalancing } // namespace Aws