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

Describes the share results of a resource.

See Also:

AWS * API Reference

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

The ID of the principal.

*/ inline const Aws::String& GetPrincipalId() const{ return m_principalId; } /** *

The ID of the principal.

*/ inline bool PrincipalIdHasBeenSet() const { return m_principalIdHasBeenSet; } /** *

The ID of the principal.

*/ inline void SetPrincipalId(const Aws::String& value) { m_principalIdHasBeenSet = true; m_principalId = value; } /** *

The ID of the principal.

*/ inline void SetPrincipalId(Aws::String&& value) { m_principalIdHasBeenSet = true; m_principalId = std::move(value); } /** *

The ID of the principal.

*/ inline void SetPrincipalId(const char* value) { m_principalIdHasBeenSet = true; m_principalId.assign(value); } /** *

The ID of the principal.

*/ inline ShareResult& WithPrincipalId(const Aws::String& value) { SetPrincipalId(value); return *this;} /** *

The ID of the principal.

*/ inline ShareResult& WithPrincipalId(Aws::String&& value) { SetPrincipalId(std::move(value)); return *this;} /** *

The ID of the principal.

*/ inline ShareResult& WithPrincipalId(const char* value) { SetPrincipalId(value); return *this;} /** *

The ID of the invited user.

*/ inline const Aws::String& GetInviteePrincipalId() const{ return m_inviteePrincipalId; } /** *

The ID of the invited user.

*/ inline bool InviteePrincipalIdHasBeenSet() const { return m_inviteePrincipalIdHasBeenSet; } /** *

The ID of the invited user.

*/ inline void SetInviteePrincipalId(const Aws::String& value) { m_inviteePrincipalIdHasBeenSet = true; m_inviteePrincipalId = value; } /** *

The ID of the invited user.

*/ inline void SetInviteePrincipalId(Aws::String&& value) { m_inviteePrincipalIdHasBeenSet = true; m_inviteePrincipalId = std::move(value); } /** *

The ID of the invited user.

*/ inline void SetInviteePrincipalId(const char* value) { m_inviteePrincipalIdHasBeenSet = true; m_inviteePrincipalId.assign(value); } /** *

The ID of the invited user.

*/ inline ShareResult& WithInviteePrincipalId(const Aws::String& value) { SetInviteePrincipalId(value); return *this;} /** *

The ID of the invited user.

*/ inline ShareResult& WithInviteePrincipalId(Aws::String&& value) { SetInviteePrincipalId(std::move(value)); return *this;} /** *

The ID of the invited user.

*/ inline ShareResult& WithInviteePrincipalId(const char* value) { SetInviteePrincipalId(value); return *this;} /** *

The role.

*/ inline const RoleType& GetRole() const{ return m_role; } /** *

The role.

*/ inline bool RoleHasBeenSet() const { return m_roleHasBeenSet; } /** *

The role.

*/ inline void SetRole(const RoleType& value) { m_roleHasBeenSet = true; m_role = value; } /** *

The role.

*/ inline void SetRole(RoleType&& value) { m_roleHasBeenSet = true; m_role = std::move(value); } /** *

The role.

*/ inline ShareResult& WithRole(const RoleType& value) { SetRole(value); return *this;} /** *

The role.

*/ inline ShareResult& WithRole(RoleType&& value) { SetRole(std::move(value)); return *this;} /** *

The status.

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

The status.

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

The status.

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

The status.

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

The status.

*/ inline ShareResult& WithStatus(const ShareStatusType& value) { SetStatus(value); return *this;} /** *

The status.

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

The ID of the resource that was shared.

*/ inline const Aws::String& GetShareId() const{ return m_shareId; } /** *

The ID of the resource that was shared.

*/ inline bool ShareIdHasBeenSet() const { return m_shareIdHasBeenSet; } /** *

The ID of the resource that was shared.

*/ inline void SetShareId(const Aws::String& value) { m_shareIdHasBeenSet = true; m_shareId = value; } /** *

The ID of the resource that was shared.

*/ inline void SetShareId(Aws::String&& value) { m_shareIdHasBeenSet = true; m_shareId = std::move(value); } /** *

The ID of the resource that was shared.

*/ inline void SetShareId(const char* value) { m_shareIdHasBeenSet = true; m_shareId.assign(value); } /** *

The ID of the resource that was shared.

*/ inline ShareResult& WithShareId(const Aws::String& value) { SetShareId(value); return *this;} /** *

The ID of the resource that was shared.

*/ inline ShareResult& WithShareId(Aws::String&& value) { SetShareId(std::move(value)); return *this;} /** *

The ID of the resource that was shared.

*/ inline ShareResult& WithShareId(const char* value) { SetShareId(value); return *this;} /** *

The status message.

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

The status message.

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

The status message.

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

The status message.

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

The status message.

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

The status message.

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

The status message.

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

The status message.

*/ inline ShareResult& WithStatusMessage(const char* value) { SetStatusMessage(value); return *this;} private: Aws::String m_principalId; bool m_principalIdHasBeenSet = false; Aws::String m_inviteePrincipalId; bool m_inviteePrincipalIdHasBeenSet = false; RoleType m_role; bool m_roleHasBeenSet = false; ShareStatusType m_status; bool m_statusHasBeenSet = false; Aws::String m_shareId; bool m_shareIdHasBeenSet = false; Aws::String m_statusMessage; bool m_statusMessageHasBeenSet = false; }; } // namespace Model } // namespace WorkDocs } // namespace Aws