Interface NodeRuntime
public interface NodeRuntime
Runtime environment for script node execution.
Provides minimal API surface for nodes - just what they need to execute their logic.
Execution machinery (output storage, cancellation, event listeners) is hidden.
-
Method Summary
Modifier and TypeMethodDescriptiondefault reactor.core.publisher.Mono<Void> executeDownstream(String handle, Map<String, NodeValue> outputs) Triggers downstream execution along a named exec handle.instance()Gets the SoulFire instance for accessing bots and game state.voidLogs a message from script execution.Gets the scheduler for async operations.Gets the per-script state store for stateful nodes.
-
Method Details
-
stateStore
ScriptStateStore stateStore()Gets the per-script state store for stateful nodes. State is scoped to the script execution and cleaned up on deactivation.- Returns:
- the script state store
-
instance
InstanceManager instance()Gets the SoulFire instance for accessing bots and game state.- Returns:
- the instance manager
-
scheduler
SoulFireScheduler scheduler()Gets the scheduler for async operations.- Returns:
- the instance scheduler
-
log
-
executeDownstream
default reactor.core.publisher.Mono<Void> executeDownstream(String handle, Map<String, NodeValue> outputs) Triggers downstream execution along a named exec handle. Only functional during reactive engine execution; self-driving nodes (LoopNode, ForEachNode, etc.) use this to iterate.- Parameters:
handle- the exec output port ID to follow (e.g., "exec_loop")outputs- the outputs to merge into the execution context- Returns:
- a Mono that completes when downstream execution finishes
-