Class: AWSCDK::Amplify::CfnDomainProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
amplify/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(app_id:, domain_name:, sub_domain_settings:, auto_sub_domain_creation_patterns: nil, auto_sub_domain_iam_role: nil, certificate_settings: nil, enable_auto_sub_domain: nil) ⇒ CfnDomainProps

Returns a new instance of CfnDomainProps.

Parameters:



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

def initialize(app_id:, domain_name:, sub_domain_settings:, auto_sub_domain_creation_patterns: nil, auto_sub_domain_iam_role: nil, certificate_settings: nil, enable_auto_sub_domain: nil)
  @app_id = app_id
  Jsii::Type.check_type(@app_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "appId")
  @domain_name = domain_name
  Jsii::Type.check_type(@domain_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "domainName")
  @sub_domain_settings = sub_domain_settings
  Jsii::Type.check_type(@sub_domain_settings, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYW1wbGlmeS5DZm5Eb21haW4uU3ViRG9tYWluU2V0dGluZ1Byb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "subDomainSettings")
  @auto_sub_domain_creation_patterns = auto_sub_domain_creation_patterns
  Jsii::Type.check_type(@auto_sub_domain_creation_patterns, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "autoSubDomainCreationPatterns") unless @auto_sub_domain_creation_patterns.nil?
  @auto_sub_domain_iam_role = auto_sub_domain_iam_role
  Jsii::Type.check_type(@auto_sub_domain_iam_role, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19pYW0uSVJvbGVSZWYifV19fQ==")), "autoSubDomainIamRole") unless @auto_sub_domain_iam_role.nil?
  @certificate_settings = certificate_settings.is_a?(Hash) ? ::AWSCDK::Amplify::CfnDomain::CertificateSettingsProperty.new(**certificate_settings.transform_keys(&:to_sym)) : certificate_settings
  Jsii::Type.check_type(@certificate_settings, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hbXBsaWZ5LkNmbkRvbWFpbi5DZXJ0aWZpY2F0ZVNldHRpbmdzUHJvcGVydHkifV19fQ==")), "certificateSettings") unless @certificate_settings.nil?
  @enable_auto_sub_domain = enable_auto_sub_domain
  Jsii::Type.check_type(@enable_auto_sub_domain, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enableAutoSubDomain") unless @enable_auto_sub_domain.nil?
end

Instance Attribute Details

#app_idString (readonly)

The unique ID for an Amplify app.



37
38
39
# File 'amplify/cfn_domain_props.rb', line 37

def app_id
  @app_id
end

#auto_sub_domain_creation_patternsArray<String>? (readonly)

Sets the branch patterns for automatic subdomain creation.



52
53
54
# File 'amplify/cfn_domain_props.rb', line 52

def auto_sub_domain_creation_patterns
  @auto_sub_domain_creation_patterns
end

#auto_sub_domain_iam_roleString, ... (readonly)

The required AWS Identity and Access Management (IAMlong) service role for the Amazon Resource Name (ARN) for automatically creating subdomains.



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

def auto_sub_domain_iam_role
  @auto_sub_domain_iam_role
end

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

The type of SSL/TLS certificate to use for your custom domain.

If you don't specify a certificate type, Amplify uses the default certificate that it provisions and manages for you.



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

def certificate_settings
  @certificate_settings
end

#domain_nameString (readonly)

The domain name for the domain association.



42
43
44
# File 'amplify/cfn_domain_props.rb', line 42

def domain_name
  @domain_name
end

#enable_auto_sub_domainBoolean, ... (readonly)

Enables the automated creation of subdomains for branches.



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

def enable_auto_sub_domain
  @enable_auto_sub_domain
end

#sub_domain_settingsAWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::Amplify::CfnDomain::SubDomainSettingProperty> (readonly)

The setting for the subdomain.



47
48
49
# File 'amplify/cfn_domain_props.rb', line 47

def sub_domain_settings
  @sub_domain_settings
end

Class Method Details

.jsii_propertiesObject



71
72
73
74
75
76
77
78
79
80
81
# File 'amplify/cfn_domain_props.rb', line 71

def self.jsii_properties
  {
    :app_id => "appId",
    :domain_name => "domainName",
    :sub_domain_settings => "subDomainSettings",
    :auto_sub_domain_creation_patterns => "autoSubDomainCreationPatterns",
    :auto_sub_domain_iam_role => "autoSubDomainIamRole",
    :certificate_settings => "certificateSettings",
    :enable_auto_sub_domain => "enableAutoSubDomain",
  }
end

Instance Method Details

#to_jsiiObject



83
84
85
86
87
88
89
90
91
92
93
94
95
# File 'amplify/cfn_domain_props.rb', line 83

def to_jsii
  result = {}
  result.merge!({
    "appId" => @app_id,
    "domainName" => @domain_name,
    "subDomainSettings" => @sub_domain_settings,
    "autoSubDomainCreationPatterns" => @auto_sub_domain_creation_patterns,
    "autoSubDomainIamRole" => @auto_sub_domain_iam_role,
    "certificateSettings" => @certificate_settings,
    "enableAutoSubDomain" => @enable_auto_sub_domain,
  })
  result.compact
end