/** * 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 { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace AuditManager { namespace Model { /** *

The record of a change within Audit Manager. For example, this could be the * status change of an assessment or the delegation of a control set. *

See Also:

AWS * API Reference

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

The object that was changed, such as an assessment, control, or control set. *

*/ inline const ObjectTypeEnum& GetObjectType() const{ return m_objectType; } /** *

The object that was changed, such as an assessment, control, or control set. *

*/ inline bool ObjectTypeHasBeenSet() const { return m_objectTypeHasBeenSet; } /** *

The object that was changed, such as an assessment, control, or control set. *

*/ inline void SetObjectType(const ObjectTypeEnum& value) { m_objectTypeHasBeenSet = true; m_objectType = value; } /** *

The object that was changed, such as an assessment, control, or control set. *

*/ inline void SetObjectType(ObjectTypeEnum&& value) { m_objectTypeHasBeenSet = true; m_objectType = std::move(value); } /** *

The object that was changed, such as an assessment, control, or control set. *

*/ inline ChangeLog& WithObjectType(const ObjectTypeEnum& value) { SetObjectType(value); return *this;} /** *

The object that was changed, such as an assessment, control, or control set. *

*/ inline ChangeLog& WithObjectType(ObjectTypeEnum&& value) { SetObjectType(std::move(value)); return *this;} /** *

The name of the object that changed. This could be the name of an * assessment, control, or control set.

*/ inline const Aws::String& GetObjectName() const{ return m_objectName; } /** *

The name of the object that changed. This could be the name of an * assessment, control, or control set.

*/ inline bool ObjectNameHasBeenSet() const { return m_objectNameHasBeenSet; } /** *

The name of the object that changed. This could be the name of an * assessment, control, or control set.

*/ inline void SetObjectName(const Aws::String& value) { m_objectNameHasBeenSet = true; m_objectName = value; } /** *

The name of the object that changed. This could be the name of an * assessment, control, or control set.

*/ inline void SetObjectName(Aws::String&& value) { m_objectNameHasBeenSet = true; m_objectName = std::move(value); } /** *

The name of the object that changed. This could be the name of an * assessment, control, or control set.

*/ inline void SetObjectName(const char* value) { m_objectNameHasBeenSet = true; m_objectName.assign(value); } /** *

The name of the object that changed. This could be the name of an * assessment, control, or control set.

*/ inline ChangeLog& WithObjectName(const Aws::String& value) { SetObjectName(value); return *this;} /** *

The name of the object that changed. This could be the name of an * assessment, control, or control set.

*/ inline ChangeLog& WithObjectName(Aws::String&& value) { SetObjectName(std::move(value)); return *this;} /** *

The name of the object that changed. This could be the name of an * assessment, control, or control set.

*/ inline ChangeLog& WithObjectName(const char* value) { SetObjectName(value); return *this;} /** *

The action that was performed.

*/ inline const ActionEnum& GetAction() const{ return m_action; } /** *

The action that was performed.

*/ inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; } /** *

The action that was performed.

*/ inline void SetAction(const ActionEnum& value) { m_actionHasBeenSet = true; m_action = value; } /** *

The action that was performed.

*/ inline void SetAction(ActionEnum&& value) { m_actionHasBeenSet = true; m_action = std::move(value); } /** *

The action that was performed.

*/ inline ChangeLog& WithAction(const ActionEnum& value) { SetAction(value); return *this;} /** *

The action that was performed.

*/ inline ChangeLog& WithAction(ActionEnum&& value) { SetAction(std::move(value)); return *this;} /** *

The time when the action was performed and the changelog record was created. *

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

The time when the action was performed and the changelog record was created. *

*/ inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } /** *

The time when the action was performed and the changelog record was created. *

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

The time when the action was performed and the changelog record was created. *

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

The time when the action was performed and the changelog record was created. *

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

The time when the action was performed and the changelog record was created. *

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

The user or role that performed the action.

*/ inline const Aws::String& GetCreatedBy() const{ return m_createdBy; } /** *

The user or role that performed the action.

*/ inline bool CreatedByHasBeenSet() const { return m_createdByHasBeenSet; } /** *

The user or role that performed the action.

*/ inline void SetCreatedBy(const Aws::String& value) { m_createdByHasBeenSet = true; m_createdBy = value; } /** *

The user or role that performed the action.

*/ inline void SetCreatedBy(Aws::String&& value) { m_createdByHasBeenSet = true; m_createdBy = std::move(value); } /** *

The user or role that performed the action.

*/ inline void SetCreatedBy(const char* value) { m_createdByHasBeenSet = true; m_createdBy.assign(value); } /** *

The user or role that performed the action.

*/ inline ChangeLog& WithCreatedBy(const Aws::String& value) { SetCreatedBy(value); return *this;} /** *

The user or role that performed the action.

*/ inline ChangeLog& WithCreatedBy(Aws::String&& value) { SetCreatedBy(std::move(value)); return *this;} /** *

The user or role that performed the action.

*/ inline ChangeLog& WithCreatedBy(const char* value) { SetCreatedBy(value); return *this;} private: ObjectTypeEnum m_objectType; bool m_objectTypeHasBeenSet = false; Aws::String m_objectName; bool m_objectNameHasBeenSet = false; ActionEnum m_action; bool m_actionHasBeenSet = false; Aws::Utils::DateTime m_createdAt; bool m_createdAtHasBeenSet = false; Aws::String m_createdBy; bool m_createdByHasBeenSet = false; }; } // namespace Model } // namespace AuditManager } // namespace Aws