/** * 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 ChimeSDKIdentity { namespace Model { /** *

The details of an AppInstanceUser.

See Also:

AWS * API Reference

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

The ARN of the AppInstanceUser.

*/ inline const Aws::String& GetAppInstanceUserArn() const{ return m_appInstanceUserArn; } /** *

The ARN of the AppInstanceUser.

*/ inline bool AppInstanceUserArnHasBeenSet() const { return m_appInstanceUserArnHasBeenSet; } /** *

The ARN of the AppInstanceUser.

*/ inline void SetAppInstanceUserArn(const Aws::String& value) { m_appInstanceUserArnHasBeenSet = true; m_appInstanceUserArn = value; } /** *

The ARN of the AppInstanceUser.

*/ inline void SetAppInstanceUserArn(Aws::String&& value) { m_appInstanceUserArnHasBeenSet = true; m_appInstanceUserArn = std::move(value); } /** *

The ARN of the AppInstanceUser.

*/ inline void SetAppInstanceUserArn(const char* value) { m_appInstanceUserArnHasBeenSet = true; m_appInstanceUserArn.assign(value); } /** *

The ARN of the AppInstanceUser.

*/ inline AppInstanceUser& WithAppInstanceUserArn(const Aws::String& value) { SetAppInstanceUserArn(value); return *this;} /** *

The ARN of the AppInstanceUser.

*/ inline AppInstanceUser& WithAppInstanceUserArn(Aws::String&& value) { SetAppInstanceUserArn(std::move(value)); return *this;} /** *

The ARN of the AppInstanceUser.

*/ inline AppInstanceUser& WithAppInstanceUserArn(const char* value) { SetAppInstanceUserArn(value); return *this;} /** *

The name of the AppInstanceUser.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the AppInstanceUser.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the AppInstanceUser.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The name of the AppInstanceUser.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The name of the AppInstanceUser.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The name of the AppInstanceUser.

*/ inline AppInstanceUser& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the AppInstanceUser.

*/ inline AppInstanceUser& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the AppInstanceUser.

*/ inline AppInstanceUser& WithName(const char* value) { SetName(value); return *this;} /** *

The metadata of the AppInstanceUser.

*/ inline const Aws::String& GetMetadata() const{ return m_metadata; } /** *

The metadata of the AppInstanceUser.

*/ inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; } /** *

The metadata of the AppInstanceUser.

*/ inline void SetMetadata(const Aws::String& value) { m_metadataHasBeenSet = true; m_metadata = value; } /** *

The metadata of the AppInstanceUser.

*/ inline void SetMetadata(Aws::String&& value) { m_metadataHasBeenSet = true; m_metadata = std::move(value); } /** *

The metadata of the AppInstanceUser.

*/ inline void SetMetadata(const char* value) { m_metadataHasBeenSet = true; m_metadata.assign(value); } /** *

The metadata of the AppInstanceUser.

*/ inline AppInstanceUser& WithMetadata(const Aws::String& value) { SetMetadata(value); return *this;} /** *

The metadata of the AppInstanceUser.

*/ inline AppInstanceUser& WithMetadata(Aws::String&& value) { SetMetadata(std::move(value)); return *this;} /** *

The metadata of the AppInstanceUser.

*/ inline AppInstanceUser& WithMetadata(const char* value) { SetMetadata(value); return *this;} /** *

The time at which the AppInstanceUser was created.

*/ inline const Aws::Utils::DateTime& GetCreatedTimestamp() const{ return m_createdTimestamp; } /** *

The time at which the AppInstanceUser was created.

*/ inline bool CreatedTimestampHasBeenSet() const { return m_createdTimestampHasBeenSet; } /** *

The time at which the AppInstanceUser was created.

*/ inline void SetCreatedTimestamp(const Aws::Utils::DateTime& value) { m_createdTimestampHasBeenSet = true; m_createdTimestamp = value; } /** *

The time at which the AppInstanceUser was created.

*/ inline void SetCreatedTimestamp(Aws::Utils::DateTime&& value) { m_createdTimestampHasBeenSet = true; m_createdTimestamp = std::move(value); } /** *

The time at which the AppInstanceUser was created.

*/ inline AppInstanceUser& WithCreatedTimestamp(const Aws::Utils::DateTime& value) { SetCreatedTimestamp(value); return *this;} /** *

The time at which the AppInstanceUser was created.

*/ inline AppInstanceUser& WithCreatedTimestamp(Aws::Utils::DateTime&& value) { SetCreatedTimestamp(std::move(value)); return *this;} /** *

The time at which the AppInstanceUser was last updated.

*/ inline const Aws::Utils::DateTime& GetLastUpdatedTimestamp() const{ return m_lastUpdatedTimestamp; } /** *

The time at which the AppInstanceUser was last updated.

*/ inline bool LastUpdatedTimestampHasBeenSet() const { return m_lastUpdatedTimestampHasBeenSet; } /** *

The time at which the AppInstanceUser was last updated.

*/ inline void SetLastUpdatedTimestamp(const Aws::Utils::DateTime& value) { m_lastUpdatedTimestampHasBeenSet = true; m_lastUpdatedTimestamp = value; } /** *

The time at which the AppInstanceUser was last updated.

*/ inline void SetLastUpdatedTimestamp(Aws::Utils::DateTime&& value) { m_lastUpdatedTimestampHasBeenSet = true; m_lastUpdatedTimestamp = std::move(value); } /** *

The time at which the AppInstanceUser was last updated.

*/ inline AppInstanceUser& WithLastUpdatedTimestamp(const Aws::Utils::DateTime& value) { SetLastUpdatedTimestamp(value); return *this;} /** *

The time at which the AppInstanceUser was last updated.

*/ inline AppInstanceUser& WithLastUpdatedTimestamp(Aws::Utils::DateTime&& value) { SetLastUpdatedTimestamp(std::move(value)); return *this;} /** *

The interval after which an AppInstanceUser is automatically * deleted.

*/ inline const ExpirationSettings& GetExpirationSettings() const{ return m_expirationSettings; } /** *

The interval after which an AppInstanceUser is automatically * deleted.

*/ inline bool ExpirationSettingsHasBeenSet() const { return m_expirationSettingsHasBeenSet; } /** *

The interval after which an AppInstanceUser is automatically * deleted.

*/ inline void SetExpirationSettings(const ExpirationSettings& value) { m_expirationSettingsHasBeenSet = true; m_expirationSettings = value; } /** *

The interval after which an AppInstanceUser is automatically * deleted.

*/ inline void SetExpirationSettings(ExpirationSettings&& value) { m_expirationSettingsHasBeenSet = true; m_expirationSettings = std::move(value); } /** *

The interval after which an AppInstanceUser is automatically * deleted.

*/ inline AppInstanceUser& WithExpirationSettings(const ExpirationSettings& value) { SetExpirationSettings(value); return *this;} /** *

The interval after which an AppInstanceUser is automatically * deleted.

*/ inline AppInstanceUser& WithExpirationSettings(ExpirationSettings&& value) { SetExpirationSettings(std::move(value)); return *this;} private: Aws::String m_appInstanceUserArn; bool m_appInstanceUserArnHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_metadata; bool m_metadataHasBeenSet = false; Aws::Utils::DateTime m_createdTimestamp; bool m_createdTimestampHasBeenSet = false; Aws::Utils::DateTime m_lastUpdatedTimestamp; bool m_lastUpdatedTimestampHasBeenSet = false; ExpirationSettings m_expirationSettings; bool m_expirationSettingsHasBeenSet = false; }; } // namespace Model } // namespace ChimeSDKIdentity } // namespace Aws