Class: AWSCDK::SNS::FilterOrPolicy

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

Overview

Class for building the FilterPolicy by avoiding union types.

Direct Known Subclasses

Filter, Policy

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeFilterOrPolicy

Returns a new instance of FilterOrPolicy.



8
9
10
# File 'sns/filter_or_policy.rb', line 8

def initialize
  Jsii::Object.instance_method(:initialize).bind(self).call
end

Class Method Details

.filter(filter) ⇒ AWSCDK::SNS::Filter

Filter of MessageBody.

Parameters:

Returns:



24
25
26
27
# File 'sns/filter_or_policy.rb', line 24

def self.filter(filter)
  Jsii::Type.check_type(filter, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc25zLlN1YnNjcmlwdGlvbkZpbHRlciJ9")), "filter")
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_sns.FilterOrPolicy", "filter", [filter])
end

.jsii_overridable_methodsObject



12
13
14
15
16
17
18
# File 'sns/filter_or_policy.rb', line 12

def self.jsii_overridable_methods
  {
    :type => { kind: :property, name: "type", is_optional: false },
    :is_filter => { kind: :method, name: "isFilter", is_optional: false },
    :is_policy => { kind: :method, name: "isPolicy", is_optional: false },
  }
end

.policy(policy) ⇒ AWSCDK::SNS::Policy

Policy of MessageBody.

Parameters:

  • policy (Hash{String => AWSCDK::SNS::FilterOrPolicy})

Returns:



33
34
35
36
# File 'sns/filter_or_policy.rb', line 33

def self.policy(policy)
  Jsii::Type.check_type(policy, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zbnMuRmlsdGVyT3JQb2xpY3kifSwia2luZCI6Im1hcCJ9fQ==")), "policy")
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_sns.FilterOrPolicy", "policy", [policy])
end

Instance Method Details

#is_filterBoolean

Check if instance is Filter type.

Returns:

  • (Boolean)


48
49
50
# File 'sns/filter_or_policy.rb', line 48

def is_filter()
  jsii_call_method("isFilter", [])
end

#is_policyBoolean

Check if instance is Policy type.

Returns:

  • (Boolean)


55
56
57
# File 'sns/filter_or_policy.rb', line 55

def is_policy()
  jsii_call_method("isPolicy", [])
end

#typeAWSCDK::SNS::FilterOrPolicyType

Type switch for disambiguating between subclasses.



41
42
43
# File 'sns/filter_or_policy.rb', line 41

def type()
  jsii_get_property("type")
end