Class: AWSCDK::CustomerProfiles::CfnDomainProps

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

Overview

Properties for defining a CfnDomain.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(default_expiration_days:, domain_name:, data_store: nil, dead_letter_queue_url: nil, default_encryption_key: nil, matching: nil, rule_based_matching: nil, tags: nil) ⇒ CfnDomainProps

Returns a new instance of CfnDomainProps.

Parameters:

  • default_expiration_days (Numeric)

    The default number of days until the data within the domain expires.

  • domain_name (String)

    The unique name of the domain.

  • data_store (AWSCDK::IResolvable, AWSCDK::CustomerProfiles::CfnDomain::DataStoreProperty, nil) (defaults to: nil)

    Configuration and status of the data store for the domain.

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

    The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.

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

    The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified.

  • matching (AWSCDK::IResolvable, AWSCDK::CustomerProfiles::CfnDomain::MatchingProperty, nil) (defaults to: nil)

    The process of matching duplicate profiles.

  • rule_based_matching (AWSCDK::IResolvable, AWSCDK::CustomerProfiles::CfnDomain::RuleBasedMatchingProperty, nil) (defaults to: nil)

    The process of matching duplicate profiles using Rule-Based matching.

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

    The tags used to organize, track, or control access for this resource.



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

def initialize(default_expiration_days:, domain_name:, data_store: nil, dead_letter_queue_url: nil, default_encryption_key: nil, matching: nil, rule_based_matching: nil, tags: nil)
  @default_expiration_days = default_expiration_days
  Jsii::Type.check_type(@default_expiration_days, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "defaultExpirationDays")
  @domain_name = domain_name
  Jsii::Type.check_type(@domain_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "domainName")
  @data_store = data_store.is_a?(Hash) ? ::AWSCDK::CustomerProfiles::CfnDomain::DataStoreProperty.new(**data_store.transform_keys(&:to_sym)) : data_store
  Jsii::Type.check_type(@data_store, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jdXN0b21lcnByb2ZpbGVzLkNmbkRvbWFpbi5EYXRhU3RvcmVQcm9wZXJ0eSJ9XX19")), "dataStore") unless @data_store.nil?
  @dead_letter_queue_url = dead_letter_queue_url
  Jsii::Type.check_type(@dead_letter_queue_url, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "deadLetterQueueUrl") unless @dead_letter_queue_url.nil?
  @default_encryption_key = default_encryption_key
  Jsii::Type.check_type(@default_encryption_key, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "defaultEncryptionKey") unless @default_encryption_key.nil?
  @matching = matching.is_a?(Hash) ? ::AWSCDK::CustomerProfiles::CfnDomain::MatchingProperty.new(**matching.transform_keys(&:to_sym)) : matching
  Jsii::Type.check_type(@matching, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jdXN0b21lcnByb2ZpbGVzLkNmbkRvbWFpbi5NYXRjaGluZ1Byb3BlcnR5In1dfX0=")), "matching") unless @matching.nil?
  @rule_based_matching = rule_based_matching.is_a?(Hash) ? ::AWSCDK::CustomerProfiles::CfnDomain::RuleBasedMatchingProperty.new(**rule_based_matching.transform_keys(&:to_sym)) : rule_based_matching
  Jsii::Type.check_type(@rule_based_matching, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jdXN0b21lcnByb2ZpbGVzLkNmbkRvbWFpbi5SdWxlQmFzZWRNYXRjaGluZ1Byb3BlcnR5In1dfX0=")), "ruleBasedMatching") unless @rule_based_matching.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

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

Configuration and status of the data store for the domain.



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

def data_store
  @data_store
end

#dead_letter_queue_urlString? (readonly)

The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.

You must set up a policy on the DeadLetterQueue for the SendMessage operation to enable Amazon Connect Customer Profiles to send messages to the DeadLetterQueue .



57
58
59
# File 'customer_profiles/cfn_domain_props.rb', line 57

def dead_letter_queue_url
  @dead_letter_queue_url
end

#default_encryption_keyString? (readonly)

The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified.

It is used to encrypt all data before it is placed in permanent or semi-permanent storage.



64
65
66
# File 'customer_profiles/cfn_domain_props.rb', line 64

def default_encryption_key
  @default_encryption_key
end

#default_expiration_daysNumeric (readonly)

The default number of days until the data within the domain expires.



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

def default_expiration_days
  @default_expiration_days
end

#domain_nameString (readonly)

The unique name of the domain.



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

def domain_name
  @domain_name
end

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

The process of matching duplicate profiles.



69
70
71
# File 'customer_profiles/cfn_domain_props.rb', line 69

def matching
  @matching
end

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

The process of matching duplicate profiles using Rule-Based matching.



74
75
76
# File 'customer_profiles/cfn_domain_props.rb', line 74

def rule_based_matching
  @rule_based_matching
end

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

The tags used to organize, track, or control access for this resource.



79
80
81
# File 'customer_profiles/cfn_domain_props.rb', line 79

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



81
82
83
84
85
86
87
88
89
90
91
92
# File 'customer_profiles/cfn_domain_props.rb', line 81

def self.jsii_properties
  {
    :default_expiration_days => "defaultExpirationDays",
    :domain_name => "domainName",
    :data_store => "dataStore",
    :dead_letter_queue_url => "deadLetterQueueUrl",
    :default_encryption_key => "defaultEncryptionKey",
    :matching => "matching",
    :rule_based_matching => "ruleBasedMatching",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



94
95
96
97
98
99
100
101
102
103
104
105
106
107
# File 'customer_profiles/cfn_domain_props.rb', line 94

def to_jsii
  result = {}
  result.merge!({
    "defaultExpirationDays" => @default_expiration_days,
    "domainName" => @domain_name,
    "dataStore" => @data_store,
    "deadLetterQueueUrl" => @dead_letter_queue_url,
    "defaultEncryptionKey" => @default_encryption_key,
    "matching" => @matching,
    "ruleBasedMatching" => @rule_based_matching,
    "tags" => @tags,
  })
  result.compact
end