Class: AWSCDK::SES::CfnConfigurationSetProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
ses/cfn_configuration_set_props.rb

Overview

Properties for defining a CfnConfigurationSet.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(archiving_options: nil, delivery_options: nil, name: nil, reputation_options: nil, sending_options: nil, suppression_options: nil, tags: nil, tracking_options: nil, vdm_options: nil) ⇒ CfnConfigurationSetProps

Returns a new instance of CfnConfigurationSetProps.

Parameters:



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'ses/cfn_configuration_set_props.rb', line 18

def initialize(archiving_options: nil, delivery_options: nil, name: nil, reputation_options: nil, sending_options: nil, suppression_options: nil, tags: nil, tracking_options: nil, vdm_options: nil)
  @archiving_options = archiving_options.is_a?(Hash) ? ::AWSCDK::SES::CfnConfigurationSet::ArchivingOptionsProperty.new(**archiving_options.transform_keys(&:to_sym)) : archiving_options
  Jsii::Type.check_type(@archiving_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zZXMuQ2ZuQ29uZmlndXJhdGlvblNldC5BcmNoaXZpbmdPcHRpb25zUHJvcGVydHkifV19fQ==")), "archivingOptions") unless @archiving_options.nil?
  @delivery_options = delivery_options.is_a?(Hash) ? ::AWSCDK::SES::CfnConfigurationSet::DeliveryOptionsProperty.new(**delivery_options.transform_keys(&:to_sym)) : delivery_options
  Jsii::Type.check_type(@delivery_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zZXMuQ2ZuQ29uZmlndXJhdGlvblNldC5EZWxpdmVyeU9wdGlvbnNQcm9wZXJ0eSJ9XX19")), "deliveryOptions") unless @delivery_options.nil?
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.nil?
  @reputation_options = reputation_options.is_a?(Hash) ? ::AWSCDK::SES::CfnConfigurationSet::ReputationOptionsProperty.new(**reputation_options.transform_keys(&:to_sym)) : reputation_options
  Jsii::Type.check_type(@reputation_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zZXMuQ2ZuQ29uZmlndXJhdGlvblNldC5SZXB1dGF0aW9uT3B0aW9uc1Byb3BlcnR5In1dfX0=")), "reputationOptions") unless @reputation_options.nil?
  @sending_options = sending_options.is_a?(Hash) ? ::AWSCDK::SES::CfnConfigurationSet::SendingOptionsProperty.new(**sending_options.transform_keys(&:to_sym)) : sending_options
  Jsii::Type.check_type(@sending_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zZXMuQ2ZuQ29uZmlndXJhdGlvblNldC5TZW5kaW5nT3B0aW9uc1Byb3BlcnR5In1dfX0=")), "sendingOptions") unless @sending_options.nil?
  @suppression_options = suppression_options.is_a?(Hash) ? ::AWSCDK::SES::CfnConfigurationSet::SuppressionOptionsProperty.new(**suppression_options.transform_keys(&:to_sym)) : suppression_options
  Jsii::Type.check_type(@suppression_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zZXMuQ2ZuQ29uZmlndXJhdGlvblNldC5TdXBwcmVzc2lvbk9wdGlvbnNQcm9wZXJ0eSJ9XX19")), "suppressionOptions") unless @suppression_options.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?
  @tracking_options = tracking_options.is_a?(Hash) ? ::AWSCDK::SES::CfnConfigurationSet::TrackingOptionsProperty.new(**tracking_options.transform_keys(&:to_sym)) : tracking_options
  Jsii::Type.check_type(@tracking_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zZXMuQ2ZuQ29uZmlndXJhdGlvblNldC5UcmFja2luZ09wdGlvbnNQcm9wZXJ0eSJ9XX19")), "trackingOptions") unless @tracking_options.nil?
  @vdm_options = vdm_options.is_a?(Hash) ? ::AWSCDK::SES::CfnConfigurationSet::VdmOptionsProperty.new(**vdm_options.transform_keys(&:to_sym)) : vdm_options
  Jsii::Type.check_type(@vdm_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zZXMuQ2ZuQ29uZmlndXJhdGlvblNldC5WZG1PcHRpb25zUHJvcGVydHkifV19fQ==")), "vdmOptions") unless @vdm_options.nil?
end

Instance Attribute Details

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

An object that defines a MailManager archive that is used to preserve emails that you send using the configuration set.



43
44
45
# File 'ses/cfn_configuration_set_props.rb', line 43

def archiving_options
  @archiving_options
end

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

Specifies the name of the dedicated IP pool to associate with the configuration set and whether messages that use the configuration set are required to use Transport Layer Security (TLS).



48
49
50
# File 'ses/cfn_configuration_set_props.rb', line 48

def delivery_options
  @delivery_options
end

#nameString? (readonly)

The name of the configuration set. The name must meet the following requirements:.

  • Contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-).
  • Contain 64 characters or fewer.


56
57
58
# File 'ses/cfn_configuration_set_props.rb', line 56

def name
  @name
end

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

An object that defines whether or not Amazon SES collects reputation metrics for the emails that you send that use the configuration set.



61
62
63
# File 'ses/cfn_configuration_set_props.rb', line 61

def reputation_options
  @reputation_options
end

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

An object that defines whether or not Amazon SES can send email that you send using the configuration set.



66
67
68
# File 'ses/cfn_configuration_set_props.rb', line 66

def sending_options
  @sending_options
end

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

An object that contains information about the suppression list preferences for your account.



71
72
73
# File 'ses/cfn_configuration_set_props.rb', line 71

def suppression_options
  @suppression_options
end

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

An array of objects that define the tags (keys and values) that are associated with the configuration set.



76
77
78
# File 'ses/cfn_configuration_set_props.rb', line 76

def tags
  @tags
end

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

An object that defines the open and click tracking options for emails that you send using the configuration set.



81
82
83
# File 'ses/cfn_configuration_set_props.rb', line 81

def tracking_options
  @tracking_options
end

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

The Virtual Deliverability Manager (VDM) options that apply to the configuration set.



86
87
88
# File 'ses/cfn_configuration_set_props.rb', line 86

def vdm_options
  @vdm_options
end

Class Method Details

.jsii_propertiesObject



88
89
90
91
92
93
94
95
96
97
98
99
100
# File 'ses/cfn_configuration_set_props.rb', line 88

def self.jsii_properties
  {
    :archiving_options => "archivingOptions",
    :delivery_options => "deliveryOptions",
    :name => "name",
    :reputation_options => "reputationOptions",
    :sending_options => "sendingOptions",
    :suppression_options => "suppressionOptions",
    :tags => "tags",
    :tracking_options => "trackingOptions",
    :vdm_options => "vdmOptions",
  }
end

Instance Method Details

#to_jsiiObject



102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# File 'ses/cfn_configuration_set_props.rb', line 102

def to_jsii
  result = {}
  result.merge!({
    "archivingOptions" => @archiving_options,
    "deliveryOptions" => @delivery_options,
    "name" => @name,
    "reputationOptions" => @reputation_options,
    "sendingOptions" => @sending_options,
    "suppressionOptions" => @suppression_options,
    "tags" => @tags,
    "trackingOptions" => @tracking_options,
    "vdmOptions" => @vdm_options,
  })
  result.compact
end