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

Contains general information about the LDAPS settings.

See * Also:

AWS * API Reference

*/ class LDAPSSettingInfo { public: AWS_DIRECTORYSERVICE_API LDAPSSettingInfo(); AWS_DIRECTORYSERVICE_API LDAPSSettingInfo(Aws::Utils::Json::JsonView jsonValue); AWS_DIRECTORYSERVICE_API LDAPSSettingInfo& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_DIRECTORYSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The state of the LDAPS settings.

*/ inline const LDAPSStatus& GetLDAPSStatus() const{ return m_lDAPSStatus; } /** *

The state of the LDAPS settings.

*/ inline bool LDAPSStatusHasBeenSet() const { return m_lDAPSStatusHasBeenSet; } /** *

The state of the LDAPS settings.

*/ inline void SetLDAPSStatus(const LDAPSStatus& value) { m_lDAPSStatusHasBeenSet = true; m_lDAPSStatus = value; } /** *

The state of the LDAPS settings.

*/ inline void SetLDAPSStatus(LDAPSStatus&& value) { m_lDAPSStatusHasBeenSet = true; m_lDAPSStatus = std::move(value); } /** *

The state of the LDAPS settings.

*/ inline LDAPSSettingInfo& WithLDAPSStatus(const LDAPSStatus& value) { SetLDAPSStatus(value); return *this;} /** *

The state of the LDAPS settings.

*/ inline LDAPSSettingInfo& WithLDAPSStatus(LDAPSStatus&& value) { SetLDAPSStatus(std::move(value)); return *this;} /** *

Describes a state change for LDAPS.

*/ inline const Aws::String& GetLDAPSStatusReason() const{ return m_lDAPSStatusReason; } /** *

Describes a state change for LDAPS.

*/ inline bool LDAPSStatusReasonHasBeenSet() const { return m_lDAPSStatusReasonHasBeenSet; } /** *

Describes a state change for LDAPS.

*/ inline void SetLDAPSStatusReason(const Aws::String& value) { m_lDAPSStatusReasonHasBeenSet = true; m_lDAPSStatusReason = value; } /** *

Describes a state change for LDAPS.

*/ inline void SetLDAPSStatusReason(Aws::String&& value) { m_lDAPSStatusReasonHasBeenSet = true; m_lDAPSStatusReason = std::move(value); } /** *

Describes a state change for LDAPS.

*/ inline void SetLDAPSStatusReason(const char* value) { m_lDAPSStatusReasonHasBeenSet = true; m_lDAPSStatusReason.assign(value); } /** *

Describes a state change for LDAPS.

*/ inline LDAPSSettingInfo& WithLDAPSStatusReason(const Aws::String& value) { SetLDAPSStatusReason(value); return *this;} /** *

Describes a state change for LDAPS.

*/ inline LDAPSSettingInfo& WithLDAPSStatusReason(Aws::String&& value) { SetLDAPSStatusReason(std::move(value)); return *this;} /** *

Describes a state change for LDAPS.

*/ inline LDAPSSettingInfo& WithLDAPSStatusReason(const char* value) { SetLDAPSStatusReason(value); return *this;} /** *

The date and time when the LDAPS settings were last updated.

*/ inline const Aws::Utils::DateTime& GetLastUpdatedDateTime() const{ return m_lastUpdatedDateTime; } /** *

The date and time when the LDAPS settings were last updated.

*/ inline bool LastUpdatedDateTimeHasBeenSet() const { return m_lastUpdatedDateTimeHasBeenSet; } /** *

The date and time when the LDAPS settings were last updated.

*/ inline void SetLastUpdatedDateTime(const Aws::Utils::DateTime& value) { m_lastUpdatedDateTimeHasBeenSet = true; m_lastUpdatedDateTime = value; } /** *

The date and time when the LDAPS settings were last updated.

*/ inline void SetLastUpdatedDateTime(Aws::Utils::DateTime&& value) { m_lastUpdatedDateTimeHasBeenSet = true; m_lastUpdatedDateTime = std::move(value); } /** *

The date and time when the LDAPS settings were last updated.

*/ inline LDAPSSettingInfo& WithLastUpdatedDateTime(const Aws::Utils::DateTime& value) { SetLastUpdatedDateTime(value); return *this;} /** *

The date and time when the LDAPS settings were last updated.

*/ inline LDAPSSettingInfo& WithLastUpdatedDateTime(Aws::Utils::DateTime&& value) { SetLastUpdatedDateTime(std::move(value)); return *this;} private: LDAPSStatus m_lDAPSStatus; bool m_lDAPSStatusHasBeenSet = false; Aws::String m_lDAPSStatusReason; bool m_lDAPSStatusReasonHasBeenSet = false; Aws::Utils::DateTime m_lastUpdatedDateTime; bool m_lastUpdatedDateTimeHasBeenSet = false; }; } // namespace Model } // namespace DirectoryService } // namespace Aws