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

Determines the interval after which an AppInstanceUser is * automatically deleted.

See Also:

AWS * API Reference

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

The period in days after which an AppInstanceUser will be * automatically deleted.

*/ inline int GetExpirationDays() const{ return m_expirationDays; } /** *

The period in days after which an AppInstanceUser will be * automatically deleted.

*/ inline bool ExpirationDaysHasBeenSet() const { return m_expirationDaysHasBeenSet; } /** *

The period in days after which an AppInstanceUser will be * automatically deleted.

*/ inline void SetExpirationDays(int value) { m_expirationDaysHasBeenSet = true; m_expirationDays = value; } /** *

The period in days after which an AppInstanceUser will be * automatically deleted.

*/ inline ExpirationSettings& WithExpirationDays(int value) { SetExpirationDays(value); return *this;} /** *

Specifies the conditions under which an AppInstanceUser will * expire.

*/ inline const ExpirationCriterion& GetExpirationCriterion() const{ return m_expirationCriterion; } /** *

Specifies the conditions under which an AppInstanceUser will * expire.

*/ inline bool ExpirationCriterionHasBeenSet() const { return m_expirationCriterionHasBeenSet; } /** *

Specifies the conditions under which an AppInstanceUser will * expire.

*/ inline void SetExpirationCriterion(const ExpirationCriterion& value) { m_expirationCriterionHasBeenSet = true; m_expirationCriterion = value; } /** *

Specifies the conditions under which an AppInstanceUser will * expire.

*/ inline void SetExpirationCriterion(ExpirationCriterion&& value) { m_expirationCriterionHasBeenSet = true; m_expirationCriterion = std::move(value); } /** *

Specifies the conditions under which an AppInstanceUser will * expire.

*/ inline ExpirationSettings& WithExpirationCriterion(const ExpirationCriterion& value) { SetExpirationCriterion(value); return *this;} /** *

Specifies the conditions under which an AppInstanceUser will * expire.

*/ inline ExpirationSettings& WithExpirationCriterion(ExpirationCriterion&& value) { SetExpirationCriterion(std::move(value)); return *this;} private: int m_expirationDays; bool m_expirationDaysHasBeenSet = false; ExpirationCriterion m_expirationCriterion; bool m_expirationCriterionHasBeenSet = false; }; } // namespace Model } // namespace ChimeSDKIdentity } // namespace Aws