/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about the portfolio share.See Also:
AWS
* API Reference
The identifier of the recipient entity that received the portfolio share. The * recipient entity can be one of the following:
1. An external account.
*2. An organziation member account.
3. An organzational unit (OU).
*4. The organization itself. (This shares with every account in the * organization).
*/ inline const Aws::String& GetPrincipalId() const{ return m_principalId; } /** *The identifier of the recipient entity that received the portfolio share. The * recipient entity can be one of the following:
1. An external account.
*2. An organziation member account.
3. An organzational unit (OU).
*4. The organization itself. (This shares with every account in the * organization).
*/ inline bool PrincipalIdHasBeenSet() const { return m_principalIdHasBeenSet; } /** *The identifier of the recipient entity that received the portfolio share. The * recipient entity can be one of the following:
1. An external account.
*2. An organziation member account.
3. An organzational unit (OU).
*4. The organization itself. (This shares with every account in the * organization).
*/ inline void SetPrincipalId(const Aws::String& value) { m_principalIdHasBeenSet = true; m_principalId = value; } /** *The identifier of the recipient entity that received the portfolio share. The * recipient entity can be one of the following:
1. An external account.
*2. An organziation member account.
3. An organzational unit (OU).
*4. The organization itself. (This shares with every account in the * organization).
*/ inline void SetPrincipalId(Aws::String&& value) { m_principalIdHasBeenSet = true; m_principalId = std::move(value); } /** *The identifier of the recipient entity that received the portfolio share. The * recipient entity can be one of the following:
1. An external account.
*2. An organziation member account.
3. An organzational unit (OU).
*4. The organization itself. (This shares with every account in the * organization).
*/ inline void SetPrincipalId(const char* value) { m_principalIdHasBeenSet = true; m_principalId.assign(value); } /** *The identifier of the recipient entity that received the portfolio share. The * recipient entity can be one of the following:
1. An external account.
*2. An organziation member account.
3. An organzational unit (OU).
*4. The organization itself. (This shares with every account in the * organization).
*/ inline PortfolioShareDetail& WithPrincipalId(const Aws::String& value) { SetPrincipalId(value); return *this;} /** *The identifier of the recipient entity that received the portfolio share. The * recipient entity can be one of the following:
1. An external account.
*2. An organziation member account.
3. An organzational unit (OU).
*4. The organization itself. (This shares with every account in the * organization).
*/ inline PortfolioShareDetail& WithPrincipalId(Aws::String&& value) { SetPrincipalId(std::move(value)); return *this;} /** *The identifier of the recipient entity that received the portfolio share. The * recipient entity can be one of the following:
1. An external account.
*2. An organziation member account.
3. An organzational unit (OU).
*4. The organization itself. (This shares with every account in the * organization).
*/ inline PortfolioShareDetail& WithPrincipalId(const char* value) { SetPrincipalId(value); return *this;} /** *The type of the portfolio share.
*/ inline const DescribePortfolioShareType& GetType() const{ return m_type; } /** *The type of the portfolio share.
*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *The type of the portfolio share.
*/ inline void SetType(const DescribePortfolioShareType& value) { m_typeHasBeenSet = true; m_type = value; } /** *The type of the portfolio share.
*/ inline void SetType(DescribePortfolioShareType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *The type of the portfolio share.
*/ inline PortfolioShareDetail& WithType(const DescribePortfolioShareType& value) { SetType(value); return *this;} /** *The type of the portfolio share.
*/ inline PortfolioShareDetail& WithType(DescribePortfolioShareType&& value) { SetType(std::move(value)); return *this;} /** *Indicates whether the shared portfolio is imported by the recipient account. * If the recipient is in an organization node, the share is automatically * imported, and the field is always set to true.
*/ inline bool GetAccepted() const{ return m_accepted; } /** *Indicates whether the shared portfolio is imported by the recipient account. * If the recipient is in an organization node, the share is automatically * imported, and the field is always set to true.
*/ inline bool AcceptedHasBeenSet() const { return m_acceptedHasBeenSet; } /** *Indicates whether the shared portfolio is imported by the recipient account. * If the recipient is in an organization node, the share is automatically * imported, and the field is always set to true.
*/ inline void SetAccepted(bool value) { m_acceptedHasBeenSet = true; m_accepted = value; } /** *Indicates whether the shared portfolio is imported by the recipient account. * If the recipient is in an organization node, the share is automatically * imported, and the field is always set to true.
*/ inline PortfolioShareDetail& WithAccepted(bool value) { SetAccepted(value); return *this;} /** *Indicates whether TagOptions sharing is enabled or disabled for the portfolio * share.
*/ inline bool GetShareTagOptions() const{ return m_shareTagOptions; } /** *Indicates whether TagOptions sharing is enabled or disabled for the portfolio * share.
*/ inline bool ShareTagOptionsHasBeenSet() const { return m_shareTagOptionsHasBeenSet; } /** *Indicates whether TagOptions sharing is enabled or disabled for the portfolio * share.
*/ inline void SetShareTagOptions(bool value) { m_shareTagOptionsHasBeenSet = true; m_shareTagOptions = value; } /** *Indicates whether TagOptions sharing is enabled or disabled for the portfolio * share.
*/ inline PortfolioShareDetail& WithShareTagOptions(bool value) { SetShareTagOptions(value); return *this;} /** *Indicates if Principal
sharing is enabled or disabled for the
* portfolio share.
Indicates if Principal
sharing is enabled or disabled for the
* portfolio share.
Indicates if Principal
sharing is enabled or disabled for the
* portfolio share.
Indicates if Principal
sharing is enabled or disabled for the
* portfolio share.