All Classes and Interfaces
Class
Description
Builds HL7 v2 general acknowledgement (
ACK) messages in response to a received message.Acyclic Deterministic Reactor Network validator.
A coded clinical concept: how a FRAMED channel is identified in an interoperability standard.
Channel kind at the SDC boundary (mapping JSON field
kind, lowercase).The
ConfigLoader class provides utility methods for loading and validating
JSON-based configuration files used by the orchestrator.A sink that performs no I/O and only counts what reaches it — the measurement instrument for
throughput and latency benchmarks.
Immutable view of one measurement run.
An immutable, timestamped value sample produced by a device channel.
Utility for converting a JSON bus message into a
DataPoint.Extension point invoked once after all services have been instantiated, allowing
domain modules to validate the deployed topology (e.g. checking that a network of
services satisfies structural constraints) without the orchestrator depending on any
domain type.
Drop-in replacement:
- Never blocks EventBus handler on IO
Strategy for how an event bus invokes the handlers registered for an address.
Per-key outbound emission throttle.
Defines a simple event bus mechanism for message-based communication between components and/or services.
The
Factory class provides dynamic instantiation of Service implementations
based on JSON configuration.Structured representation of a parsed channel condition.
HL7 v2 escaping of reserved characters (HL7 v2.5 §2.7), for embedding free-form data into
message fields built with the default encoding characters (
|^~\&).A lightweight, read-oriented HL7 v2 pipe-encoded message: a list of segments, each split into
fields on
|.Outbound HL7 v2 sink: maps FRAMED datapoints to
ORU^R01 messages and sends them over MLLP
to a remote endpoint, retrying on transient failures via the Dispatcher base.Inbound HL7 v2 source: runs an MLLP server, parses received
ORU/ADT messages and
publishes their observations onto the bus in the standard "<className>.<deviceID>.<channelID>.parsed"
convention, so existing reactors and dispatchers consume external data transparently.Parses inbound HL7 messages and routes their content onto the FRAMED bus as EAV observations,
returning the HL7 acknowledgement to send back.
A specialized
Reactor that classifies numeric input values per channel
based on a configured, ascending-sorted list of upper bounds.A local implementation of the
EventBus interface for message-based communication
between components within the same JVM.Config-driven launcher for a FRAMED deployment.
The
Manager class is responsible for orchestrating the lifecycle of Service instances
based on a JSON configuration.A single Medibus(.X) protocol parameter: the mapping from a one-byte protocol code to a stable,
address-safe channel identifier plus human-readable metadata.
Replays a MIMIC-III Waveform Database
record into the FRAMED
EventBus in (scaled) real time, exercising the normal,
non-interop data path: each decoded sample is published as a parsed DataPoint message on
an address of the shape "<className>.<deviceID>.<channelID>.parsed", exactly as the live
device drivers do.Immutable summary of how closely replay followed its schedule.
MLLP client (the message initiator): connects to a remote MLLP endpoint, sends a framed HL7
message and reads back the framed acknowledgement.
Minimal Lower Layer Protocol (MLLP) framing.
MLLP server (the message responder): listens for connections, reads each framed HL7 message and
replies with the acknowledgement produced by the supplied handler.
Encodes/decodes the self-describing JSON payload carried on MQTT.
Bidirectional MQTT bridge.
Minimal MQTT transport abstraction used by
MqttService.A
Transport implementation using Java NIO for TCP-based communication.A
Transport implementation using Java NIO over UDP for lightweight, connectionless
message delivery between services or devices.Bidirectional mapping between FRAMED channels and
CodedConcepts, loaded from a JSON file.A resolved FRAMED channel coordinate decoded from a mapping key.
Sink for observations decoded from inbound HL7, expressed in FRAMED's EAV coordinates.
Builds
ORU^R01 (unsolicited observation result) HL7 v2.5 messages from FRAMED
observations.A single observation to encode as an OBX segment.
MqttTransport backed by the Eclipse Paho MQTT 3.1.1 asynchronous client.Abstract base for services that turn raw input into events published on the event bus.
Static patient/encounter context used to populate the
PID/PV1 segments of
outbound messages.Represents a network peer identified by a host (name or IP address) and a port.
Represents an abstract communication protocol that extends the
Service class.A reactive multi-input
Service that evaluates a set of firing rules on incoming
messages, constructs exactly one consistent snapshot per evaluation cycle, and triggers a
user-defined Reactor.reactionFunction(Map) once whenever at least one rule is satisfied.An immutable evaluation snapshot handed to
Reactor.reactionFunction(Map).A decoded message exchanged over a remote transport between event bus instances.
Utility methods for parsing and dispatching JSON-encoded remote messages to registered
handlers.
Replays a recorded
.jsonl session onto the event bus, on the parsed addresses the
original parsers used.Figures describing one completed replay: how much was published, how fast, and how far behind
its own schedule the replay thread ran.
Reactor for estimating respiratory rate (RR) from a continuous EtCO₂ waveform
using a robust slope‑based breath detection algorithm.
Enumerates the types of channel conditions supported:
RuleType.ANY: at least one new message
RuleType.AT_LEAST: at least n new messages
RuleType.REQUIRE_VALUE: at least one new message and latest value equals value
Runtime helpers shared by
Reactor and its concrete implementations:
extracting a logical timestamp from an incoming message and publishing a result
envelope to a reactor's output channels.Outbound IEEE 11073 SDC sink (
SdcProviderDispatcher, INTEROP_PLAN Step 3 Phase B):
exposes FRAMED as a BICEPS provider whose MDIB mirrors the mapped channels, so any SDC
consumer can discover the device over WS-Discovery, read the MDIB and subscribe to episodic
metric reports and waveform streams (MDPWS/WS-Eventing, via SDCri).The MSH sending/receiving application and facility identifiers (MSH-3..MSH-6).
A
Transport implementation using traditional blocking I/O over TCP sockets.A utility class for scheduling tasks with delays or at fixed intervals using a
ScheduledExecutorService.Defines a transport mechanism for communication between services, JVMs, or devices.
A specialized
Reactor that detects a decreasing trend (downward drift)
in numeric channel values using a sliding window and a slope-based metric.Enumerates the directions of trends:
TrendDirection.UP: find upwards trends
TrendDirection.DOWN: find downwards trends
TrendDirection.BOTH: find both up- and downwards trends
Enumerates the mode of tends conditions supported:
TrendMode.MEAN_STEP_DIFF: The trend is measured by the mean difference between observed data points.
TrendMode.REGRESSION_SLOPE: The trend is measured by the best fitting slope (regression).
A
Transport implementation using UDP datagrams for lightweight, connectionless messaging.A parsed WFDB header
(
.hea) file, covering the three header flavours used by the
MIMIC-III Waveform Database:
Master (multi-segment) header — its record line carries a /numSegments
suffix and it lists one WfdbHeader.Segment per line instead of signal specifications.A segment reference on a master (multi-segment) header line.
Decodes the raw ADC samples of a single WFDB segment from its
.dat file.The specification of a single signal, as declared on one signal-specification line of a
WFDB header file.
An abstract base class for writing data of type
T to a specified file path.