/** * 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 ServiceCatalog { namespace Model { /** */ class DescribePortfolioSharesRequest : public ServiceCatalogRequest { public: AWS_SERVICECATALOG_API DescribePortfolioSharesRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "DescribePortfolioShares"; } AWS_SERVICECATALOG_API Aws::String SerializePayload() const override; AWS_SERVICECATALOG_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The unique identifier of the portfolio for which shares will be * retrieved.

*/ inline const Aws::String& GetPortfolioId() const{ return m_portfolioId; } /** *

The unique identifier of the portfolio for which shares will be * retrieved.

*/ inline bool PortfolioIdHasBeenSet() const { return m_portfolioIdHasBeenSet; } /** *

The unique identifier of the portfolio for which shares will be * retrieved.

*/ inline void SetPortfolioId(const Aws::String& value) { m_portfolioIdHasBeenSet = true; m_portfolioId = value; } /** *

The unique identifier of the portfolio for which shares will be * retrieved.

*/ inline void SetPortfolioId(Aws::String&& value) { m_portfolioIdHasBeenSet = true; m_portfolioId = std::move(value); } /** *

The unique identifier of the portfolio for which shares will be * retrieved.

*/ inline void SetPortfolioId(const char* value) { m_portfolioIdHasBeenSet = true; m_portfolioId.assign(value); } /** *

The unique identifier of the portfolio for which shares will be * retrieved.

*/ inline DescribePortfolioSharesRequest& WithPortfolioId(const Aws::String& value) { SetPortfolioId(value); return *this;} /** *

The unique identifier of the portfolio for which shares will be * retrieved.

*/ inline DescribePortfolioSharesRequest& WithPortfolioId(Aws::String&& value) { SetPortfolioId(std::move(value)); return *this;} /** *

The unique identifier of the portfolio for which shares will be * retrieved.

*/ inline DescribePortfolioSharesRequest& WithPortfolioId(const char* value) { SetPortfolioId(value); return *this;} /** *

The type of portfolio share to summarize. This field acts as a filter on the * type of portfolio share, which can be one of the following:

1. * ACCOUNT - Represents an external account to account share.

*

2. ORGANIZATION - Represents a share to an organization. This * share is available to every account in the organization.

3. * ORGANIZATIONAL_UNIT - Represents a share to an organizational * unit.

4. ORGANIZATION_MEMBER_ACCOUNT - Represents a share to * an account in the organization.

*/ inline const DescribePortfolioShareType& GetType() const{ return m_type; } /** *

The type of portfolio share to summarize. This field acts as a filter on the * type of portfolio share, which can be one of the following:

1. * ACCOUNT - Represents an external account to account share.

*

2. ORGANIZATION - Represents a share to an organization. This * share is available to every account in the organization.

3. * ORGANIZATIONAL_UNIT - Represents a share to an organizational * unit.

4. ORGANIZATION_MEMBER_ACCOUNT - Represents a share to * an account in the organization.

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The type of portfolio share to summarize. This field acts as a filter on the * type of portfolio share, which can be one of the following:

1. * ACCOUNT - Represents an external account to account share.

*

2. ORGANIZATION - Represents a share to an organization. This * share is available to every account in the organization.

3. * ORGANIZATIONAL_UNIT - Represents a share to an organizational * unit.

4. ORGANIZATION_MEMBER_ACCOUNT - Represents a share to * an account in the organization.

*/ inline void SetType(const DescribePortfolioShareType& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The type of portfolio share to summarize. This field acts as a filter on the * type of portfolio share, which can be one of the following:

1. * ACCOUNT - Represents an external account to account share.

*

2. ORGANIZATION - Represents a share to an organization. This * share is available to every account in the organization.

3. * ORGANIZATIONAL_UNIT - Represents a share to an organizational * unit.

4. ORGANIZATION_MEMBER_ACCOUNT - Represents a share to * an account in the organization.

*/ inline void SetType(DescribePortfolioShareType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The type of portfolio share to summarize. This field acts as a filter on the * type of portfolio share, which can be one of the following:

1. * ACCOUNT - Represents an external account to account share.

*

2. ORGANIZATION - Represents a share to an organization. This * share is available to every account in the organization.

3. * ORGANIZATIONAL_UNIT - Represents a share to an organizational * unit.

4. ORGANIZATION_MEMBER_ACCOUNT - Represents a share to * an account in the organization.

*/ inline DescribePortfolioSharesRequest& WithType(const DescribePortfolioShareType& value) { SetType(value); return *this;} /** *

The type of portfolio share to summarize. This field acts as a filter on the * type of portfolio share, which can be one of the following:

1. * ACCOUNT - Represents an external account to account share.

*

2. ORGANIZATION - Represents a share to an organization. This * share is available to every account in the organization.

3. * ORGANIZATIONAL_UNIT - Represents a share to an organizational * unit.

4. ORGANIZATION_MEMBER_ACCOUNT - Represents a share to * an account in the organization.

*/ inline DescribePortfolioSharesRequest& WithType(DescribePortfolioShareType&& value) { SetType(std::move(value)); return *this;} /** *

The page token for the next set of results. To retrieve the first set of * results, use null.

*/ inline const Aws::String& GetPageToken() const{ return m_pageToken; } /** *

The page token for the next set of results. To retrieve the first set of * results, use null.

*/ inline bool PageTokenHasBeenSet() const { return m_pageTokenHasBeenSet; } /** *

The page token for the next set of results. To retrieve the first set of * results, use null.

*/ inline void SetPageToken(const Aws::String& value) { m_pageTokenHasBeenSet = true; m_pageToken = value; } /** *

The page token for the next set of results. To retrieve the first set of * results, use null.

*/ inline void SetPageToken(Aws::String&& value) { m_pageTokenHasBeenSet = true; m_pageToken = std::move(value); } /** *

The page token for the next set of results. To retrieve the first set of * results, use null.

*/ inline void SetPageToken(const char* value) { m_pageTokenHasBeenSet = true; m_pageToken.assign(value); } /** *

The page token for the next set of results. To retrieve the first set of * results, use null.

*/ inline DescribePortfolioSharesRequest& WithPageToken(const Aws::String& value) { SetPageToken(value); return *this;} /** *

The page token for the next set of results. To retrieve the first set of * results, use null.

*/ inline DescribePortfolioSharesRequest& WithPageToken(Aws::String&& value) { SetPageToken(std::move(value)); return *this;} /** *

The page token for the next set of results. To retrieve the first set of * results, use null.

*/ inline DescribePortfolioSharesRequest& WithPageToken(const char* value) { SetPageToken(value); return *this;} /** *

The maximum number of items to return with this call.

*/ inline int GetPageSize() const{ return m_pageSize; } /** *

The maximum number of items to return with this call.

*/ inline bool PageSizeHasBeenSet() const { return m_pageSizeHasBeenSet; } /** *

The maximum number of items to return with this call.

*/ inline void SetPageSize(int value) { m_pageSizeHasBeenSet = true; m_pageSize = value; } /** *

The maximum number of items to return with this call.

*/ inline DescribePortfolioSharesRequest& WithPageSize(int value) { SetPageSize(value); return *this;} private: Aws::String m_portfolioId; bool m_portfolioIdHasBeenSet = false; DescribePortfolioShareType m_type; bool m_typeHasBeenSet = false; Aws::String m_pageToken; bool m_pageTokenHasBeenSet = false; int m_pageSize; bool m_pageSizeHasBeenSet = false; }; } // namespace Model } // namespace ServiceCatalog } // namespace Aws