Class: AWSCDK::DynamoDB::CfnGlobalTable::ReplicaStreamSpecificationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
dynamo_db/cfn_global_table.rb

Overview

Represents the DynamoDB Streams configuration for a global table replica.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(resource_policy:) ⇒ ReplicaStreamSpecificationProperty

Returns a new instance of ReplicaStreamSpecificationProperty.

Parameters:



1774
1775
1776
1777
# File 'dynamo_db/cfn_global_table.rb', line 1774

def initialize(resource_policy:)
  @resource_policy = resource_policy.is_a?(Hash) ? ::AWSCDK::DynamoDB::CfnGlobalTable::ResourcePolicyProperty.new(**resource_policy.transform_keys(&:to_sym)) : resource_policy
  Jsii::Type.check_type(@resource_policy, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19keW5hbW9kYi5DZm5HbG9iYWxUYWJsZS5SZXNvdXJjZVBvbGljeVByb3BlcnR5In1dfX0=")), "resourcePolicy")
end

Instance Attribute Details

#resource_policyAWSCDK::IResolvable, AWSCDK::DynamoDB::CfnGlobalTable::ResourcePolicyProperty (readonly)

A resource-based policy document that contains the permissions for the specified stream of a DynamoDB global table replica.

Resource-based policies let you define access permissions by specifying who has access to each resource, and the actions they are allowed to perform on each resource.

In a CloudFormation template, you can provide the policy in JSON or YAML format because CloudFormation converts YAML to JSON before submitting it to DynamoDB . For more information about resource-based policies, see Using resource-based policies for DynamoDB and Resource-based policy examples .

You can update the ResourcePolicy property if you've specified more than one table using the AWS ::DynamoDB::GlobalTable resource.



1789
1790
1791
# File 'dynamo_db/cfn_global_table.rb', line 1789

def resource_policy
  @resource_policy
end

Class Method Details

.jsii_propertiesObject



1791
1792
1793
1794
1795
# File 'dynamo_db/cfn_global_table.rb', line 1791

def self.jsii_properties
  {
    :resource_policy => "resourcePolicy",
  }
end

Instance Method Details

#to_jsiiObject



1797
1798
1799
1800
1801
1802
1803
# File 'dynamo_db/cfn_global_table.rb', line 1797

def to_jsii
  result = {}
  result.merge!({
    "resourcePolicy" => @resource_policy,
  })
  result.compact
end