Class CfnExtension

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
All Implemented Interfaces:
IInspectable, ITaggable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

@Generated(value="jsii-pacmak/1.98.0 (build 00b106d)", date="2024-05-08T21:35:02.301Z") @Stability(Stable) public class CfnExtension extends CfnResource implements IInspectable, ITaggable
Creates an AWS AppConfig extension.

An extension augments your ability to inject logic or behavior at different points during the AWS AppConfig workflow of creating or deploying a configuration.

You can create your own extensions or use the AWS authored extensions provided by AWS AppConfig . For an AWS AppConfig extension that uses AWS Lambda , you must create a Lambda function to perform any computation and processing defined in the extension. If you plan to create custom versions of the AWS authored notification extensions, you only need to specify an Amazon Resource Name (ARN) in the Uri field for the new extension version.

  • For a custom EventBridge notification extension, enter the ARN of the EventBridge default events in the Uri field.
  • For a custom Amazon SNS notification extension, enter the ARN of an Amazon SNS topic in the Uri field.
  • For a custom Amazon SQS notification extension, enter the ARN of an Amazon SQS message queue in the Uri field.

For more information about extensions, see Extending workflows in the AWS AppConfig User Guide .

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.appconfig.*;
 Object actions;
 CfnExtension cfnExtension = CfnExtension.Builder.create(this, "MyCfnExtension")
         .actions(actions)
         .name("name")
         // the properties below are optional
         .description("description")
         .latestVersionNumber(123)
         .parameters(Map.of(
                 "parametersKey", ParameterProperty.builder()
                         .required(false)
                         // the properties below are optional
                         .description("description")
                         .dynamic(false)
                         .build()))
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .build();
 

See Also:
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnExtension

      protected CfnExtension(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnExtension

      protected CfnExtension(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnExtension

      @Stability(Stable) public CfnExtension(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull CfnExtensionProps props)
      Parameters:
      scope - Scope in which this resource is defined. This parameter is required.
      id - Construct identifier for this resource (unique in its scope). This parameter is required.
      props - Resource properties. This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector - tree inspector to collect and process attributes. This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrArn

      @Stability(Stable) @NotNull public String getAttrArn()
      The system-generated Amazon Resource Name (ARN) for the extension.
    • getAttrId

      @Stability(Stable) @NotNull public String getAttrId()
      The system-generated ID of the extension.
    • getAttrVersionNumber

      @Stability(Stable) @NotNull public Number getAttrVersionNumber()
      The extension version number.
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getTags

      @Stability(Stable) @NotNull public TagManager getTags()
      Tag Manager which manages the tags for this resource.
      Specified by:
      getTags in interface ITaggable
    • getActions

      @Stability(Stable) @NotNull public Object getActions()
      The actions defined in the extension.
    • setActions

      @Stability(Stable) public void setActions(@NotNull Object value)
      The actions defined in the extension.
    • getName

      @Stability(Stable) @NotNull public String getName()
      A name for the extension.
    • setName

      @Stability(Stable) public void setName(@NotNull String value)
      A name for the extension.
    • getDescription

      @Stability(Stable) @Nullable public String getDescription()
      Information about the extension.
    • setDescription

      @Stability(Stable) public void setDescription(@Nullable String value)
      Information about the extension.
    • getLatestVersionNumber

      @Stability(Stable) @Nullable public Number getLatestVersionNumber()
      You can omit this field when you create an extension.
    • setLatestVersionNumber

      @Stability(Stable) public void setLatestVersionNumber(@Nullable Number value)
      You can omit this field when you create an extension.
    • getParameters

      @Stability(Stable) @Nullable public Object getParameters()
      The parameters accepted by the extension.
    • setParameters

      @Stability(Stable) public void setParameters(@Nullable IResolvable value)
      The parameters accepted by the extension.
    • setParameters

      @Stability(Stable) public void setParameters(@Nullable Map<String,Object> value)
      The parameters accepted by the extension.
    • getTagsRaw

      @Stability(Stable) @Nullable public List<CfnTag> getTagsRaw()
      Adds one or more tags for the specified extension.
    • setTagsRaw

      @Stability(Stable) public void setTagsRaw(@Nullable List<CfnTag> value)
      Adds one or more tags for the specified extension.