Class: AWSCDK::AppFlow::CfnConnectorProfile::RedshiftConnectorProfilePropertiesProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
app_flow/cfn_connector_profile.rb

Overview

The connector-specific profile properties when using Amazon Redshift.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(bucket_name:, role_arn:, bucket_prefix: nil, cluster_identifier: nil, data_api_role_arn: nil, database_name: nil, database_url: nil, is_redshift_serverless: nil, workgroup_name: nil) ⇒ RedshiftConnectorProfilePropertiesProperty

Returns a new instance of RedshiftConnectorProfilePropertiesProperty.

Parameters:

  • bucket_name (String)

    A name for the associated Amazon S3 bucket.

  • role_arn (String)

    The Amazon Resource Name (ARN) of IAM role that grants Amazon Redshift read-only access to Amazon S3.

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

    The object key for the destination bucket in which Amazon AppFlow places the files.

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

    The unique ID that's assigned to an Amazon Redshift cluster.

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

    The Amazon Resource Name (ARN) of an IAM role that permits Amazon AppFlow to access your Amazon Redshift database through the Data API.

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

    The name of an Amazon Redshift database.

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

    The JDBC URL of the Amazon Redshift cluster.

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

    Indicates whether the connector profile defines a connection to an Amazon Redshift Serverless data warehouse.

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

    The name of an Amazon Redshift workgroup.



2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
# File 'app_flow/cfn_connector_profile.rb', line 2151

def initialize(bucket_name:, role_arn:, bucket_prefix: nil, cluster_identifier: nil, data_api_role_arn: nil, database_name: nil, database_url: nil, is_redshift_serverless: nil, workgroup_name: nil)
  @bucket_name = bucket_name
  Jsii::Type.check_type(@bucket_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "bucketName")
  @role_arn = role_arn
  Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn")
  @bucket_prefix = bucket_prefix
  Jsii::Type.check_type(@bucket_prefix, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "bucketPrefix") unless @bucket_prefix.nil?
  @cluster_identifier = cluster_identifier
  Jsii::Type.check_type(@cluster_identifier, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "clusterIdentifier") unless @cluster_identifier.nil?
  @data_api_role_arn = data_api_role_arn
  Jsii::Type.check_type(@data_api_role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dataApiRoleArn") unless @data_api_role_arn.nil?
  @database_name = database_name
  Jsii::Type.check_type(@database_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "databaseName") unless @database_name.nil?
  @database_url = database_url
  Jsii::Type.check_type(@database_url, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "databaseUrl") unless @database_url.nil?
  @is_redshift_serverless = is_redshift_serverless
  Jsii::Type.check_type(@is_redshift_serverless, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "isRedshiftServerless") unless @is_redshift_serverless.nil?
  @workgroup_name = workgroup_name
  Jsii::Type.check_type(@workgroup_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "workgroupName") unless @workgroup_name.nil?
end

Instance Attribute Details

#bucket_nameString (readonly)

A name for the associated Amazon S3 bucket.



2176
2177
2178
# File 'app_flow/cfn_connector_profile.rb', line 2176

def bucket_name
  @bucket_name
end

#bucket_prefixString? (readonly)

The object key for the destination bucket in which Amazon AppFlow places the files.



2188
2189
2190
# File 'app_flow/cfn_connector_profile.rb', line 2188

def bucket_prefix
  @bucket_prefix
end

#cluster_identifierString? (readonly)

The unique ID that's assigned to an Amazon Redshift cluster.



2193
2194
2195
# File 'app_flow/cfn_connector_profile.rb', line 2193

def cluster_identifier
  @cluster_identifier
end

#data_api_role_arnString? (readonly)

The Amazon Resource Name (ARN) of an IAM role that permits Amazon AppFlow to access your Amazon Redshift database through the Data API.

For more information, and for the polices that you attach to this role, see Allow Amazon AppFlow to access Amazon Redshift databases with the Data API .



2200
2201
2202
# File 'app_flow/cfn_connector_profile.rb', line 2200

def data_api_role_arn
  @data_api_role_arn
end

#database_nameString? (readonly)

The name of an Amazon Redshift database.



2205
2206
2207
# File 'app_flow/cfn_connector_profile.rb', line 2205

def database_name
  @database_name
end

#database_urlString? (readonly)

The JDBC URL of the Amazon Redshift cluster.



2210
2211
2212
# File 'app_flow/cfn_connector_profile.rb', line 2210

def database_url
  @database_url
end

#is_redshift_serverlessBoolean, ... (readonly)

Indicates whether the connector profile defines a connection to an Amazon Redshift Serverless data warehouse.



2215
2216
2217
# File 'app_flow/cfn_connector_profile.rb', line 2215

def is_redshift_serverless
  @is_redshift_serverless
end

#role_arnString (readonly)

The Amazon Resource Name (ARN) of IAM role that grants Amazon Redshift read-only access to Amazon S3.

For more information, and for the polices that you attach to this role, see Allow Amazon Redshift to access your Amazon AppFlow data in Amazon S3 .



2183
2184
2185
# File 'app_flow/cfn_connector_profile.rb', line 2183

def role_arn
  @role_arn
end

#workgroup_nameString? (readonly)

The name of an Amazon Redshift workgroup.



2220
2221
2222
# File 'app_flow/cfn_connector_profile.rb', line 2220

def workgroup_name
  @workgroup_name
end

Class Method Details

.jsii_propertiesObject



2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
# File 'app_flow/cfn_connector_profile.rb', line 2222

def self.jsii_properties
  {
    :bucket_name => "bucketName",
    :role_arn => "roleArn",
    :bucket_prefix => "bucketPrefix",
    :cluster_identifier => "clusterIdentifier",
    :data_api_role_arn => "dataApiRoleArn",
    :database_name => "databaseName",
    :database_url => "databaseUrl",
    :is_redshift_serverless => "isRedshiftServerless",
    :workgroup_name => "workgroupName",
  }
end

Instance Method Details

#to_jsiiObject



2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
# File 'app_flow/cfn_connector_profile.rb', line 2236

def to_jsii
  result = {}
  result.merge!({
    "bucketName" => @bucket_name,
    "roleArn" => @role_arn,
    "bucketPrefix" => @bucket_prefix,
    "clusterIdentifier" => @cluster_identifier,
    "dataApiRoleArn" => @data_api_role_arn,
    "databaseName" => @database_name,
    "databaseUrl" => @database_url,
    "isRedshiftServerless" => @is_redshift_serverless,
    "workgroupName" => @workgroup_name,
  })
  result.compact
end