Class AwsSdkCall.Builder
java.lang.Object
software.amazon.awscdk.customresources.AwsSdkCall.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<AwsSdkCall>
- Enclosing interface:
AwsSdkCall
@Stability(Stable)
public static final class AwsSdkCall.Builder
extends Object
implements software.amazon.jsii.Builder<AwsSdkCall>
A builder for
AwsSdkCall-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionSets the value ofAwsSdkCall.getAction()apiVersion(String apiVersion) Sets the value ofAwsSdkCall.getApiVersion()assumedRoleArn(String assumedRoleArn) Sets the value ofAwsSdkCall.getAssumedRoleArn()build()Builds the configured instance.externalId(String externalId) Sets the value ofAwsSdkCall.getExternalId()ignoreErrorCodesMatching(String ignoreErrorCodesMatching) Sets the value ofAwsSdkCall.getIgnoreErrorCodesMatching()Sets the value ofAwsSdkCall.getLogging()outputPaths(List<String> outputPaths) Sets the value ofAwsSdkCall.getOutputPaths()parameters(Object parameters) Sets the value ofAwsSdkCall.getParameters()physicalResourceId(PhysicalResourceId physicalResourceId) Sets the value ofAwsSdkCall.getPhysicalResourceId()Sets the value ofAwsSdkCall.getRegion()Sets the value ofAwsSdkCall.getService()
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
action
Sets the value ofAwsSdkCall.getAction()- Parameters:
action- The service action to call. This parameter is required. This is the name of an AWS API call, in one of the following forms:- An API call name as found in the API Reference documentation (
GetObject) - The API call name starting with a lowercase letter (
getObject) - The AWS SDK for JavaScript v3 command class name (
GetObjectCommand)
- An API call name as found in the API Reference documentation (
- Returns:
this
-
service
Sets the value ofAwsSdkCall.getService()- Parameters:
service- The service to call. This parameter is required. This is the name of an AWS service, in one of the following forms:- An AWS SDK for JavaScript v3 package name (
@aws-sdk/client-api-gateway) - An AWS SDK for JavaScript v3 client name (
api-gateway) - An AWS SDK for JavaScript v2 constructor name (
APIGateway) - A lowercase AWS SDK for JavaScript v2 constructor name (
apigateway)
- An AWS SDK for JavaScript v3 package name (
- Returns:
this
-
apiVersion
Sets the value ofAwsSdkCall.getApiVersion()- Parameters:
apiVersion- API version to use for the service.- Returns:
this
-
assumedRoleArn
Sets the value ofAwsSdkCall.getAssumedRoleArn()- Parameters:
assumedRoleArn- Used for running the SDK calls in underlying lambda with a different role. Can be used primarily for cross-account requests to for example connect hostedzone with a shared vpc. Region controls where assumeRole call is made.Example for Route53 / associateVPCWithHostedZone
- Returns:
this
-
externalId
Sets the value ofAwsSdkCall.getExternalId()- Parameters:
externalId- External ID to use when assuming the role for cross-account requests. This is an additional security measure that helps prevent the "confused deputy" problem where an entity that doesn't have permission to perform an action can coerce a more-privileged entity to perform the action.The external ID must be provided by the third-party service and should not be generated by you. This value should be unique among the third-party service's customers.
This property is only used when
assumedRoleArnis specified.- Returns:
this
-
ignoreErrorCodesMatching
@Stability(Stable) public AwsSdkCall.Builder ignoreErrorCodesMatching(String ignoreErrorCodesMatching) Sets the value ofAwsSdkCall.getIgnoreErrorCodesMatching()- Parameters:
ignoreErrorCodesMatching- The regex pattern to use to catch API errors. Thecodeproperty of theErrorobject will be tested against this pattern. If there is a match an error will not be thrown.- Returns:
this
-
logging
Sets the value ofAwsSdkCall.getLogging()- Parameters:
logging- A property used to configure logging during lambda function execution. Note: The default Logging configuration is all. This configuration will enable logging on all logged data in the lambda handler. This includes:- The event object that is received by the lambda handler
- The response received after making a API call
- The response object that the lambda handler will return
- SDK versioning information
- Caught and uncaught errors
- Returns:
this
-
outputPaths
Sets the value ofAwsSdkCall.getOutputPaths()- Parameters:
outputPaths- Restrict the data returned by the custom resource to specific paths in the API response. Use this to limit the data returned by the custom resource if working with API calls that could potentially result in custom response objects exceeding the hard limit of 4096 bytes.Example for ECS / updateService: ['service.deploymentConfiguration.maximumPercent']
- Returns:
this
-
parameters
Sets the value ofAwsSdkCall.getParameters()- Parameters:
parameters- The parameters for the service action.- Returns:
this
-
physicalResourceId
@Stability(Stable) public AwsSdkCall.Builder physicalResourceId(PhysicalResourceId physicalResourceId) Sets the value ofAwsSdkCall.getPhysicalResourceId()- Parameters:
physicalResourceId- The physical resource id of the custom resource for this call. Mandatory for onCreate call. In onUpdate, you can omit this to passthrough it from request.- Returns:
this
-
region
Sets the value ofAwsSdkCall.getRegion()- Parameters:
region- The region to send service requests to. Note: Cross-region operations are generally considered an anti-pattern. Consider first deploying a stack in that region.- Returns:
this
-
build
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<AwsSdkCall>- Returns:
- a new instance of
AwsSdkCall - Throws:
NullPointerException- if any required attribute was not provided
-