class EventBridgeDataSource (construct)
| Language | Type name |
|---|---|
.NET | Amazon.CDK.AWS.AppSync.EventBridgeDataSource |
Go | github.com/aws/aws-cdk-go/awscdk/v2/awsappsync#EventBridgeDataSource |
Java | software.amazon.awscdk.services.appsync.EventBridgeDataSource |
Python | aws_cdk.aws_appsync.EventBridgeDataSource |
TypeScript (source) | aws-cdk-lib » aws_appsync » EventBridgeDataSource |
Implements
IConstruct, IDependable, IGrantable
An AppSync datasource backed by EventBridge.
Example
import * as events from 'aws-cdk-lib/aws-events';
const api = new appsync.GraphqlApi(this, 'EventBridgeApi', {
name: 'EventBridgeApi',
definition: appsync.Definition.fromFile(path.join(__dirname, 'appsync.eventbridge.graphql')),
});
const bus = new events.EventBus(this, 'DestinationEventBus', {});
const dataSource = api.addEventBridgeDataSource('NoneDS', bus);
dataSource.createResolver('EventResolver', {
typeName: 'Mutation',
fieldName: 'emitEvent',
requestMappingTemplate: appsync.MappingTemplate.fromFile('request.vtl'),
responseMappingTemplate: appsync.MappingTemplate.fromFile('response.vtl'),
});
Initializer
new EventBridgeDataSource(scope: Construct, id: string, props: EventBridgeDataSourceProps)
Parameters
- scope
Construct - id
string - props
EventBridge Data Source Props
Construct Props
| Name | Type | Description |
|---|---|---|
| api | IGraph | The API to attach this data source to. |
| event | IEvent | The EventBridge EventBus. |
| description? | string | the description of the data source. |
| name? | string | The name of the data source. |
| service | IRole | The IAM service role to be assumed by AppSync to interact with the data source. |
api
Type:
IGraph
The API to attach this data source to.
eventBus
Type:
IEvent
The EventBridge EventBus.
description?
Type:
string
(optional, default: None)
the description of the data source.
name?
Type:
string
(optional, default: id of data source)
The name of the data source.
serviceRole?
Type:
IRole
(optional, default: Create a new role)
The IAM service role to be assumed by AppSync to interact with the data source.
Properties
| Name | Type | Description |
|---|---|---|
| ds | Cfn | the underlying CFN data source resource. |
| grant | IPrincipal | the principal of the data source to be IGrantable. |
| name | string | the name of the data source. |
| node | Node | The tree node. |
| static PROPERTY_INJECTION_ID | string | Uniquely identifies this class. |
ds
Type:
Cfn
the underlying CFN data source resource.
grantPrincipal
Type:
IPrincipal
the principal of the data source to be IGrantable.
name
Type:
string
the name of the data source.
node
Type:
Node
The tree node.
static PROPERTY_INJECTION_ID
Type:
string
Uniquely identifies this class.
Methods
| Name | Description |
|---|---|
| create | creates a new appsync function for this datasource and API using the given properties. |
| create | creates a new resolver for this datasource and API using the given properties. |
| to | Returns a string representation of this construct. |
| with(...mixins) | Applies one or more mixins to this construct. |
createFunction(id, props)
public createFunction(id: string, props: BaseAppsyncFunctionProps): AppsyncFunction
Parameters
- id
string - props
BaseAppsync Function Props
Returns
creates a new appsync function for this datasource and API using the given properties.
createResolver(id, props)
public createResolver(id: string, props: BaseResolverProps): Resolver
Parameters
- id
string - props
BaseResolver Props
Returns
creates a new resolver for this datasource and API using the given properties.
toString()
public toString(): string
Returns
string
Returns a string representation of this construct.
with(...mixins)
public with(...mixins: IMixin[]): IConstruct
Parameters
- mixins
IMixin— The mixins to apply.
Returns
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.

.NET
Go
Java
Python
TypeScript (