Class: AWSCDK::RedshiftServerless::CfnNamespace::SnapshotCopyConfigurationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
redshift_serverless/cfn_namespace.rb

Overview

The object that you configure to copy snapshots from one namespace to a namespace in another AWS Region .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(destination_region:, destination_kms_key_id: nil, snapshot_retention_period: nil) ⇒ SnapshotCopyConfigurationProperty

Returns a new instance of SnapshotCopyConfigurationProperty.

Parameters:

  • destination_region (String)

    The destination AWS Region to copy snapshots to.

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

    The ID of the KMS key to use to encrypt your snapshots in the destination AWS Region .

  • snapshot_retention_period (Numeric, nil) (defaults to: nil)

    The retention period of snapshots that are copied to the destination AWS Region .



954
955
956
957
958
959
960
961
# File 'redshift_serverless/cfn_namespace.rb', line 954

def initialize(destination_region:, destination_kms_key_id: nil, snapshot_retention_period: nil)
  @destination_region = destination_region
  Jsii::Type.check_type(@destination_region, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "destinationRegion")
  @destination_kms_key_id = destination_kms_key_id
  Jsii::Type.check_type(@destination_kms_key_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "destinationKmsKeyId") unless @destination_kms_key_id.nil?
  @snapshot_retention_period = snapshot_retention_period
  Jsii::Type.check_type(@snapshot_retention_period, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "snapshotRetentionPeriod") unless @snapshot_retention_period.nil?
end

Instance Attribute Details

#destination_kms_key_idString? (readonly)

The ID of the KMS key to use to encrypt your snapshots in the destination AWS Region .



972
973
974
# File 'redshift_serverless/cfn_namespace.rb', line 972

def destination_kms_key_id
  @destination_kms_key_id
end

#destination_regionString (readonly)

The destination AWS Region to copy snapshots to.



967
968
969
# File 'redshift_serverless/cfn_namespace.rb', line 967

def destination_region
  @destination_region
end

#snapshot_retention_periodNumeric? (readonly)

The retention period of snapshots that are copied to the destination AWS Region .



977
978
979
# File 'redshift_serverless/cfn_namespace.rb', line 977

def snapshot_retention_period
  @snapshot_retention_period
end

Class Method Details

.jsii_propertiesObject



979
980
981
982
983
984
985
# File 'redshift_serverless/cfn_namespace.rb', line 979

def self.jsii_properties
  {
    :destination_region => "destinationRegion",
    :destination_kms_key_id => "destinationKmsKeyId",
    :snapshot_retention_period => "snapshotRetentionPeriod",
  }
end

Instance Method Details

#to_jsiiObject



987
988
989
990
991
992
993
994
995
# File 'redshift_serverless/cfn_namespace.rb', line 987

def to_jsii
  result = {}
  result.merge!({
    "destinationRegion" => @destination_region,
    "destinationKmsKeyId" => @destination_kms_key_id,
    "snapshotRetentionPeriod" => @snapshot_retention_period,
  })
  result.compact
end