@Stability(value=Stable) @Internal public static final class CustomResourceProps.Jsii$Proxy extends software.amazon.jsii.JsiiObject implements CustomResourceProps
CustomResourcePropssoftware.amazon.jsii.JsiiObject.InitializationModeCustomResourceProps.Builder, CustomResourceProps.Jsii$Proxy| Modifier | Constructor and Description |
|---|---|
protected |
Jsii$Proxy(CustomResourceProps.Builder builder)
Constructor that initializes the object based on literal property values passed by the
CustomResourceProps.Builder. |
protected |
Jsii$Proxy(software.amazon.jsii.JsiiObjectRef objRef)
Constructor that initializes the object based on values retrieved from the JsiiObject.
|
| Modifier and Type | Method and Description |
|---|---|
com.fasterxml.jackson.databind.JsonNode |
$jsii$toJson() |
boolean |
equals(Object o) |
Boolean |
getPascalCaseProperties()
Convert all property keys to pascal case.
|
Map<String,Object> |
getProperties()
Properties to pass to the Lambda.
|
RemovalPolicy |
getRemovalPolicy()
The policy to apply when this resource is removed from the application.
|
String |
getResourceType()
For custom resources, you can specify AWS::CloudFormation::CustomResource (the default) as the resource type, or you can specify your own resource type name.
|
String |
getServiceToken()
The ARN of the provider which implements this custom resource type.
|
int |
hashCode() |
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSetclone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitbuilderprotected Jsii$Proxy(software.amazon.jsii.JsiiObjectRef objRef)
objRef - Reference to the JSII managed object.protected Jsii$Proxy(CustomResourceProps.Builder builder)
CustomResourceProps.Builder.public final String getServiceToken()
CustomResourceProps
You can implement a provider by listening to raw AWS CloudFormation events
and specify the ARN of an SNS topic (topic.topicArn) or the ARN of an AWS
Lambda function (lambda.functionArn) or use the CDK's custom resource
provider framework which makes it easier to implement robust providers.
Provider framework:
// Example automatically generated from non-compiling source. May contain errors.
// use the provider framework from aws-cdk/custom-resources:
Provider provider = Provider.Builder.create(this, "ResourceProvider")
.onEventHandler(onEventHandler)
.isCompleteHandler(isCompleteHandler)
.build();
CustomResource.Builder.create(this, "MyResource")
.serviceToken(provider.getServiceToken())
.build();
AWS Lambda function (not recommended to use AWS Lambda Functions directly, see the module README):
// Example automatically generated from non-compiling source. May contain errors.
// invoke an AWS Lambda function when a lifecycle event occurs:
// invoke an AWS Lambda function when a lifecycle event occurs:
CustomResource.Builder.create(this, "MyResource")
.serviceToken(myFunction.getFunctionArn())
.build();
SNS topic (not recommended to use AWS Lambda Functions directly, see the module README):
// Example automatically generated from non-compiling source. May contain errors.
// publish lifecycle events to an SNS topic:
// publish lifecycle events to an SNS topic:
CustomResource.Builder.create(this, "MyResource")
.serviceToken(myTopic.getTopicArn())
.build();
getServiceToken in interface CustomResourcePropspublic final Boolean getPascalCaseProperties()
CustomResourcePropsDefault: false
getPascalCaseProperties in interface CustomResourcePropspublic final Map<String,Object> getProperties()
CustomResourcePropsDefault: - No properties.
getProperties in interface CustomResourcePropspublic final RemovalPolicy getRemovalPolicy()
CustomResourcePropsDefault: cdk.RemovalPolicy.Destroy
getRemovalPolicy in interface CustomResourcePropspublic final String getResourceType()
CustomResourcePropsFor example, you can use "Custom::MyCustomResourceTypeName".
Custom resource type names must begin with "Custom::" and can include alphanumeric characters and the following characters: _@-. You can specify a custom resource type name up to a maximum length of 60 characters. You cannot change the type during an update.
Using your own resource type names helps you quickly differentiate the types of custom resources in your stack. For example, if you had two custom resources that conduct two different ping tests, you could name their type as Custom::PingTester to make them easily identifiable as ping testers (instead of using AWS::CloudFormation::CustomResource).
Default: - AWS::CloudFormation::CustomResource
@Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()
$jsii$toJson in interface software.amazon.jsii.JsiiSerializableCopyright © 2022. All rights reserved.