@aws-cdk_aws-iotevents-alpha.Input

class Input (construct) ๐Ÿ”น

LanguageType name
.NETAmazon.CDK.AWS.IoTEvents.Alpha.Input
Gogithub.com/aws/aws-cdk-go/awscdkioteventsalpha/v2#Input
Javasoftware.amazon.awscdk.services.iotevents.alpha.Input
Pythonaws_cdk.aws_iotevents_alpha.Input
TypeScript (source)@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 InputProps

Construct Props

NameTypeDescription
attributeJsonPaths๐Ÿ”นstring[]An expression that specifies an attribute-value pair in a JSON structure.
inputName?๐Ÿ”นstringThe 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

NameTypeDescription
env๐Ÿ”นResourceEnvironmentThe environment this resource belongs to.
inputArn๐Ÿ”นstringThe ARN of the input.
inputName๐Ÿ”นstringThe name of the input.
node๐Ÿ”นNodeThe tree node.
stack๐Ÿ”นStackThe stack in which this resource is defined.

env๐Ÿ”น

Type: ResourceEnvironment

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

NameDescription
applyRemovalPolicy(policy)๐Ÿ”น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).
grantWrite(grantee)๐Ÿ”นGrant write permissions on this input and its contents to an IAM principal (Role/Group/User).
toString()๐Ÿ”นReturns a string representation of this construct.
static fromInputName(scope, id, inputName)๐Ÿ”นImport an existing input.

applyRemovalPolicy(policy)๐Ÿ”น

public applyRemovalPolicy(policy: RemovalPolicy): void

Parameters

  • policy RemovalPolicy

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

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

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

  • IInput

Import an existing input.