Class: AWSCDK::AppSync::BackedDataSource
- Inherits:
-
BaseDataSource
- Object
- BaseDataSource
- AWSCDK::AppSync::BackedDataSource
- Includes:
- IAM::IGrantable
- Defined in:
- app_sync/backed_data_source.rb
Overview
Abstract AppSync datasource implementation.
Do not use directly but use subclasses for resource backed datasources
Direct Known Subclasses
DynamoDBDataSource, ElasticsearchDataSource, EventBridgeDataSource, HttpDataSource, LambdaDataSource, OpenSearchDataSource, RDSDataSource
Class Method Summary collapse
Instance Method Summary collapse
-
#api ⇒ AWSCDK::AppSync::IGraphqlAPI
The API this data source is attached to Set the API this data source is attached to.
- #api=(value) ⇒ Object
-
#create_function(id, props) ⇒ AWSCDK::AppSync::AppsyncFunction
creates a new appsync function for this datasource and API using the given properties.
-
#create_resolver(id, props) ⇒ AWSCDK::AppSync::Resolver
creates a new resolver for this datasource and API using the given properties.
-
#ds ⇒ AWSCDK::AppSync::CfnDataSource
the underlying CFN data source resource.
-
#grant_principal ⇒ AWSCDK::IAM::IPrincipal
the principal of the data source to be IGrantable.
-
#initialize(scope, id, props, extended) ⇒ BackedDataSource
constructor
A new instance of BackedDataSource.
-
#name ⇒ String
the name of the data source.
-
#node ⇒ Constructs::Node
The tree node.
- #service_role ⇒ AWSCDK::IAM::IRole?
- #service_role=(value) ⇒ Object
-
#to_string ⇒ String
Returns a string representation of this construct.
-
#with(*mixins) ⇒ Constructs::IConstruct
Applies one or more mixins to this construct.
Constructor Details
#initialize(scope, id, props, extended) ⇒ BackedDataSource
Returns a new instance of BackedDataSource.
15 16 17 18 19 20 21 22 23 |
# File 'app_sync/backed_data_source.rb', line 15 def initialize(scope, id, props, extended) props = props.is_a?(Hash) ? ::AWSCDK::AppSync::BackedDataSourceProps.new(**props.transform_keys(&:to_sym)) : props extended = extended.is_a?(Hash) ? ::AWSCDK::AppSync::ExtendedDataSourceProps.new(**extended.transform_keys(&:to_sym)) : extended Jsii::Type.check_type(scope, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLkNvbnN0cnVjdCJ9")), "scope") Jsii::Type.check_type(id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "id") Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwc3luYy5CYWNrZWREYXRhU291cmNlUHJvcHMifQ==")), "props") Jsii::Type.check_type(extended, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwc3luYy5FeHRlbmRlZERhdGFTb3VyY2VQcm9wcyJ9")), "extended") Jsii::Object.instance_method(:initialize).bind(self).call(scope, id, props, extended) end |
Class Method Details
.jsii_overridable_methods ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'app_sync/backed_data_source.rb', line 25 def self.jsii_overridable_methods { :node => { kind: :property, name: "node", is_optional: false }, :ds => { kind: :property, name: "ds", is_optional: false }, :name => { kind: :property, name: "name", is_optional: false }, :api => { kind: :property, name: "api", is_optional: false }, :service_role => { kind: :property, name: "serviceRole", is_optional: true }, :grant_principal => { kind: :property, name: "grantPrincipal", is_optional: false }, :to_string => { kind: :method, name: "toString", is_optional: false }, :with => { kind: :method, name: "with", is_optional: false }, :create_function => { kind: :method, name: "createFunction", is_optional: false }, :create_resolver => { kind: :method, name: "createResolver", is_optional: false }, } end |
Instance Method Details
#api ⇒ AWSCDK::AppSync::IGraphqlAPI
The API this data source is attached to Set the API this data source is attached to.
64 65 66 |
# File 'app_sync/backed_data_source.rb', line 64 def api() jsii_get_property("api") end |
#api=(value) ⇒ Object
68 69 70 71 |
# File 'app_sync/backed_data_source.rb', line 68 def api=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwc3luYy5JR3JhcGhxbEFwaSJ9")), "api") jsii_set_property("api", value) end |
#create_function(id, props) ⇒ AWSCDK::AppSync::AppsyncFunction
creates a new appsync function for this datasource and API using the given properties.
118 119 120 121 122 123 |
# File 'app_sync/backed_data_source.rb', line 118 def create_function(id, props) Jsii::Type.check_type(id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "id") props = props.is_a?(Hash) ? ::AWSCDK::AppSync::BaseAppsyncFunctionProps.new(**props.transform_keys(&:to_sym)) : props Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwc3luYy5CYXNlQXBwc3luY0Z1bmN0aW9uUHJvcHMifQ==")), "props") jsii_call_method("createFunction", [id, props]) end |
#create_resolver(id, props) ⇒ AWSCDK::AppSync::Resolver
creates a new resolver for this datasource and API using the given properties.
130 131 132 133 134 135 |
# File 'app_sync/backed_data_source.rb', line 130 def create_resolver(id, props) Jsii::Type.check_type(id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "id") props = props.is_a?(Hash) ? ::AWSCDK::AppSync::BaseResolverProps.new(**props.transform_keys(&:to_sym)) : props Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwc3luYy5CYXNlUmVzb2x2ZXJQcm9wcyJ9")), "props") jsii_call_method("createResolver", [id, props]) end |
#ds ⇒ AWSCDK::AppSync::CfnDataSource
the underlying CFN data source resource.
50 51 52 |
# File 'app_sync/backed_data_source.rb', line 50 def ds() jsii_get_property("ds") end |
#grant_principal ⇒ AWSCDK::IAM::IPrincipal
the principal of the data source to be IGrantable.
86 87 88 |
# File 'app_sync/backed_data_source.rb', line 86 def grant_principal() jsii_get_property("grantPrincipal") end |
#name ⇒ String
the name of the data source.
57 58 59 |
# File 'app_sync/backed_data_source.rb', line 57 def name() jsii_get_property("name") end |
#node ⇒ Constructs::Node
The tree node.
43 44 45 |
# File 'app_sync/backed_data_source.rb', line 43 def node() jsii_get_property("node") end |
#service_role ⇒ AWSCDK::IAM::IRole?
74 75 76 |
# File 'app_sync/backed_data_source.rb', line 74 def service_role() jsii_get_property("serviceRole") end |
#service_role=(value) ⇒ Object
78 79 80 81 |
# File 'app_sync/backed_data_source.rb', line 78 def service_role=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLklSb2xlIn0=")), "serviceRole") unless value.nil? jsii_set_property("serviceRole", value) end |
#to_string ⇒ String
Returns a string representation of this construct.
93 94 95 |
# File 'app_sync/backed_data_source.rb', line 93 def to_string() jsii_call_method("toString", []) end |
#with(*mixins) ⇒ Constructs::IConstruct
Applies one or more mixins to this construct.
Mixins are applied in order. The list of constructs is captured at the
start of the call, so constructs added by a mixin will not be visited.
Use multiple with() calls if subsequent mixins should apply to added
constructs.
106 107 108 109 110 111 |
# File 'app_sync/backed_data_source.rb', line 106 def with(*mixins) mixins.each_with_index do |item, index| Jsii::Type.check_type(item, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLklNaXhpbiJ9")), "mixins[#{index}]") end jsii_call_method("with", [*mixins]) end |