@Generated(value="jsii-pacmak/1.74.0 (build 6d08790)",
date="2023-03-22T19:35:41.326Z")
public interface TransitionOptions
Example:
import software.amazon.awscdk.services.iotevents.*; import software.amazon.awscdk.services.iotevents.actions.*; import software.amazon.awscdk.services.lambda.*; IFunction func; Input input = Input.Builder.create(this, "MyInput") .inputName("my_input") // optional .attributeJsonPaths(List.of("payload.deviceId", "payload.temperature")) .build(); State warmState = State.Builder.create() .stateName("warm") .onEnter(List.of(Event.builder() .eventName("test-enter-event") .condition(Expression.currentInput(input)) .actions(List.of(new LambdaInvokeAction(func))) .build())) .onInput(List.of(Event.builder() // optional .eventName("test-input-event") .actions(List.of(new LambdaInvokeAction(func))).build())) .onExit(List.of(Event.builder() // optional .eventName("test-exit-event") .actions(List.of(new LambdaInvokeAction(func))).build())) .build(); State coldState = State.Builder.create() .stateName("cold") .build(); // transit to coldState when temperature is less than 15 warmState.transitionTo(coldState, TransitionOptions.builder() .eventName("to_coldState") // optional property, default by combining the names of the States .when(Expression.lt(Expression.inputAttribute(input, "payload.temperature"), Expression.fromString("15"))) .executing(List.of(new LambdaInvokeAction(func))) .build()); // transit to warmState when temperature is greater than or equal to 15 coldState.transitionTo(warmState, TransitionOptions.builder() .when(Expression.gte(Expression.inputAttribute(input, "payload.temperature"), Expression.fromString("15"))) .build()); DetectorModel.Builder.create(this, "MyDetectorModel") .detectorModelName("test-detector-model") // optional .description("test-detector-model-description") // optional property, default is none .evaluationMethod(EventEvaluation.SERIAL) // optional property, default is iotevents.EventEvaluation.BATCH .detectorKey("payload.deviceId") // optional property, default is none and single detector instance will be created and all inputs will be routed to it .initialState(warmState) .build();
Modifier and Type | Interface and Description |
---|---|
static class |
TransitionOptions.Builder
A builder for
TransitionOptions |
static class |
TransitionOptions.Jsii$Proxy
An implementation for
TransitionOptions |
Modifier and Type | Method and Description |
---|---|
static TransitionOptions.Builder |
builder() |
default java.lang.String |
getEventName()
(experimental) The name of the event.
|
default java.util.List<IAction> |
getExecuting()
(experimental) The actions to be performed with the transition.
|
Expression |
getWhen()
(experimental) The condition that is used to determine to cause the state transition and the actions.
|
Expression getWhen()
When this was evaluated to true
, the state transition and the actions are triggered.
default java.lang.String getEventName()
Default: string combining the names of the States as `${originStateName}_to_${targetStateName}`
default java.util.List<IAction> getExecuting()
Default: - no actions will be performed
static TransitionOptions.Builder builder()
TransitionOptions.Builder
of TransitionOptions