Skip to main content

Crate helios_subscriptions

Crate helios_subscriptions 

Source
Expand description

FHIR topic-based Subscriptions engine for HFS.

This crate implements the FHIR Subscriptions Framework for the Helios FHIR Server. It supports topic-based subscriptions across all FHIR versions (R4, R4B, R5, R6), with R4 using the Subscriptions R5 Backport IG and R4B/R5/R6 using native subscription resources.

§Architecture

The subscription system decomposes into five primary concerns:

  • Topic Registry — stores SubscriptionTopic definitions and evaluates triggers
  • Subscription Manager — CRUD lifecycle and status tracking for Subscription resources
  • Event Evaluator — matches resource write events against active subscriptions
  • Notification Builder — constructs version-specific notification bundles
  • Channel Dispatcher — delivers notifications via rest-hook, WebSocket, etc.

The SubscriptionEngine orchestrates all five concerns and is the main entry point, invoked asynchronously after each resource write.

Re-exports§

pub use channels::messaging::MessagingChannel;
pub use channels::ws_manager::WebSocketManager;
pub use channels::ws_token::WsBindingTokenManager;
pub use config::MessagingSettings;
pub use config::SubscriptionConfig;
pub use engine::SubscriptionEngine;
pub use error::SubscriptionError;
pub use event::ResourceEvent;
pub use event::ResourceEventType;

Modules§

channels
Channel dispatchers.
config
Subscription engine configuration.
engine
Subscription engine — the orchestrator.
error
Subscription error types.
evaluator
Event evaluator.
event
Resource event types emitted after write operations.
manager
Subscription manager.
notification
Notification builder.
topics
Subscription topic registry.