/** * 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 DisassociatePrincipalFromPortfolioRequest : public ServiceCatalogRequest { public: AWS_SERVICECATALOG_API DisassociatePrincipalFromPortfolioRequest(); // 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 "DisassociatePrincipalFromPortfolio"; } AWS_SERVICECATALOG_API Aws::String SerializePayload() const override; AWS_SERVICECATALOG_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The language code.

  • jp - Japanese

  • *
  • zh - Chinese

*/ inline const Aws::String& GetAcceptLanguage() const{ return m_acceptLanguage; } /** *

The language code.

  • jp - Japanese

  • *
  • zh - Chinese

*/ inline bool AcceptLanguageHasBeenSet() const { return m_acceptLanguageHasBeenSet; } /** *

The language code.

  • jp - Japanese

  • *
  • zh - Chinese

*/ inline void SetAcceptLanguage(const Aws::String& value) { m_acceptLanguageHasBeenSet = true; m_acceptLanguage = value; } /** *

The language code.

  • jp - Japanese

  • *
  • zh - Chinese

*/ inline void SetAcceptLanguage(Aws::String&& value) { m_acceptLanguageHasBeenSet = true; m_acceptLanguage = std::move(value); } /** *

The language code.

  • jp - Japanese

  • *
  • zh - Chinese

*/ inline void SetAcceptLanguage(const char* value) { m_acceptLanguageHasBeenSet = true; m_acceptLanguage.assign(value); } /** *

The language code.

  • jp - Japanese

  • *
  • zh - Chinese

*/ inline DisassociatePrincipalFromPortfolioRequest& WithAcceptLanguage(const Aws::String& value) { SetAcceptLanguage(value); return *this;} /** *

The language code.

  • jp - Japanese

  • *
  • zh - Chinese

*/ inline DisassociatePrincipalFromPortfolioRequest& WithAcceptLanguage(Aws::String&& value) { SetAcceptLanguage(std::move(value)); return *this;} /** *

The language code.

  • jp - Japanese

  • *
  • zh - Chinese

*/ inline DisassociatePrincipalFromPortfolioRequest& WithAcceptLanguage(const char* value) { SetAcceptLanguage(value); return *this;} /** *

The portfolio identifier.

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

The portfolio identifier.

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

The portfolio identifier.

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

The portfolio identifier.

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

The portfolio identifier.

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

The portfolio identifier.

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

The portfolio identifier.

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

The portfolio identifier.

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

The ARN of the principal (user, role, or group). This field allows an ARN * with no accountID with or without wildcard characters if * PrincipalType is IAM_PATTERN.

*/ inline const Aws::String& GetPrincipalARN() const{ return m_principalARN; } /** *

The ARN of the principal (user, role, or group). This field allows an ARN * with no accountID with or without wildcard characters if * PrincipalType is IAM_PATTERN.

*/ inline bool PrincipalARNHasBeenSet() const { return m_principalARNHasBeenSet; } /** *

The ARN of the principal (user, role, or group). This field allows an ARN * with no accountID with or without wildcard characters if * PrincipalType is IAM_PATTERN.

*/ inline void SetPrincipalARN(const Aws::String& value) { m_principalARNHasBeenSet = true; m_principalARN = value; } /** *

The ARN of the principal (user, role, or group). This field allows an ARN * with no accountID with or without wildcard characters if * PrincipalType is IAM_PATTERN.

*/ inline void SetPrincipalARN(Aws::String&& value) { m_principalARNHasBeenSet = true; m_principalARN = std::move(value); } /** *

The ARN of the principal (user, role, or group). This field allows an ARN * with no accountID with or without wildcard characters if * PrincipalType is IAM_PATTERN.

*/ inline void SetPrincipalARN(const char* value) { m_principalARNHasBeenSet = true; m_principalARN.assign(value); } /** *

The ARN of the principal (user, role, or group). This field allows an ARN * with no accountID with or without wildcard characters if * PrincipalType is IAM_PATTERN.

*/ inline DisassociatePrincipalFromPortfolioRequest& WithPrincipalARN(const Aws::String& value) { SetPrincipalARN(value); return *this;} /** *

The ARN of the principal (user, role, or group). This field allows an ARN * with no accountID with or without wildcard characters if * PrincipalType is IAM_PATTERN.

*/ inline DisassociatePrincipalFromPortfolioRequest& WithPrincipalARN(Aws::String&& value) { SetPrincipalARN(std::move(value)); return *this;} /** *

The ARN of the principal (user, role, or group). This field allows an ARN * with no accountID with or without wildcard characters if * PrincipalType is IAM_PATTERN.

*/ inline DisassociatePrincipalFromPortfolioRequest& WithPrincipalARN(const char* value) { SetPrincipalARN(value); return *this;} /** *

The supported value is IAM if you use a fully defined ARN, or * IAM_PATTERN if you specify an IAM ARN with no * AccountId, with or without wildcard characters.

*/ inline const PrincipalType& GetPrincipalType() const{ return m_principalType; } /** *

The supported value is IAM if you use a fully defined ARN, or * IAM_PATTERN if you specify an IAM ARN with no * AccountId, with or without wildcard characters.

*/ inline bool PrincipalTypeHasBeenSet() const { return m_principalTypeHasBeenSet; } /** *

The supported value is IAM if you use a fully defined ARN, or * IAM_PATTERN if you specify an IAM ARN with no * AccountId, with or without wildcard characters.

*/ inline void SetPrincipalType(const PrincipalType& value) { m_principalTypeHasBeenSet = true; m_principalType = value; } /** *

The supported value is IAM if you use a fully defined ARN, or * IAM_PATTERN if you specify an IAM ARN with no * AccountId, with or without wildcard characters.

*/ inline void SetPrincipalType(PrincipalType&& value) { m_principalTypeHasBeenSet = true; m_principalType = std::move(value); } /** *

The supported value is IAM if you use a fully defined ARN, or * IAM_PATTERN if you specify an IAM ARN with no * AccountId, with or without wildcard characters.

*/ inline DisassociatePrincipalFromPortfolioRequest& WithPrincipalType(const PrincipalType& value) { SetPrincipalType(value); return *this;} /** *

The supported value is IAM if you use a fully defined ARN, or * IAM_PATTERN if you specify an IAM ARN with no * AccountId, with or without wildcard characters.

*/ inline DisassociatePrincipalFromPortfolioRequest& WithPrincipalType(PrincipalType&& value) { SetPrincipalType(std::move(value)); return *this;} private: Aws::String m_acceptLanguage; bool m_acceptLanguageHasBeenSet = false; Aws::String m_portfolioId; bool m_portfolioIdHasBeenSet = false; Aws::String m_principalARN; bool m_principalARNHasBeenSet = false; PrincipalType m_principalType; bool m_principalTypeHasBeenSet = false; }; } // namespace Model } // namespace ServiceCatalog } // namespace Aws