Class: AWSCDK::Events::CfnRule::RedshiftDataParametersProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
events/cfn_rule.rb

Overview

These are custom parameters to be used when the target is a Amazon Redshift cluster to invoke the Amazon Redshift Data API ExecuteStatement based on EventBridge events.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(database:, db_user: nil, secret_manager_arn: nil, sql: nil, sqls: nil, statement_name: nil, with_event: nil) ⇒ RedshiftDataParametersProperty

Returns a new instance of RedshiftDataParametersProperty.

Parameters:

  • database (String)

    The name of the database.

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

    The database user name.

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

    The name or ARN of the secret that enables access to the database.

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

    The SQL statement text to run.

  • sqls (Array<String>, nil) (defaults to: nil)

    One or more SQL statements to run.

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

    The name of the SQL statement.

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

    Indicates whether to send an event back to EventBridge after the SQL statement runs.



1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
# File 'events/cfn_rule.rb', line 1500

def initialize(database:, db_user: nil, secret_manager_arn: nil, sql: nil, sqls: nil, statement_name: nil, with_event: nil)
  @database = database
  Jsii::Type.check_type(@database, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "database")
  @db_user = db_user
  Jsii::Type.check_type(@db_user, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dbUser") unless @db_user.nil?
  @secret_manager_arn = secret_manager_arn
  Jsii::Type.check_type(@secret_manager_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "secretManagerArn") unless @secret_manager_arn.nil?
  @sql = sql
  Jsii::Type.check_type(@sql, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sql") unless @sql.nil?
  @sqls = sqls
  Jsii::Type.check_type(@sqls, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "sqls") unless @sqls.nil?
  @statement_name = statement_name
  Jsii::Type.check_type(@statement_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "statementName") unless @statement_name.nil?
  @with_event = with_event
  Jsii::Type.check_type(@with_event, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "withEvent") unless @with_event.nil?
end

Instance Attribute Details

#databaseString (readonly)

The name of the database.

Required when authenticating using temporary credentials.



1523
1524
1525
# File 'events/cfn_rule.rb', line 1523

def database
  @database
end

#db_userString? (readonly)

The database user name.

Required when authenticating using temporary credentials.



1530
1531
1532
# File 'events/cfn_rule.rb', line 1530

def db_user
  @db_user
end

#secret_manager_arnString? (readonly)

The name or ARN of the secret that enables access to the database.

Required when authenticating using AWS Secrets Manager.



1537
1538
1539
# File 'events/cfn_rule.rb', line 1537

def secret_manager_arn
  @secret_manager_arn
end

#sqlString? (readonly)

The SQL statement text to run.



1542
1543
1544
# File 'events/cfn_rule.rb', line 1542

def sql
  @sql
end

#sqlsArray<String>? (readonly)

One or more SQL statements to run.

The SQL statements are run as a single transaction. They run serially in the order of the array. Subsequent SQL statements don't start until the previous statement in the array completes. If any SQL statement fails, then because they are run as one transaction, all work is rolled back.



1549
1550
1551
# File 'events/cfn_rule.rb', line 1549

def sqls
  @sqls
end

#statement_nameString? (readonly)

The name of the SQL statement.

You can name the SQL statement when you create it to identify the query.



1556
1557
1558
# File 'events/cfn_rule.rb', line 1556

def statement_name
  @statement_name
end

#with_eventBoolean, ... (readonly)

Indicates whether to send an event back to EventBridge after the SQL statement runs.



1561
1562
1563
# File 'events/cfn_rule.rb', line 1561

def with_event
  @with_event
end

Class Method Details

.jsii_propertiesObject



1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
# File 'events/cfn_rule.rb', line 1563

def self.jsii_properties
  {
    :database => "database",
    :db_user => "dbUser",
    :secret_manager_arn => "secretManagerArn",
    :sql => "sql",
    :sqls => "sqls",
    :statement_name => "statementName",
    :with_event => "withEvent",
  }
end

Instance Method Details

#to_jsiiObject



1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
# File 'events/cfn_rule.rb', line 1575

def to_jsii
  result = {}
  result.merge!({
    "database" => @database,
    "dbUser" => @db_user,
    "secretManagerArn" => @secret_manager_arn,
    "sql" => @sql,
    "sqls" => @sqls,
    "statementName" => @statement_name,
    "withEvent" => @with_event,
  })
  result.compact
end