Class: AWSCDK::CustomerProfiles::CfnEventTriggerProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
customer_profiles/cfn_event_trigger_props.rb

Overview

Properties for defining a CfnEventTrigger.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(domain_name:, event_trigger_conditions:, event_trigger_name:, object_type_name:, description: nil, event_trigger_limits: nil, segment_filter: nil, tags: nil) ⇒ CfnEventTriggerProps

Returns a new instance of CfnEventTriggerProps.

Parameters:

  • domain_name (String)

    The unique name of the domain.

  • event_trigger_conditions (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::CustomerProfiles::CfnEventTrigger::EventTriggerConditionProperty>)

    A list of conditions that determine when an event should trigger the destination.

  • event_trigger_name (String)

    The unique name of the event trigger.

  • object_type_name (String)

    The unique name of the object type.

  • description (String, nil) (defaults to: nil)

    The description of the event trigger.

  • event_trigger_limits (AWSCDK::IResolvable, AWSCDK::CustomerProfiles::CfnEventTrigger::EventTriggerLimitsProperty, nil) (defaults to: nil)

    Defines limits controlling whether an event triggers the destination, based on ingestion latency and the number of invocations per profile over specific time periods.

  • segment_filter (String, nil) (defaults to: nil)

    The destination is triggered only for profiles that meet the criteria of a segment definition.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    An array of key-value pairs to apply to this resource.



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'customer_profiles/cfn_event_trigger_props.rb', line 17

def initialize(domain_name:, event_trigger_conditions:, event_trigger_name:, object_type_name:, description: nil, event_trigger_limits: nil, segment_filter: nil, tags: nil)
  @domain_name = domain_name
  Jsii::Type.check_type(@domain_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "domainName")
  @event_trigger_conditions = event_trigger_conditions
  Jsii::Type.check_type(@event_trigger_conditions, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY3VzdG9tZXJwcm9maWxlcy5DZm5FdmVudFRyaWdnZXIuRXZlbnRUcmlnZ2VyQ29uZGl0aW9uUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "eventTriggerConditions")
  @event_trigger_name = event_trigger_name
  Jsii::Type.check_type(@event_trigger_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "eventTriggerName")
  @object_type_name = object_type_name
  Jsii::Type.check_type(@object_type_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "objectTypeName")
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @event_trigger_limits = event_trigger_limits.is_a?(Hash) ? ::AWSCDK::CustomerProfiles::CfnEventTrigger::EventTriggerLimitsProperty.new(**event_trigger_limits.transform_keys(&:to_sym)) : event_trigger_limits
  Jsii::Type.check_type(@event_trigger_limits, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jdXN0b21lcnByb2ZpbGVzLkNmbkV2ZW50VHJpZ2dlci5FdmVudFRyaWdnZXJMaW1pdHNQcm9wZXJ0eSJ9XX19")), "eventTriggerLimits") unless @event_trigger_limits.nil?
  @segment_filter = segment_filter
  Jsii::Type.check_type(@segment_filter, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "segmentFilter") unless @segment_filter.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#descriptionString? (readonly)

The description of the event trigger.



60
61
62
# File 'customer_profiles/cfn_event_trigger_props.rb', line 60

def description
  @description
end

#domain_nameString (readonly)

The unique name of the domain.



40
41
42
# File 'customer_profiles/cfn_event_trigger_props.rb', line 40

def domain_name
  @domain_name
end

#event_trigger_conditionsAWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::CustomerProfiles::CfnEventTrigger::EventTriggerConditionProperty> (readonly)

A list of conditions that determine when an event should trigger the destination.



45
46
47
# File 'customer_profiles/cfn_event_trigger_props.rb', line 45

def event_trigger_conditions
  @event_trigger_conditions
end

#event_trigger_limitsAWSCDK::IResolvable, ... (readonly)

Defines limits controlling whether an event triggers the destination, based on ingestion latency and the number of invocations per profile over specific time periods.



65
66
67
# File 'customer_profiles/cfn_event_trigger_props.rb', line 65

def event_trigger_limits
  @event_trigger_limits
end

#event_trigger_nameString (readonly)

The unique name of the event trigger.



50
51
52
# File 'customer_profiles/cfn_event_trigger_props.rb', line 50

def event_trigger_name
  @event_trigger_name
end

#object_type_nameString (readonly)

The unique name of the object type.



55
56
57
# File 'customer_profiles/cfn_event_trigger_props.rb', line 55

def object_type_name
  @object_type_name
end

#segment_filterString? (readonly)

The destination is triggered only for profiles that meet the criteria of a segment definition.



70
71
72
# File 'customer_profiles/cfn_event_trigger_props.rb', line 70

def segment_filter
  @segment_filter
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

An array of key-value pairs to apply to this resource.



75
76
77
# File 'customer_profiles/cfn_event_trigger_props.rb', line 75

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



77
78
79
80
81
82
83
84
85
86
87
88
# File 'customer_profiles/cfn_event_trigger_props.rb', line 77

def self.jsii_properties
  {
    :domain_name => "domainName",
    :event_trigger_conditions => "eventTriggerConditions",
    :event_trigger_name => "eventTriggerName",
    :object_type_name => "objectTypeName",
    :description => "description",
    :event_trigger_limits => "eventTriggerLimits",
    :segment_filter => "segmentFilter",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



90
91
92
93
94
95
96
97
98
99
100
101
102
103
# File 'customer_profiles/cfn_event_trigger_props.rb', line 90

def to_jsii
  result = {}
  result.merge!({
    "domainName" => @domain_name,
    "eventTriggerConditions" => @event_trigger_conditions,
    "eventTriggerName" => @event_trigger_name,
    "objectTypeName" => @object_type_name,
    "description" => @description,
    "eventTriggerLimits" => @event_trigger_limits,
    "segmentFilter" => @segment_filter,
    "tags" => @tags,
  })
  result.compact
end