class Input (construct)
Language | Type name |
---|---|
![]() | Amazon.CDK.AWS.IoTEvents.Alpha.Input |
![]() | github.com/aws/aws-cdk-go/awscdkioteventsalpha/v2#Input |
![]() | software.amazon.awscdk.services.iotevents.alpha.Input |
![]() | aws_cdk.aws_iotevents_alpha.Input |
![]() | @aws-cdk/aws-iotevents-alpha ยป Input |
Implements
IConstruct
, IDependable
, IResource
, IInput
Defines an AWS IoT Events input in this stack.
Example
import * as iotevents from '@aws-cdk/aws-iotevents-alpha';
import * as iam from 'aws-cdk-lib/aws-iam';
declare const role: iam.IRole;
const input = new iotevents.Input(this, 'MyInput', {
attributeJsonPaths: ['payload.temperature', 'payload.transactionId'],
});
const topicRule = new iot.TopicRule(this, 'TopicRule', {
sql: iot.IotSql.fromStringAsVer20160323(
"SELECT * FROM 'device/+/data'",
),
actions: [
new actions.IotEventsPutMessageAction(input, {
batchMode: true, // optional property, default is 'false'
messageId: '${payload.transactionId}', // optional property, default is a new UUID
role: role, // optional property, default is a new UUID
}),
],
});
Initializer
new Input(scope: Construct, id: string, props: InputProps)
Parameters
- scope
Construct
- id
string
- props
Input
Props
Construct Props
Name | Type | Description |
---|---|---|
attribute | string[] | An expression that specifies an attribute-value pair in a JSON structure. |
input | string | The name of the input. |
attributeJsonPaths
Type:
string[]
An expression that specifies an attribute-value pair in a JSON structure.
Use this to specify an attribute from the JSON payload that is made available by the input. Inputs are derived from messages sent to AWS IoT Events (BatchPutMessage). Each such message contains a JSON payload. The attribute (and its paired value) specified here are available for use in the condition expressions used by detectors.
inputName?
Type:
string
(optional, default: CloudFormation will generate a unique name of the input)
The name of the input.
Properties
Name | Type | Description |
---|---|---|
env | Resource | The environment this resource belongs to. |
input | string | The ARN of the input. |
input | string | The name of the input. |
node | Node | The tree node. |
stack | Stack | The stack in which this resource is defined. |
env
Type:
Resource
The environment this resource belongs to.
For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.
inputArn
Type:
string
The ARN of the input.
inputName
Type:
string
The name of the input.
node
Type:
Node
The tree node.
stack
Type:
Stack
The stack in which this resource is defined.
Methods
Name | Description |
---|---|
apply | Apply the given removal policy to this resource. |
grant(grantee, ...actions) | Grant the indicated permissions on this input to the given IAM principal (Role/Group/User). |
grant | Grant write permissions on this input and its contents to an IAM principal (Role/Group/User). |
to | Returns a string representation of this construct. |
static from | Import an existing input. |
applyRemovalPolicy(policy)
public applyRemovalPolicy(policy: RemovalPolicy): void
Parameters
- policy
Removal
Policy
Apply the given removal policy to this resource.
The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.
The resource can be deleted (RemovalPolicy.DESTROY
), or left in your AWS
account for data recovery and cleanup later (RemovalPolicy.RETAIN
).
grant(grantee, ...actions)
public grant(grantee: IGrantable, ...actions: string[]): Grant
Parameters
- grantee
IGrantable
- actions
string
Returns
Grant the indicated permissions on this input to the given IAM principal (Role/Group/User).
grantWrite(grantee)
public grantWrite(grantee: IGrantable): Grant
Parameters
- grantee
IGrantable
Returns
Grant write permissions on this input and its contents to an IAM principal (Role/Group/User).
toString()
public toString(): string
Returns
string
Returns a string representation of this construct.
static fromInputName(scope, id, inputName)
public static fromInputName(scope: Construct, id: string, inputName: string): IInput
Parameters
- scope
Construct
- id
string
- inputName
string
Returns
Import an existing input.