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

A structure that represents the background work that RAM performs when you * invoke the ReplacePermissionAssociations operation.

See * Also:

AWS * API Reference

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

The unique identifier for the background task associated with one * ReplacePermissionAssociations request.

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

The unique identifier for the background task associated with one * ReplacePermissionAssociations request.

*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *

The unique identifier for the background task associated with one * ReplacePermissionAssociations request.

*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *

The unique identifier for the background task associated with one * ReplacePermissionAssociations request.

*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *

The unique identifier for the background task associated with one * ReplacePermissionAssociations request.

*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *

The unique identifier for the background task associated with one * ReplacePermissionAssociations request.

*/ inline ReplacePermissionAssociationsWork& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

The unique identifier for the background task associated with one * ReplacePermissionAssociations request.

*/ inline ReplacePermissionAssociationsWork& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

The unique identifier for the background task associated with one * ReplacePermissionAssociations request.

*/ inline ReplacePermissionAssociationsWork& WithId(const char* value) { SetId(value); return *this;} /** *

The Amazon * Resource Name (ARN) of the managed permission that this background task is * replacing.

*/ inline const Aws::String& GetFromPermissionArn() const{ return m_fromPermissionArn; } /** *

The Amazon * Resource Name (ARN) of the managed permission that this background task is * replacing.

*/ inline bool FromPermissionArnHasBeenSet() const { return m_fromPermissionArnHasBeenSet; } /** *

The Amazon * Resource Name (ARN) of the managed permission that this background task is * replacing.

*/ inline void SetFromPermissionArn(const Aws::String& value) { m_fromPermissionArnHasBeenSet = true; m_fromPermissionArn = value; } /** *

The Amazon * Resource Name (ARN) of the managed permission that this background task is * replacing.

*/ inline void SetFromPermissionArn(Aws::String&& value) { m_fromPermissionArnHasBeenSet = true; m_fromPermissionArn = std::move(value); } /** *

The Amazon * Resource Name (ARN) of the managed permission that this background task is * replacing.

*/ inline void SetFromPermissionArn(const char* value) { m_fromPermissionArnHasBeenSet = true; m_fromPermissionArn.assign(value); } /** *

The Amazon * Resource Name (ARN) of the managed permission that this background task is * replacing.

*/ inline ReplacePermissionAssociationsWork& WithFromPermissionArn(const Aws::String& value) { SetFromPermissionArn(value); return *this;} /** *

The Amazon * Resource Name (ARN) of the managed permission that this background task is * replacing.

*/ inline ReplacePermissionAssociationsWork& WithFromPermissionArn(Aws::String&& value) { SetFromPermissionArn(std::move(value)); return *this;} /** *

The Amazon * Resource Name (ARN) of the managed permission that this background task is * replacing.

*/ inline ReplacePermissionAssociationsWork& WithFromPermissionArn(const char* value) { SetFromPermissionArn(value); return *this;} /** *

The version of the managed permission that this background task is * replacing.

*/ inline const Aws::String& GetFromPermissionVersion() const{ return m_fromPermissionVersion; } /** *

The version of the managed permission that this background task is * replacing.

*/ inline bool FromPermissionVersionHasBeenSet() const { return m_fromPermissionVersionHasBeenSet; } /** *

The version of the managed permission that this background task is * replacing.

*/ inline void SetFromPermissionVersion(const Aws::String& value) { m_fromPermissionVersionHasBeenSet = true; m_fromPermissionVersion = value; } /** *

The version of the managed permission that this background task is * replacing.

*/ inline void SetFromPermissionVersion(Aws::String&& value) { m_fromPermissionVersionHasBeenSet = true; m_fromPermissionVersion = std::move(value); } /** *

The version of the managed permission that this background task is * replacing.

*/ inline void SetFromPermissionVersion(const char* value) { m_fromPermissionVersionHasBeenSet = true; m_fromPermissionVersion.assign(value); } /** *

The version of the managed permission that this background task is * replacing.

*/ inline ReplacePermissionAssociationsWork& WithFromPermissionVersion(const Aws::String& value) { SetFromPermissionVersion(value); return *this;} /** *

The version of the managed permission that this background task is * replacing.

*/ inline ReplacePermissionAssociationsWork& WithFromPermissionVersion(Aws::String&& value) { SetFromPermissionVersion(std::move(value)); return *this;} /** *

The version of the managed permission that this background task is * replacing.

*/ inline ReplacePermissionAssociationsWork& WithFromPermissionVersion(const char* value) { SetFromPermissionVersion(value); return *this;} /** *

The ARN of the managed permission that this background task is associating * with the resource shares in place of the managed permission and version * specified in fromPermissionArn and * fromPermissionVersion.

*/ inline const Aws::String& GetToPermissionArn() const{ return m_toPermissionArn; } /** *

The ARN of the managed permission that this background task is associating * with the resource shares in place of the managed permission and version * specified in fromPermissionArn and * fromPermissionVersion.

*/ inline bool ToPermissionArnHasBeenSet() const { return m_toPermissionArnHasBeenSet; } /** *

The ARN of the managed permission that this background task is associating * with the resource shares in place of the managed permission and version * specified in fromPermissionArn and * fromPermissionVersion.

*/ inline void SetToPermissionArn(const Aws::String& value) { m_toPermissionArnHasBeenSet = true; m_toPermissionArn = value; } /** *

The ARN of the managed permission that this background task is associating * with the resource shares in place of the managed permission and version * specified in fromPermissionArn and * fromPermissionVersion.

*/ inline void SetToPermissionArn(Aws::String&& value) { m_toPermissionArnHasBeenSet = true; m_toPermissionArn = std::move(value); } /** *

The ARN of the managed permission that this background task is associating * with the resource shares in place of the managed permission and version * specified in fromPermissionArn and * fromPermissionVersion.

*/ inline void SetToPermissionArn(const char* value) { m_toPermissionArnHasBeenSet = true; m_toPermissionArn.assign(value); } /** *

The ARN of the managed permission that this background task is associating * with the resource shares in place of the managed permission and version * specified in fromPermissionArn and * fromPermissionVersion.

*/ inline ReplacePermissionAssociationsWork& WithToPermissionArn(const Aws::String& value) { SetToPermissionArn(value); return *this;} /** *

The ARN of the managed permission that this background task is associating * with the resource shares in place of the managed permission and version * specified in fromPermissionArn and * fromPermissionVersion.

*/ inline ReplacePermissionAssociationsWork& WithToPermissionArn(Aws::String&& value) { SetToPermissionArn(std::move(value)); return *this;} /** *

The ARN of the managed permission that this background task is associating * with the resource shares in place of the managed permission and version * specified in fromPermissionArn and * fromPermissionVersion.

*/ inline ReplacePermissionAssociationsWork& WithToPermissionArn(const char* value) { SetToPermissionArn(value); return *this;} /** *

The version of the managed permission that this background task is * associating with the resource shares. This is always the version that is * currently the default for this managed permission.

*/ inline const Aws::String& GetToPermissionVersion() const{ return m_toPermissionVersion; } /** *

The version of the managed permission that this background task is * associating with the resource shares. This is always the version that is * currently the default for this managed permission.

*/ inline bool ToPermissionVersionHasBeenSet() const { return m_toPermissionVersionHasBeenSet; } /** *

The version of the managed permission that this background task is * associating with the resource shares. This is always the version that is * currently the default for this managed permission.

*/ inline void SetToPermissionVersion(const Aws::String& value) { m_toPermissionVersionHasBeenSet = true; m_toPermissionVersion = value; } /** *

The version of the managed permission that this background task is * associating with the resource shares. This is always the version that is * currently the default for this managed permission.

*/ inline void SetToPermissionVersion(Aws::String&& value) { m_toPermissionVersionHasBeenSet = true; m_toPermissionVersion = std::move(value); } /** *

The version of the managed permission that this background task is * associating with the resource shares. This is always the version that is * currently the default for this managed permission.

*/ inline void SetToPermissionVersion(const char* value) { m_toPermissionVersionHasBeenSet = true; m_toPermissionVersion.assign(value); } /** *

The version of the managed permission that this background task is * associating with the resource shares. This is always the version that is * currently the default for this managed permission.

*/ inline ReplacePermissionAssociationsWork& WithToPermissionVersion(const Aws::String& value) { SetToPermissionVersion(value); return *this;} /** *

The version of the managed permission that this background task is * associating with the resource shares. This is always the version that is * currently the default for this managed permission.

*/ inline ReplacePermissionAssociationsWork& WithToPermissionVersion(Aws::String&& value) { SetToPermissionVersion(std::move(value)); return *this;} /** *

The version of the managed permission that this background task is * associating with the resource shares. This is always the version that is * currently the default for this managed permission.

*/ inline ReplacePermissionAssociationsWork& WithToPermissionVersion(const char* value) { SetToPermissionVersion(value); return *this;} /** *

Specifies the current status of the background tasks for the specified ID. * The output is one of the following strings:

  • * IN_PROGRESS

  • COMPLETED

  • *
  • FAILED

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

Specifies the current status of the background tasks for the specified ID. * The output is one of the following strings:

  • * IN_PROGRESS

  • COMPLETED

  • *
  • FAILED

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

Specifies the current status of the background tasks for the specified ID. * The output is one of the following strings:

  • * IN_PROGRESS

  • COMPLETED

  • *
  • FAILED

*/ inline void SetStatus(const ReplacePermissionAssociationsWorkStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

Specifies the current status of the background tasks for the specified ID. * The output is one of the following strings:

  • * IN_PROGRESS

  • COMPLETED

  • *
  • FAILED

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

Specifies the current status of the background tasks for the specified ID. * The output is one of the following strings:

  • * IN_PROGRESS

  • COMPLETED

  • *
  • FAILED

*/ inline ReplacePermissionAssociationsWork& WithStatus(const ReplacePermissionAssociationsWorkStatus& value) { SetStatus(value); return *this;} /** *

Specifies the current status of the background tasks for the specified ID. * The output is one of the following strings:

  • * IN_PROGRESS

  • COMPLETED

  • *
  • FAILED

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

Specifies the reason for a FAILED status. This field is present * only when there status is FAILED.

*/ inline const Aws::String& GetStatusMessage() const{ return m_statusMessage; } /** *

Specifies the reason for a FAILED status. This field is present * only when there status is FAILED.

*/ inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; } /** *

Specifies the reason for a FAILED status. This field is present * only when there status is FAILED.

*/ inline void SetStatusMessage(const Aws::String& value) { m_statusMessageHasBeenSet = true; m_statusMessage = value; } /** *

Specifies the reason for a FAILED status. This field is present * only when there status is FAILED.

*/ inline void SetStatusMessage(Aws::String&& value) { m_statusMessageHasBeenSet = true; m_statusMessage = std::move(value); } /** *

Specifies the reason for a FAILED status. This field is present * only when there status is FAILED.

*/ inline void SetStatusMessage(const char* value) { m_statusMessageHasBeenSet = true; m_statusMessage.assign(value); } /** *

Specifies the reason for a FAILED status. This field is present * only when there status is FAILED.

*/ inline ReplacePermissionAssociationsWork& WithStatusMessage(const Aws::String& value) { SetStatusMessage(value); return *this;} /** *

Specifies the reason for a FAILED status. This field is present * only when there status is FAILED.

*/ inline ReplacePermissionAssociationsWork& WithStatusMessage(Aws::String&& value) { SetStatusMessage(std::move(value)); return *this;} /** *

Specifies the reason for a FAILED status. This field is present * only when there status is FAILED.

*/ inline ReplacePermissionAssociationsWork& WithStatusMessage(const char* value) { SetStatusMessage(value); return *this;} /** *

The date and time when this asynchronous background task was created.

*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *

The date and time when this asynchronous background task was created.

*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *

The date and time when this asynchronous background task was created.

*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *

The date and time when this asynchronous background task was created.

*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } /** *

The date and time when this asynchronous background task was created.

*/ inline ReplacePermissionAssociationsWork& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *

The date and time when this asynchronous background task was created.

*/ inline ReplacePermissionAssociationsWork& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *

The date and time when the status of this background task was last * updated.

*/ inline const Aws::Utils::DateTime& GetLastUpdatedTime() const{ return m_lastUpdatedTime; } /** *

The date and time when the status of this background task was last * updated.

*/ inline bool LastUpdatedTimeHasBeenSet() const { return m_lastUpdatedTimeHasBeenSet; } /** *

The date and time when the status of this background task was last * updated.

*/ inline void SetLastUpdatedTime(const Aws::Utils::DateTime& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = value; } /** *

The date and time when the status of this background task was last * updated.

*/ inline void SetLastUpdatedTime(Aws::Utils::DateTime&& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = std::move(value); } /** *

The date and time when the status of this background task was last * updated.

*/ inline ReplacePermissionAssociationsWork& WithLastUpdatedTime(const Aws::Utils::DateTime& value) { SetLastUpdatedTime(value); return *this;} /** *

The date and time when the status of this background task was last * updated.

*/ inline ReplacePermissionAssociationsWork& WithLastUpdatedTime(Aws::Utils::DateTime&& value) { SetLastUpdatedTime(std::move(value)); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_fromPermissionArn; bool m_fromPermissionArnHasBeenSet = false; Aws::String m_fromPermissionVersion; bool m_fromPermissionVersionHasBeenSet = false; Aws::String m_toPermissionArn; bool m_toPermissionArnHasBeenSet = false; Aws::String m_toPermissionVersion; bool m_toPermissionVersionHasBeenSet = false; ReplacePermissionAssociationsWorkStatus m_status; bool m_statusHasBeenSet = false; Aws::String m_statusMessage; bool m_statusMessageHasBeenSet = false; Aws::Utils::DateTime m_creationTime; bool m_creationTimeHasBeenSet = false; Aws::Utils::DateTime m_lastUpdatedTime; bool m_lastUpdatedTimeHasBeenSet = false; }; } // namespace Model } // namespace RAM } // namespace Aws