Class CfnEventSubscription

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

@Generated(value="jsii-pacmak/1.113.0 (build fc68b25)", date="2025-10-14T12:28:16.022Z") @Stability(Stable) public class CfnEventSubscription extends CfnResource implements IInspectable, IEventSubscriptionRef, ITaggableV2
Creates an event notification subscription.

This action requires a topic ARN (Amazon Resource Name) created by either the Neptune console, the SNS console, or the SNS API. To obtain an ARN with SNS, you must create a topic in Amazon SNS and subscribe to the topic. The ARN is displayed in the SNS console.

You can specify the type of source (SourceType) you want to be notified of, provide a list of Neptune sources (SourceIds) that triggers the events, and provide a list of event categories (EventCategories) for events you want to be notified of. For example, you can specify SourceType = db-instance, SourceIds = mydbinstance1, mydbinstance2 and EventCategories = Availability, Backup.

If you specify both the SourceType and SourceIds, such as SourceType = db-instance and SourceIdentifier = myDBInstance1, you are notified of all the db-instance events for the specified source. If you specify a SourceType but do not specify a SourceIdentifier, you receive notice of the events for that source type for all your Neptune sources. If you do not specify either the SourceType nor the SourceIdentifier, you are notified of events generated from all Neptune sources belonging to your customer account.

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.neptune.*;
 CfnEventSubscription cfnEventSubscription = CfnEventSubscription.Builder.create(this, "MyCfnEventSubscription")
         .snsTopicArn("snsTopicArn")
         // the properties below are optional
         .enabled(false)
         .eventCategories(List.of("eventCategories"))
         .sourceIds(List.of("sourceIds"))
         .sourceType("sourceType")
         .subscriptionName("subscriptionName")
         .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

    • CfnEventSubscription

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

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

      @Stability(Stable) public CfnEventSubscription(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull CfnEventSubscriptionProps 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.
    • getCdkTagManager

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

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

      @Stability(Stable) @NotNull public EventSubscriptionReference getEventSubscriptionRef()
      A reference to a EventSubscription resource.
      Specified by:
      getEventSubscriptionRef in interface IEventSubscriptionRef
    • getSnsTopicArn

      @Stability(Stable) @NotNull public String getSnsTopicArn()
      The topic ARN of the event notification subscription.
    • setSnsTopicArn

      @Stability(Stable) public void setSnsTopicArn(@NotNull String value)
      The topic ARN of the event notification subscription.
    • getEnabled

      @Stability(Stable) @Nullable public Object getEnabled()
      A Boolean value indicating if the subscription is enabled.
    • setEnabled

      @Stability(Stable) public void setEnabled(@Nullable Boolean value)
      A Boolean value indicating if the subscription is enabled.
    • setEnabled

      @Stability(Stable) public void setEnabled(@Nullable IResolvable value)
      A Boolean value indicating if the subscription is enabled.
    • getEventCategories

      @Stability(Stable) @Nullable public List<String> getEventCategories()
      A list of event categories for a SourceType that you want to subscribe to.
    • setEventCategories

      @Stability(Stable) public void setEventCategories(@Nullable List<String> value)
      A list of event categories for a SourceType that you want to subscribe to.
    • getSourceIds

      @Stability(Stable) @Nullable public List<String> getSourceIds()
      The list of identifiers of the event sources for which events will be returned.
    • setSourceIds

      @Stability(Stable) public void setSourceIds(@Nullable List<String> value)
      The list of identifiers of the event sources for which events will be returned.
    • getSourceType

      @Stability(Stable) @Nullable public String getSourceType()
      The source type for the event notification subscription.
    • setSourceType

      @Stability(Stable) public void setSourceType(@Nullable String value)
      The source type for the event notification subscription.
    • getSubscriptionName

      @Stability(Stable) @Nullable public String getSubscriptionName()
      The name of the subscription.
    • setSubscriptionName

      @Stability(Stable) public void setSubscriptionName(@Nullable String value)
      The name of the subscription.
    • getTags

      @Stability(Stable) @Nullable public List<CfnTag> getTags()
      An array of key-value pairs to apply to this resource.
    • setTags

      @Stability(Stable) public void setTags(@Nullable List<CfnTag> value)
      An array of key-value pairs to apply to this resource.