/** * 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 Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace IAM { namespace Model { /** *

An object that contains details about when the IAM entities (users or roles) * were last used in an attempt to access the specified AWS service.

This * data type is a response element in the * GetServiceLastAccessedDetailsWithEntities operation.

See * Also:

AWS * API Reference

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

The EntityInfo object that contains details about the entity * (user or role).

*/ inline const EntityInfo& GetEntityInfo() const{ return m_entityInfo; } /** *

The EntityInfo object that contains details about the entity * (user or role).

*/ inline bool EntityInfoHasBeenSet() const { return m_entityInfoHasBeenSet; } /** *

The EntityInfo object that contains details about the entity * (user or role).

*/ inline void SetEntityInfo(const EntityInfo& value) { m_entityInfoHasBeenSet = true; m_entityInfo = value; } /** *

The EntityInfo object that contains details about the entity * (user or role).

*/ inline void SetEntityInfo(EntityInfo&& value) { m_entityInfoHasBeenSet = true; m_entityInfo = std::move(value); } /** *

The EntityInfo object that contains details about the entity * (user or role).

*/ inline EntityDetails& WithEntityInfo(const EntityInfo& value) { SetEntityInfo(value); return *this;} /** *

The EntityInfo object that contains details about the entity * (user or role).

*/ inline EntityDetails& WithEntityInfo(EntityInfo&& value) { SetEntityInfo(std::move(value)); return *this;} /** *

The date and time, in ISO 8601 * date-time format, when the authenticated entity last attempted to access * AWS. AWS does not report unauthenticated requests.

This field is null if * no IAM entities attempted to access the service within the reporting * period.

*/ inline const Aws::Utils::DateTime& GetLastAuthenticated() const{ return m_lastAuthenticated; } /** *

The date and time, in ISO 8601 * date-time format, when the authenticated entity last attempted to access * AWS. AWS does not report unauthenticated requests.

This field is null if * no IAM entities attempted to access the service within the reporting * period.

*/ inline bool LastAuthenticatedHasBeenSet() const { return m_lastAuthenticatedHasBeenSet; } /** *

The date and time, in ISO 8601 * date-time format, when the authenticated entity last attempted to access * AWS. AWS does not report unauthenticated requests.

This field is null if * no IAM entities attempted to access the service within the reporting * period.

*/ inline void SetLastAuthenticated(const Aws::Utils::DateTime& value) { m_lastAuthenticatedHasBeenSet = true; m_lastAuthenticated = value; } /** *

The date and time, in ISO 8601 * date-time format, when the authenticated entity last attempted to access * AWS. AWS does not report unauthenticated requests.

This field is null if * no IAM entities attempted to access the service within the reporting * period.

*/ inline void SetLastAuthenticated(Aws::Utils::DateTime&& value) { m_lastAuthenticatedHasBeenSet = true; m_lastAuthenticated = std::move(value); } /** *

The date and time, in ISO 8601 * date-time format, when the authenticated entity last attempted to access * AWS. AWS does not report unauthenticated requests.

This field is null if * no IAM entities attempted to access the service within the reporting * period.

*/ inline EntityDetails& WithLastAuthenticated(const Aws::Utils::DateTime& value) { SetLastAuthenticated(value); return *this;} /** *

The date and time, in ISO 8601 * date-time format, when the authenticated entity last attempted to access * AWS. AWS does not report unauthenticated requests.

This field is null if * no IAM entities attempted to access the service within the reporting * period.

*/ inline EntityDetails& WithLastAuthenticated(Aws::Utils::DateTime&& value) { SetLastAuthenticated(std::move(value)); return *this;} private: EntityInfo m_entityInfo; bool m_entityInfoHasBeenSet; Aws::Utils::DateTime m_lastAuthenticated; bool m_lastAuthenticatedHasBeenSet; }; } // namespace Model } // namespace IAM } // namespace Aws