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

The domain's endpoint options.

See Also:

AWS * API Reference

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

Whether the domain is HTTPS only enabled.

*/ inline bool GetEnforceHTTPS() const{ return m_enforceHTTPS; } /** *

Whether the domain is HTTPS only enabled.

*/ inline bool EnforceHTTPSHasBeenSet() const { return m_enforceHTTPSHasBeenSet; } /** *

Whether the domain is HTTPS only enabled.

*/ inline void SetEnforceHTTPS(bool value) { m_enforceHTTPSHasBeenSet = true; m_enforceHTTPS = value; } /** *

Whether the domain is HTTPS only enabled.

*/ inline DomainEndpointOptions& WithEnforceHTTPS(bool value) { SetEnforceHTTPS(value); return *this;} /** *

The minimum required TLS version

*/ inline const TLSSecurityPolicy& GetTLSSecurityPolicy() const{ return m_tLSSecurityPolicy; } /** *

The minimum required TLS version

*/ inline bool TLSSecurityPolicyHasBeenSet() const { return m_tLSSecurityPolicyHasBeenSet; } /** *

The minimum required TLS version

*/ inline void SetTLSSecurityPolicy(const TLSSecurityPolicy& value) { m_tLSSecurityPolicyHasBeenSet = true; m_tLSSecurityPolicy = value; } /** *

The minimum required TLS version

*/ inline void SetTLSSecurityPolicy(TLSSecurityPolicy&& value) { m_tLSSecurityPolicyHasBeenSet = true; m_tLSSecurityPolicy = std::move(value); } /** *

The minimum required TLS version

*/ inline DomainEndpointOptions& WithTLSSecurityPolicy(const TLSSecurityPolicy& value) { SetTLSSecurityPolicy(value); return *this;} /** *

The minimum required TLS version

*/ inline DomainEndpointOptions& WithTLSSecurityPolicy(TLSSecurityPolicy&& value) { SetTLSSecurityPolicy(std::move(value)); return *this;} private: bool m_enforceHTTPS; bool m_enforceHTTPSHasBeenSet = false; TLSSecurityPolicy m_tLSSecurityPolicy; bool m_tLSSecurityPolicyHasBeenSet = false; }; } // namespace Model } // namespace CloudSearch } // namespace Aws