@Generated(value="jsii-pacmak/1.70.0 (build 03c2f6f)", date="2022-11-01T13:16:50.852Z") @Stability(value=Experimental) public interface TransitionOptions extends software.amazon.jsii.JsiiSerializable
Example:
import software.amazon.awscdk.core.*;
import software.amazon.awscdk.core.*;
import software.amazon.awscdk.core.*;
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 String |
getEventName()
(experimental) The name of the event.
|
default 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.
|
@Stability(value=Experimental) @NotNull Expression getWhen()
When this was evaluated to true, the state transition and the actions are triggered.
@Stability(value=Experimental) @Nullable default String getEventName()
Default: string combining the names of the States as `${originStateName}_to_${targetStateName}`
@Stability(value=Experimental) @Nullable default List<IAction> getExecuting()
Default: - no actions will be performed
@Stability(value=Experimental) static TransitionOptions.Builder builder()
TransitionOptions.Builder of TransitionOptionsCopyright © 2022. All rights reserved.