@Generated(value="jsii-pacmak/1.73.0 (build 6faeda3)", date="2023-01-31T18:36:53.742Z") public class Portfolio extends Resource implements IPortfolio
Example:
Portfolio.Builder.create(this, "Portfolio") .displayName("MyPortfolio") .providerName("MyTeam") .build();
Modifier and Type | Class and Description |
---|---|
static class |
Portfolio.Builder
A fluent builder for
Portfolio . |
IPortfolio.Jsii$Default, IPortfolio.Jsii$Proxy
Modifier | Constructor and Description |
---|---|
protected |
Portfolio(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) |
protected |
Portfolio(software.amazon.jsii.JsiiObjectRef objRef) |
|
Portfolio(software.constructs.Construct scope,
java.lang.String id,
PortfolioProps props) |
Modifier and Type | Method and Description |
---|---|
void |
addProduct(IProduct product)
Associate portfolio with the given product.
|
void |
associateTagOptions(TagOptions tagOptions)
Associate Tag Options.
|
void |
constrainCloudFormationParameters(IProduct product,
CloudFormationRuleConstraintOptions options)
Set provisioning rules for the product.
|
void |
constrainTagUpdates(IProduct product)
Add a Resource Update Constraint.
|
void |
constrainTagUpdates(IProduct product,
TagUpdateConstraintOptions options)
Add a Resource Update Constraint.
|
void |
deployWithStackSets(IProduct product,
StackSetsConstraintOptions options)
Configure deployment options using AWS Cloudformation StackSets.
|
static IPortfolio |
fromPortfolioArn(software.constructs.Construct scope,
java.lang.String id,
java.lang.String portfolioArn)
Creates a Portfolio construct that represents an external portfolio.
|
protected java.lang.String |
generateUniqueHash(java.lang.String value)
Create a unique id based off the L1 CfnPortfolio or the arn of an imported portfolio.
|
java.lang.String |
getPortfolioArn()
The ARN of the portfolio.
|
java.lang.String |
getPortfolioId()
The ID of the portfolio.
|
void |
giveAccessToGroup(IGroup group)
Associate portfolio with an IAM Group.
|
void |
giveAccessToRole(IRole role)
Associate portfolio with an IAM Role.
|
void |
giveAccessToUser(IUser user)
Associate portfolio with an IAM User.
|
void |
notifyOnStackEvents(IProduct product,
ITopic topic)
Add notifications for supplied topics on the provisioned product.
|
void |
notifyOnStackEvents(IProduct product,
ITopic topic,
CommonConstraintOptions options)
Add notifications for supplied topics on the provisioned product.
|
void |
setLaunchRole(IProduct product,
IRole launchRole)
Force users to assume a certain role when launching a product.
|
void |
setLaunchRole(IProduct product,
IRole launchRole,
CommonConstraintOptions options)
Force users to assume a certain role when launching a product.
|
void |
setLocalLaunchRole(IProduct product,
IRole launchRole)
Force users to assume a certain role when launching a product.
|
void |
setLocalLaunchRole(IProduct product,
IRole launchRole,
CommonConstraintOptions options)
Force users to assume a certain role when launching a product.
|
IRole |
setLocalLaunchRoleName(IProduct product,
java.lang.String launchRoleName)
Force users to assume a certain role when launching a product.
|
IRole |
setLocalLaunchRoleName(IProduct product,
java.lang.String launchRoleName,
CommonConstraintOptions options)
Force users to assume a certain role when launching a product.
|
void |
shareWithAccount(java.lang.String accountId)
Initiate a portfolio share with another account.
|
void |
shareWithAccount(java.lang.String accountId,
PortfolioShareOptions options)
Initiate a portfolio share with another account.
|
applyRemovalPolicy, generatePhysicalName, getEnv, getPhysicalName, getResourceArnAttribute, getResourceNameAttribute, getStack, isResource
getNode, isConstruct, onPrepare, onSynthesize, onValidate, prepare, synthesize, validate
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
applyRemovalPolicy, getEnv, getStack
getNode
protected Portfolio(software.amazon.jsii.JsiiObjectRef objRef)
protected Portfolio(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
public Portfolio(software.constructs.Construct scope, java.lang.String id, PortfolioProps props)
scope
- This parameter is required.id
- This parameter is required.props
- This parameter is required.public static IPortfolio fromPortfolioArn(software.constructs.Construct scope, java.lang.String id, java.lang.String portfolioArn)
scope
- The parent creating construct (usually `this`). This parameter is required.id
- The construct's name. This parameter is required.portfolioArn
- the Amazon Resource Name of the existing portfolio. This parameter is required.public void addProduct(IProduct product)
addProduct
in interface IPortfolio
product
- This parameter is required.public void associateTagOptions(TagOptions tagOptions)
A TagOption is a key-value pair managed in AWS Service Catalog. It is not an AWS tag, but serves as a template for creating an AWS tag based on the TagOption.
associateTagOptions
in interface IPortfolio
tagOptions
- This parameter is required.public void constrainCloudFormationParameters(IProduct product, CloudFormationRuleConstraintOptions options)
constrainCloudFormationParameters
in interface IPortfolio
product
- This parameter is required.options
- This parameter is required.public void constrainTagUpdates(IProduct product, TagUpdateConstraintOptions options)
constrainTagUpdates
in interface IPortfolio
product
- This parameter is required.options
- public void constrainTagUpdates(IProduct product)
constrainTagUpdates
in interface IPortfolio
product
- This parameter is required.public void deployWithStackSets(IProduct product, StackSetsConstraintOptions options)
deployWithStackSets
in interface IPortfolio
product
- This parameter is required.options
- This parameter is required.protected java.lang.String generateUniqueHash(java.lang.String value)
value
- This parameter is required.public void giveAccessToGroup(IGroup group)
giveAccessToGroup
in interface IPortfolio
group
- This parameter is required.public void giveAccessToRole(IRole role)
giveAccessToRole
in interface IPortfolio
role
- This parameter is required.public void giveAccessToUser(IUser user)
giveAccessToUser
in interface IPortfolio
user
- This parameter is required.public void notifyOnStackEvents(IProduct product, ITopic topic, CommonConstraintOptions options)
notifyOnStackEvents
in interface IPortfolio
product
- This parameter is required.topic
- This parameter is required.options
- public void notifyOnStackEvents(IProduct product, ITopic topic)
notifyOnStackEvents
in interface IPortfolio
product
- This parameter is required.topic
- This parameter is required.public void setLaunchRole(IProduct product, IRole launchRole, CommonConstraintOptions options)
This sets the launch role using the role arn which is tied to the account this role exists in. This is useful if you will be provisioning products from the account where this role exists. If you intend to share the portfolio across accounts, use a local launch role.
setLaunchRole
in interface IPortfolio
product
- This parameter is required.launchRole
- This parameter is required.options
- public void setLaunchRole(IProduct product, IRole launchRole)
This sets the launch role using the role arn which is tied to the account this role exists in. This is useful if you will be provisioning products from the account where this role exists. If you intend to share the portfolio across accounts, use a local launch role.
setLaunchRole
in interface IPortfolio
product
- This parameter is required.launchRole
- This parameter is required.public void setLocalLaunchRole(IProduct product, IRole launchRole, CommonConstraintOptions options)
The role name will be referenced by in the local account and must be set explicitly. This is useful when sharing the portfolio with multiple accounts.
setLocalLaunchRole
in interface IPortfolio
product
- This parameter is required.launchRole
- This parameter is required.options
- public void setLocalLaunchRole(IProduct product, IRole launchRole)
The role name will be referenced by in the local account and must be set explicitly. This is useful when sharing the portfolio with multiple accounts.
setLocalLaunchRole
in interface IPortfolio
product
- This parameter is required.launchRole
- This parameter is required.public IRole setLocalLaunchRoleName(IProduct product, java.lang.String launchRoleName, CommonConstraintOptions options)
The role will be referenced by name in the local account instead of a static role arn. A role with this name will automatically be created and assumable by Service Catalog in this account. This is useful when sharing the portfolio with multiple accounts.
setLocalLaunchRoleName
in interface IPortfolio
product
- This parameter is required.launchRoleName
- This parameter is required.options
- public IRole setLocalLaunchRoleName(IProduct product, java.lang.String launchRoleName)
The role will be referenced by name in the local account instead of a static role arn. A role with this name will automatically be created and assumable by Service Catalog in this account. This is useful when sharing the portfolio with multiple accounts.
setLocalLaunchRoleName
in interface IPortfolio
product
- This parameter is required.launchRoleName
- This parameter is required.public void shareWithAccount(java.lang.String accountId, PortfolioShareOptions options)
shareWithAccount
in interface IPortfolio
accountId
- This parameter is required.options
- public void shareWithAccount(java.lang.String accountId)
shareWithAccount
in interface IPortfolio
accountId
- This parameter is required.public java.lang.String getPortfolioArn()
getPortfolioArn
in interface IPortfolio
public java.lang.String getPortfolioId()
getPortfolioId
in interface IPortfolio