Class: AWSCDK::DMS::CfnDataProviderProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
dms/cfn_data_provider_props.rb

Overview

Properties for defining a CfnDataProvider.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(engine:, data_provider_identifier: nil, data_provider_name: nil, description: nil, exact_settings: nil, settings: nil, tags: nil) ⇒ CfnDataProviderProps

Returns a new instance of CfnDataProviderProps.

Parameters:

  • engine (String)

    The type of database engine for the data provider.

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

    The identifier of the data provider.

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

    The name of the data provider.

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

    A description of the data provider.

  • exact_settings (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    The property describes the exact settings which can be modified.

  • settings (AWSCDK::IResolvable, AWSCDK::DMS::CfnDataProvider::SettingsProperty, nil) (defaults to: nil)

    The settings in JSON format for a data provider.

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

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



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

def initialize(engine:, data_provider_identifier: nil, data_provider_name: nil, description: nil, exact_settings: nil, settings: nil, tags: nil)
  @engine = engine
  Jsii::Type.check_type(@engine, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "engine")
  @data_provider_identifier = data_provider_identifier
  Jsii::Type.check_type(@data_provider_identifier, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dataProviderIdentifier") unless @data_provider_identifier.nil?
  @data_provider_name = data_provider_name
  Jsii::Type.check_type(@data_provider_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dataProviderName") unless @data_provider_name.nil?
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @exact_settings = exact_settings
  Jsii::Type.check_type(@exact_settings, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "exactSettings") unless @exact_settings.nil?
  @settings = settings.is_a?(Hash) ? ::AWSCDK::DMS::CfnDataProvider::SettingsProperty.new(**settings.transform_keys(&:to_sym)) : settings
  Jsii::Type.check_type(@settings, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kbXMuQ2ZuRGF0YVByb3ZpZGVyLlNldHRpbmdzUHJvcGVydHkifV19fQ==")), "settings") unless @settings.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_provider_identifierString? (readonly)

The identifier of the data provider.

Identifiers must begin with a letter and must contain only ASCII letters, digits, and hyphens. They can't end with a hyphen, or contain two consecutive hyphens.



46
47
48
# File 'dms/cfn_data_provider_props.rb', line 46

def data_provider_identifier
  @data_provider_identifier
end

#data_provider_nameString? (readonly)

The name of the data provider.



51
52
53
# File 'dms/cfn_data_provider_props.rb', line 51

def data_provider_name
  @data_provider_name
end

#descriptionString? (readonly)

A description of the data provider.

Descriptions can have up to 31 characters. A description can contain only ASCII letters, digits, and hyphens ('-'). Also, it can't end with a hyphen or contain two consecutive hyphens, and can only begin with a letter.



58
59
60
# File 'dms/cfn_data_provider_props.rb', line 58

def description
  @description
end

#engineString (readonly)

The type of database engine for the data provider.

Valid values include "aurora" , "aurora-postgresql" , "mysql" , "oracle" , "postgres" , "sqlserver" , redshift , mariadb , mongodb , db2 , db2-zos , docdb , and sybase . A value of "aurora" represents Amazon Aurora MySQL-Compatible Edition.



39
40
41
# File 'dms/cfn_data_provider_props.rb', line 39

def engine
  @engine
end

#exact_settingsBoolean, ... (readonly)

Note:

Default: - false

The property describes the exact settings which can be modified.



64
65
66
# File 'dms/cfn_data_provider_props.rb', line 64

def exact_settings
  @exact_settings
end

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

The settings in JSON format for a data provider.



69
70
71
# File 'dms/cfn_data_provider_props.rb', line 69

def settings
  @settings
end

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

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



74
75
76
# File 'dms/cfn_data_provider_props.rb', line 74

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



76
77
78
79
80
81
82
83
84
85
86
# File 'dms/cfn_data_provider_props.rb', line 76

def self.jsii_properties
  {
    :engine => "engine",
    :data_provider_identifier => "dataProviderIdentifier",
    :data_provider_name => "dataProviderName",
    :description => "description",
    :exact_settings => "exactSettings",
    :settings => "settings",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



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

def to_jsii
  result = {}
  result.merge!({
    "engine" => @engine,
    "dataProviderIdentifier" => @data_provider_identifier,
    "dataProviderName" => @data_provider_name,
    "description" => @description,
    "exactSettings" => @exact_settings,
    "settings" => @settings,
    "tags" => @tags,
  })
  result.compact
end