All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.servicecatalog.model.CreatePortfolioShareRequest Maven / Gradle / Ivy

Go to download

The AWS Java SDK for AWS Service Catalog module holds the client classes that are used for communicating with AWS Service Catalog

The newest version!
/*
 * Copyright 2020-2025 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.services.servicecatalog.model;

import java.io.Serializable;
import javax.annotation.Generated;

import com.amazonaws.AmazonWebServiceRequest;

/**
 * 
 * @see AWS API Documentation
 */
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class CreatePortfolioShareRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {

    /**
     * 

* The language code. *

*
    *
  • *

    * jp - Japanese *

    *
  • *
  • *

    * zh - Chinese *

    *
  • *
*/ private String acceptLanguage; /** *

* The portfolio identifier. *

*/ private String portfolioId; /** *

* The Amazon Web Services account ID. For example, 123456789012. *

*/ private String accountId; /** *

* The organization node to whom you are going to share. When you pass OrganizationNode, it creates * PortfolioShare for all of the Amazon Web Services accounts that are associated to the * OrganizationNode. The output returns a PortfolioShareToken, which enables the * administrator to monitor the status of the PortfolioShare creation process. *

*/ private OrganizationNode organizationNode; /** *

* Enables or disables TagOptions sharing when creating the portfolio share. If this flag is not * provided, TagOptions sharing is disabled. *

*/ private Boolean shareTagOptions; /** *

* This parameter is only supported for portfolios with an OrganizationalNode Type of * ORGANIZATION or ORGANIZATIONAL_UNIT. *

*

* Enables or disables Principal sharing when creating the portfolio share. If you do not * provide this flag, principal sharing is disabled. *

*

* When you enable Principal Name Sharing for a portfolio share, the share recipient account end users with a * principal that matches any of the associated IAM patterns can provision products from the portfolio. Once shared, * the share recipient can view associations of PrincipalType: IAM_PATTERN on their * portfolio. You can create the principals in the recipient account before or after creating the share. *

*/ private Boolean sharePrincipals; /** *

* The language code. *

*
    *
  • *

    * jp - Japanese *

    *
  • *
  • *

    * zh - Chinese *

    *
  • *
* * @param acceptLanguage * The language code.

*
    *
  • *

    * jp - Japanese *

    *
  • *
  • *

    * zh - Chinese *

    *
  • */ public void setAcceptLanguage(String acceptLanguage) { this.acceptLanguage = acceptLanguage; } /** *

    * The language code. *

    *
      *
    • *

      * jp - Japanese *

      *
    • *
    • *

      * zh - Chinese *

      *
    • *
    * * @return The language code.

    *
      *
    • *

      * jp - Japanese *

      *
    • *
    • *

      * zh - Chinese *

      *
    • */ public String getAcceptLanguage() { return this.acceptLanguage; } /** *

      * The language code. *

      *
        *
      • *

        * jp - Japanese *

        *
      • *
      • *

        * zh - Chinese *

        *
      • *
      * * @param acceptLanguage * The language code.

      *
        *
      • *

        * jp - Japanese *

        *
      • *
      • *

        * zh - Chinese *

        *
      • * @return Returns a reference to this object so that method calls can be chained together. */ public CreatePortfolioShareRequest withAcceptLanguage(String acceptLanguage) { setAcceptLanguage(acceptLanguage); return this; } /** *

        * The portfolio identifier. *

        * * @param portfolioId * The portfolio identifier. */ public void setPortfolioId(String portfolioId) { this.portfolioId = portfolioId; } /** *

        * The portfolio identifier. *

        * * @return The portfolio identifier. */ public String getPortfolioId() { return this.portfolioId; } /** *

        * The portfolio identifier. *

        * * @param portfolioId * The portfolio identifier. * @return Returns a reference to this object so that method calls can be chained together. */ public CreatePortfolioShareRequest withPortfolioId(String portfolioId) { setPortfolioId(portfolioId); return this; } /** *

        * The Amazon Web Services account ID. For example, 123456789012. *

        * * @param accountId * The Amazon Web Services account ID. For example, 123456789012. */ public void setAccountId(String accountId) { this.accountId = accountId; } /** *

        * The Amazon Web Services account ID. For example, 123456789012. *

        * * @return The Amazon Web Services account ID. For example, 123456789012. */ public String getAccountId() { return this.accountId; } /** *

        * The Amazon Web Services account ID. For example, 123456789012. *

        * * @param accountId * The Amazon Web Services account ID. For example, 123456789012. * @return Returns a reference to this object so that method calls can be chained together. */ public CreatePortfolioShareRequest withAccountId(String accountId) { setAccountId(accountId); return this; } /** *

        * The organization node to whom you are going to share. When you pass OrganizationNode, it creates * PortfolioShare for all of the Amazon Web Services accounts that are associated to the * OrganizationNode. The output returns a PortfolioShareToken, which enables the * administrator to monitor the status of the PortfolioShare creation process. *

        * * @param organizationNode * The organization node to whom you are going to share. When you pass OrganizationNode, it * creates PortfolioShare for all of the Amazon Web Services accounts that are associated to the * OrganizationNode. The output returns a PortfolioShareToken, which enables the * administrator to monitor the status of the PortfolioShare creation process. */ public void setOrganizationNode(OrganizationNode organizationNode) { this.organizationNode = organizationNode; } /** *

        * The organization node to whom you are going to share. When you pass OrganizationNode, it creates * PortfolioShare for all of the Amazon Web Services accounts that are associated to the * OrganizationNode. The output returns a PortfolioShareToken, which enables the * administrator to monitor the status of the PortfolioShare creation process. *

        * * @return The organization node to whom you are going to share. When you pass OrganizationNode, it * creates PortfolioShare for all of the Amazon Web Services accounts that are associated to * the OrganizationNode. The output returns a PortfolioShareToken, which enables * the administrator to monitor the status of the PortfolioShare creation process. */ public OrganizationNode getOrganizationNode() { return this.organizationNode; } /** *

        * The organization node to whom you are going to share. When you pass OrganizationNode, it creates * PortfolioShare for all of the Amazon Web Services accounts that are associated to the * OrganizationNode. The output returns a PortfolioShareToken, which enables the * administrator to monitor the status of the PortfolioShare creation process. *

        * * @param organizationNode * The organization node to whom you are going to share. When you pass OrganizationNode, it * creates PortfolioShare for all of the Amazon Web Services accounts that are associated to the * OrganizationNode. The output returns a PortfolioShareToken, which enables the * administrator to monitor the status of the PortfolioShare creation process. * @return Returns a reference to this object so that method calls can be chained together. */ public CreatePortfolioShareRequest withOrganizationNode(OrganizationNode organizationNode) { setOrganizationNode(organizationNode); return this; } /** *

        * Enables or disables TagOptions sharing when creating the portfolio share. If this flag is not * provided, TagOptions sharing is disabled. *

        * * @param shareTagOptions * Enables or disables TagOptions sharing when creating the portfolio share. If this flag is * not provided, TagOptions sharing is disabled. */ public void setShareTagOptions(Boolean shareTagOptions) { this.shareTagOptions = shareTagOptions; } /** *

        * Enables or disables TagOptions sharing when creating the portfolio share. If this flag is not * provided, TagOptions sharing is disabled. *

        * * @return Enables or disables TagOptions sharing when creating the portfolio share. If this flag is * not provided, TagOptions sharing is disabled. */ public Boolean getShareTagOptions() { return this.shareTagOptions; } /** *

        * Enables or disables TagOptions sharing when creating the portfolio share. If this flag is not * provided, TagOptions sharing is disabled. *

        * * @param shareTagOptions * Enables or disables TagOptions sharing when creating the portfolio share. If this flag is * not provided, TagOptions sharing is disabled. * @return Returns a reference to this object so that method calls can be chained together. */ public CreatePortfolioShareRequest withShareTagOptions(Boolean shareTagOptions) { setShareTagOptions(shareTagOptions); return this; } /** *

        * Enables or disables TagOptions sharing when creating the portfolio share. If this flag is not * provided, TagOptions sharing is disabled. *

        * * @return Enables or disables TagOptions sharing when creating the portfolio share. If this flag is * not provided, TagOptions sharing is disabled. */ public Boolean isShareTagOptions() { return this.shareTagOptions; } /** *

        * This parameter is only supported for portfolios with an OrganizationalNode Type of * ORGANIZATION or ORGANIZATIONAL_UNIT. *

        *

        * Enables or disables Principal sharing when creating the portfolio share. If you do not * provide this flag, principal sharing is disabled. *

        *

        * When you enable Principal Name Sharing for a portfolio share, the share recipient account end users with a * principal that matches any of the associated IAM patterns can provision products from the portfolio. Once shared, * the share recipient can view associations of PrincipalType: IAM_PATTERN on their * portfolio. You can create the principals in the recipient account before or after creating the share. *

        * * @param sharePrincipals * This parameter is only supported for portfolios with an OrganizationalNode Type of * ORGANIZATION or ORGANIZATIONAL_UNIT.

        *

        * Enables or disables Principal sharing when creating the portfolio share. If you do not * provide this flag, principal sharing is disabled. *

        *

        * When you enable Principal Name Sharing for a portfolio share, the share recipient account end users with a * principal that matches any of the associated IAM patterns can provision products from the portfolio. Once * shared, the share recipient can view associations of PrincipalType: IAM_PATTERN * on their portfolio. You can create the principals in the recipient account before or after creating the * share. */ public void setSharePrincipals(Boolean sharePrincipals) { this.sharePrincipals = sharePrincipals; } /** *

        * This parameter is only supported for portfolios with an OrganizationalNode Type of * ORGANIZATION or ORGANIZATIONAL_UNIT. *

        *

        * Enables or disables Principal sharing when creating the portfolio share. If you do not * provide this flag, principal sharing is disabled. *

        *

        * When you enable Principal Name Sharing for a portfolio share, the share recipient account end users with a * principal that matches any of the associated IAM patterns can provision products from the portfolio. Once shared, * the share recipient can view associations of PrincipalType: IAM_PATTERN on their * portfolio. You can create the principals in the recipient account before or after creating the share. *

        * * @return This parameter is only supported for portfolios with an OrganizationalNode Type of * ORGANIZATION or ORGANIZATIONAL_UNIT.

        *

        * Enables or disables Principal sharing when creating the portfolio share. If you do * not provide this flag, principal sharing is disabled. *

        *

        * When you enable Principal Name Sharing for a portfolio share, the share recipient account end users with * a principal that matches any of the associated IAM patterns can provision products from the portfolio. * Once shared, the share recipient can view associations of PrincipalType: * IAM_PATTERN on their portfolio. You can create the principals in the recipient account * before or after creating the share. */ public Boolean getSharePrincipals() { return this.sharePrincipals; } /** *

        * This parameter is only supported for portfolios with an OrganizationalNode Type of * ORGANIZATION or ORGANIZATIONAL_UNIT. *

        *

        * Enables or disables Principal sharing when creating the portfolio share. If you do not * provide this flag, principal sharing is disabled. *

        *

        * When you enable Principal Name Sharing for a portfolio share, the share recipient account end users with a * principal that matches any of the associated IAM patterns can provision products from the portfolio. Once shared, * the share recipient can view associations of PrincipalType: IAM_PATTERN on their * portfolio. You can create the principals in the recipient account before or after creating the share. *

        * * @param sharePrincipals * This parameter is only supported for portfolios with an OrganizationalNode Type of * ORGANIZATION or ORGANIZATIONAL_UNIT.

        *

        * Enables or disables Principal sharing when creating the portfolio share. If you do not * provide this flag, principal sharing is disabled. *

        *

        * When you enable Principal Name Sharing for a portfolio share, the share recipient account end users with a * principal that matches any of the associated IAM patterns can provision products from the portfolio. Once * shared, the share recipient can view associations of PrincipalType: IAM_PATTERN * on their portfolio. You can create the principals in the recipient account before or after creating the * share. * @return Returns a reference to this object so that method calls can be chained together. */ public CreatePortfolioShareRequest withSharePrincipals(Boolean sharePrincipals) { setSharePrincipals(sharePrincipals); return this; } /** *

        * This parameter is only supported for portfolios with an OrganizationalNode Type of * ORGANIZATION or ORGANIZATIONAL_UNIT. *

        *

        * Enables or disables Principal sharing when creating the portfolio share. If you do not * provide this flag, principal sharing is disabled. *

        *

        * When you enable Principal Name Sharing for a portfolio share, the share recipient account end users with a * principal that matches any of the associated IAM patterns can provision products from the portfolio. Once shared, * the share recipient can view associations of PrincipalType: IAM_PATTERN on their * portfolio. You can create the principals in the recipient account before or after creating the share. *

        * * @return This parameter is only supported for portfolios with an OrganizationalNode Type of * ORGANIZATION or ORGANIZATIONAL_UNIT.

        *

        * Enables or disables Principal sharing when creating the portfolio share. If you do * not provide this flag, principal sharing is disabled. *

        *

        * When you enable Principal Name Sharing for a portfolio share, the share recipient account end users with * a principal that matches any of the associated IAM patterns can provision products from the portfolio. * Once shared, the share recipient can view associations of PrincipalType: * IAM_PATTERN on their portfolio. You can create the principals in the recipient account * before or after creating the share. */ public Boolean isSharePrincipals() { return this.sharePrincipals; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getAcceptLanguage() != null) sb.append("AcceptLanguage: ").append(getAcceptLanguage()).append(","); if (getPortfolioId() != null) sb.append("PortfolioId: ").append(getPortfolioId()).append(","); if (getAccountId() != null) sb.append("AccountId: ").append(getAccountId()).append(","); if (getOrganizationNode() != null) sb.append("OrganizationNode: ").append(getOrganizationNode()).append(","); if (getShareTagOptions() != null) sb.append("ShareTagOptions: ").append(getShareTagOptions()).append(","); if (getSharePrincipals() != null) sb.append("SharePrincipals: ").append(getSharePrincipals()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreatePortfolioShareRequest == false) return false; CreatePortfolioShareRequest other = (CreatePortfolioShareRequest) obj; if (other.getAcceptLanguage() == null ^ this.getAcceptLanguage() == null) return false; if (other.getAcceptLanguage() != null && other.getAcceptLanguage().equals(this.getAcceptLanguage()) == false) return false; if (other.getPortfolioId() == null ^ this.getPortfolioId() == null) return false; if (other.getPortfolioId() != null && other.getPortfolioId().equals(this.getPortfolioId()) == false) return false; if (other.getAccountId() == null ^ this.getAccountId() == null) return false; if (other.getAccountId() != null && other.getAccountId().equals(this.getAccountId()) == false) return false; if (other.getOrganizationNode() == null ^ this.getOrganizationNode() == null) return false; if (other.getOrganizationNode() != null && other.getOrganizationNode().equals(this.getOrganizationNode()) == false) return false; if (other.getShareTagOptions() == null ^ this.getShareTagOptions() == null) return false; if (other.getShareTagOptions() != null && other.getShareTagOptions().equals(this.getShareTagOptions()) == false) return false; if (other.getSharePrincipals() == null ^ this.getSharePrincipals() == null) return false; if (other.getSharePrincipals() != null && other.getSharePrincipals().equals(this.getSharePrincipals()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getAcceptLanguage() == null) ? 0 : getAcceptLanguage().hashCode()); hashCode = prime * hashCode + ((getPortfolioId() == null) ? 0 : getPortfolioId().hashCode()); hashCode = prime * hashCode + ((getAccountId() == null) ? 0 : getAccountId().hashCode()); hashCode = prime * hashCode + ((getOrganizationNode() == null) ? 0 : getOrganizationNode().hashCode()); hashCode = prime * hashCode + ((getShareTagOptions() == null) ? 0 : getShareTagOptions().hashCode()); hashCode = prime * hashCode + ((getSharePrincipals() == null) ? 0 : getSharePrincipals().hashCode()); return hashCode; } @Override public CreatePortfolioShareRequest clone() { return (CreatePortfolioShareRequest) super.clone(); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy