/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace Macie2 { namespace Model { class GetMacieSessionResult { public: AWS_MACIE2_API GetMacieSessionResult(); AWS_MACIE2_API GetMacieSessionResult(const Aws::AmazonWebServiceResult& result); AWS_MACIE2_API GetMacieSessionResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The date and time, in UTC and extended ISO 8601 format, when the Amazon Macie * account was created.

*/ inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } /** *

The date and time, in UTC and extended ISO 8601 format, when the Amazon Macie * account was created.

*/ inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAt = value; } /** *

The date and time, in UTC and extended ISO 8601 format, when the Amazon Macie * account was created.

*/ inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAt = std::move(value); } /** *

The date and time, in UTC and extended ISO 8601 format, when the Amazon Macie * account was created.

*/ inline GetMacieSessionResult& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} /** *

The date and time, in UTC and extended ISO 8601 format, when the Amazon Macie * account was created.

*/ inline GetMacieSessionResult& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *

The frequency with which Amazon Macie publishes updates to policy findings * for the account. This includes publishing updates to Security Hub and Amazon * EventBridge (formerly Amazon CloudWatch Events).

*/ inline const FindingPublishingFrequency& GetFindingPublishingFrequency() const{ return m_findingPublishingFrequency; } /** *

The frequency with which Amazon Macie publishes updates to policy findings * for the account. This includes publishing updates to Security Hub and Amazon * EventBridge (formerly Amazon CloudWatch Events).

*/ inline void SetFindingPublishingFrequency(const FindingPublishingFrequency& value) { m_findingPublishingFrequency = value; } /** *

The frequency with which Amazon Macie publishes updates to policy findings * for the account. This includes publishing updates to Security Hub and Amazon * EventBridge (formerly Amazon CloudWatch Events).

*/ inline void SetFindingPublishingFrequency(FindingPublishingFrequency&& value) { m_findingPublishingFrequency = std::move(value); } /** *

The frequency with which Amazon Macie publishes updates to policy findings * for the account. This includes publishing updates to Security Hub and Amazon * EventBridge (formerly Amazon CloudWatch Events).

*/ inline GetMacieSessionResult& WithFindingPublishingFrequency(const FindingPublishingFrequency& value) { SetFindingPublishingFrequency(value); return *this;} /** *

The frequency with which Amazon Macie publishes updates to policy findings * for the account. This includes publishing updates to Security Hub and Amazon * EventBridge (formerly Amazon CloudWatch Events).

*/ inline GetMacieSessionResult& WithFindingPublishingFrequency(FindingPublishingFrequency&& value) { SetFindingPublishingFrequency(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the service-linked role that allows Amazon * Macie to monitor and analyze data in Amazon Web Services resources for the * account.

*/ inline const Aws::String& GetServiceRole() const{ return m_serviceRole; } /** *

The Amazon Resource Name (ARN) of the service-linked role that allows Amazon * Macie to monitor and analyze data in Amazon Web Services resources for the * account.

*/ inline void SetServiceRole(const Aws::String& value) { m_serviceRole = value; } /** *

The Amazon Resource Name (ARN) of the service-linked role that allows Amazon * Macie to monitor and analyze data in Amazon Web Services resources for the * account.

*/ inline void SetServiceRole(Aws::String&& value) { m_serviceRole = std::move(value); } /** *

The Amazon Resource Name (ARN) of the service-linked role that allows Amazon * Macie to monitor and analyze data in Amazon Web Services resources for the * account.

*/ inline void SetServiceRole(const char* value) { m_serviceRole.assign(value); } /** *

The Amazon Resource Name (ARN) of the service-linked role that allows Amazon * Macie to monitor and analyze data in Amazon Web Services resources for the * account.

*/ inline GetMacieSessionResult& WithServiceRole(const Aws::String& value) { SetServiceRole(value); return *this;} /** *

The Amazon Resource Name (ARN) of the service-linked role that allows Amazon * Macie to monitor and analyze data in Amazon Web Services resources for the * account.

*/ inline GetMacieSessionResult& WithServiceRole(Aws::String&& value) { SetServiceRole(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the service-linked role that allows Amazon * Macie to monitor and analyze data in Amazon Web Services resources for the * account.

*/ inline GetMacieSessionResult& WithServiceRole(const char* value) { SetServiceRole(value); return *this;} /** *

The current status of the Amazon Macie account. Possible values are: PAUSED, * the account is enabled but all Macie activities are suspended (paused) for the * account; and, ENABLED, the account is enabled and all Macie activities are * enabled for the account.

*/ inline const MacieStatus& GetStatus() const{ return m_status; } /** *

The current status of the Amazon Macie account. Possible values are: PAUSED, * the account is enabled but all Macie activities are suspended (paused) for the * account; and, ENABLED, the account is enabled and all Macie activities are * enabled for the account.

*/ inline void SetStatus(const MacieStatus& value) { m_status = value; } /** *

The current status of the Amazon Macie account. Possible values are: PAUSED, * the account is enabled but all Macie activities are suspended (paused) for the * account; and, ENABLED, the account is enabled and all Macie activities are * enabled for the account.

*/ inline void SetStatus(MacieStatus&& value) { m_status = std::move(value); } /** *

The current status of the Amazon Macie account. Possible values are: PAUSED, * the account is enabled but all Macie activities are suspended (paused) for the * account; and, ENABLED, the account is enabled and all Macie activities are * enabled for the account.

*/ inline GetMacieSessionResult& WithStatus(const MacieStatus& value) { SetStatus(value); return *this;} /** *

The current status of the Amazon Macie account. Possible values are: PAUSED, * the account is enabled but all Macie activities are suspended (paused) for the * account; and, ENABLED, the account is enabled and all Macie activities are * enabled for the account.

*/ inline GetMacieSessionResult& WithStatus(MacieStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

The date and time, in UTC and extended ISO 8601 format, of the most recent * change to the status of the Amazon Macie account.

*/ inline const Aws::Utils::DateTime& GetUpdatedAt() const{ return m_updatedAt; } /** *

The date and time, in UTC and extended ISO 8601 format, of the most recent * change to the status of the Amazon Macie account.

*/ inline void SetUpdatedAt(const Aws::Utils::DateTime& value) { m_updatedAt = value; } /** *

The date and time, in UTC and extended ISO 8601 format, of the most recent * change to the status of the Amazon Macie account.

*/ inline void SetUpdatedAt(Aws::Utils::DateTime&& value) { m_updatedAt = std::move(value); } /** *

The date and time, in UTC and extended ISO 8601 format, of the most recent * change to the status of the Amazon Macie account.

*/ inline GetMacieSessionResult& WithUpdatedAt(const Aws::Utils::DateTime& value) { SetUpdatedAt(value); return *this;} /** *

The date and time, in UTC and extended ISO 8601 format, of the most recent * change to the status of the Amazon Macie account.

*/ inline GetMacieSessionResult& WithUpdatedAt(Aws::Utils::DateTime&& value) { SetUpdatedAt(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline GetMacieSessionResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetMacieSessionResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetMacieSessionResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::Utils::DateTime m_createdAt; FindingPublishingFrequency m_findingPublishingFrequency; Aws::String m_serviceRole; MacieStatus m_status; Aws::Utils::DateTime m_updatedAt; Aws::String m_requestId; }; } // namespace Model } // namespace Macie2 } // namespace Aws