Class: AWSCDK::SNS::CfnTopic::SubscriptionProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
sns/cfn_topic.rb

Overview

Subscription is an embedded property that describes the subscription endpoints of an Amazon topic.

For full control over subscription behavior (for example, delivery policy, filtering, raw message delivery, and cross-region subscriptions), use the AWS::SNS::Subscription resource.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(endpoint:, protocol:) ⇒ SubscriptionProperty

Returns a new instance of SubscriptionProperty.

Parameters:

  • endpoint (String)

    The endpoint that receives notifications from the Amazon topic.

  • protocol (String)

    The subscription's protocol.



753
754
755
756
757
758
# File 'sns/cfn_topic.rb', line 753

def initialize(endpoint:, protocol:)
  @endpoint = endpoint
  Jsii::Type.check_type(@endpoint, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "endpoint")
  @protocol = protocol
  Jsii::Type.check_type(@protocol, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "protocol")
end

Instance Attribute Details

#endpointString (readonly)

The endpoint that receives notifications from the Amazon topic.

The endpoint value depends on the protocol that you specify. For more information, see the Endpoint parameter of the [Subscribe](https://docs.aws.amazon.com/sns/latest/api/API_Subscribe.html) action in the Amazon API Reference .



766
767
768
# File 'sns/cfn_topic.rb', line 766

def endpoint
  @endpoint
end

#protocolString (readonly)

The subscription's protocol.

For more information, see the Protocol parameter of the [Subscribe](https://docs.aws.amazon.com/sns/latest/api/API_Subscribe.html) action in the Amazon API Reference .



773
774
775
# File 'sns/cfn_topic.rb', line 773

def protocol
  @protocol
end

Class Method Details

.jsii_propertiesObject



775
776
777
778
779
780
# File 'sns/cfn_topic.rb', line 775

def self.jsii_properties
  {
    :endpoint => "endpoint",
    :protocol => "protocol",
  }
end

Instance Method Details

#to_jsiiObject



782
783
784
785
786
787
788
789
# File 'sns/cfn_topic.rb', line 782

def to_jsii
  result = {}
  result.merge!({
    "endpoint" => @endpoint,
    "protocol" => @protocol,
  })
  result.compact
end