Class: AWSCDK::AppSync::DynamoDBDataSourceProps
- Inherits:
-
BackedDataSourceProps
- Object
- BackedDataSourceProps
- AWSCDK::AppSync::DynamoDBDataSourceProps
- Defined in:
- app_sync/dynamo_db_data_source_props.rb
Overview
Properties for an AppSync DynamoDB datasource.
Instance Attribute Summary collapse
-
#api ⇒ AWSCDK::Interfaces::AWSAppsync::IGraphQLAPIRef
readonly
The API to attach this data source to.
-
#description ⇒ String?
readonly
the description of the data source.
-
#metrics_config ⇒ AWSCDK::AppSync::DataSourceMetricsConfig?
readonly
Whether to enable enhanced metrics of the data source Value will be ignored, if
enhancedMetricsConfig.dataSourceLevelMetricsBehavioron AppSync GraphqlApi construct is set toFULL_REQUEST_DATA_SOURCE_METRICS. -
#name ⇒ String?
readonly
The name of the data source.
-
#read_only_access ⇒ Boolean?
readonly
Specify whether this DS is read only or has read and write permissions to the DynamoDB table.
-
#service_role ⇒ AWSCDK::IAM::IRole?
readonly
The IAM service role to be assumed by AppSync to interact with the data source.
-
#table ⇒ AWSCDK::DynamoDB::ITable
readonly
The DynamoDB table backing this data source.
-
#use_caller_credentials ⇒ Boolean?
readonly
use credentials of caller to access DynamoDB.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(api:, description: nil, metrics_config: nil, name: nil, service_role: nil, table:, read_only_access: nil, use_caller_credentials: nil) ⇒ DynamoDBDataSourceProps
constructor
A new instance of DynamoDBDataSourceProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(api:, description: nil, metrics_config: nil, name: nil, service_role: nil, table:, read_only_access: nil, use_caller_credentials: nil) ⇒ DynamoDBDataSourceProps
Returns a new instance of DynamoDBDataSourceProps.
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'app_sync/dynamo_db_data_source_props.rb', line 15 def initialize(api:, description: nil, metrics_config: nil, name: nil, service_role: nil, table:, read_only_access: nil, use_caller_credentials: nil) @api = api Jsii::Type.check_type(@api, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19hcHBzeW5jLklHcmFwaFFMQXBpUmVmIn0=")), "api") @description = description Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil? @metrics_config = metrics_config Jsii::Type.check_type(@metrics_config, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwc3luYy5EYXRhU291cmNlTWV0cmljc0NvbmZpZyJ9")), "metricsConfig") unless @metrics_config.nil? @name = name Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.nil? @service_role = service_role Jsii::Type.check_type(@service_role, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLklSb2xlIn0=")), "serviceRole") unless @service_role.nil? @table = table Jsii::Type.check_type(@table, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZHluYW1vZGIuSVRhYmxlIn0=")), "table") @read_only_access = read_only_access Jsii::Type.check_type(@read_only_access, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "readOnlyAccess") unless @read_only_access.nil? @use_caller_credentials = use_caller_credentials Jsii::Type.check_type(@use_caller_credentials, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "useCallerCredentials") unless @use_caller_credentials.nil? end |
Instance Attribute Details
#api ⇒ AWSCDK::Interfaces::AWSAppsync::IGraphQLAPIRef (readonly)
The API to attach this data source to.
37 38 39 |
# File 'app_sync/dynamo_db_data_source_props.rb', line 37 def api @api end |
#description ⇒ String? (readonly)
Default: - None
the description of the data source.
42 43 44 |
# File 'app_sync/dynamo_db_data_source_props.rb', line 42 def description @description end |
#metrics_config ⇒ AWSCDK::AppSync::DataSourceMetricsConfig? (readonly)
Default: - no metrics configuration
Whether to enable enhanced metrics of the data source Value will be ignored, if enhancedMetricsConfig.dataSourceLevelMetricsBehavior on AppSync GraphqlApi construct is set to FULL_REQUEST_DATA_SOURCE_METRICS.
47 48 49 |
# File 'app_sync/dynamo_db_data_source_props.rb', line 47 def metrics_config @metrics_config end |
#name ⇒ String? (readonly)
Default: - id of data source
The name of the data source.
52 53 54 |
# File 'app_sync/dynamo_db_data_source_props.rb', line 52 def name @name end |
#read_only_access ⇒ Boolean? (readonly)
Default: false
Specify whether this DS is read only or has read and write permissions to the DynamoDB table.
66 67 68 |
# File 'app_sync/dynamo_db_data_source_props.rb', line 66 def read_only_access @read_only_access end |
#service_role ⇒ AWSCDK::IAM::IRole? (readonly)
Default: - Create a new role
The IAM service role to be assumed by AppSync to interact with the data source.
57 58 59 |
# File 'app_sync/dynamo_db_data_source_props.rb', line 57 def service_role @service_role end |
#table ⇒ AWSCDK::DynamoDB::ITable (readonly)
The DynamoDB table backing this data source.
61 62 63 |
# File 'app_sync/dynamo_db_data_source_props.rb', line 61 def table @table end |
#use_caller_credentials ⇒ Boolean? (readonly)
Default: false
use credentials of caller to access DynamoDB.
71 72 73 |
# File 'app_sync/dynamo_db_data_source_props.rb', line 71 def use_caller_credentials @use_caller_credentials end |
Class Method Details
.jsii_properties ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 |
# File 'app_sync/dynamo_db_data_source_props.rb', line 73 def self.jsii_properties { :api => "api", :description => "description", :metrics_config => "metricsConfig", :name => "name", :service_role => "serviceRole", :table => "table", :read_only_access => "readOnlyAccess", :use_caller_credentials => "useCallerCredentials", } end |
Instance Method Details
#to_jsii ⇒ Object
86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
# File 'app_sync/dynamo_db_data_source_props.rb', line 86 def to_jsii result = {} result.merge!(super) result.merge!({ "api" => @api, "description" => @description, "metricsConfig" => @metrics_config, "name" => @name, "serviceRole" => @service_role, "table" => @table, "readOnlyAccess" => @read_only_access, "useCallerCredentials" => @use_caller_credentials, }) result.compact end |