Skip to main content

harmos_runtime/streams/
mod.rs

1/* ***
2 *
3 * Harmos
4 *
5 * SPDX-License-Identifier: Apache-2.0
6 *
7 * ***
8 */
9
10/* === Modules === */
11
12mod batches;
13mod definition;
14mod demand;
15mod ingest;
16
17#[cfg(any(feature = "plugin", feature = "plugin-guest", feature = "plugin-sidecar"))]
18mod listeners;
19mod manager;
20mod publication;
21mod publications;
22mod reader;
23
24#[cfg(any(feature = "plugin", feature = "plugin-guest", feature = "plugin-sidecar"))]
25mod registration;
26mod series;
27
28#[cfg(any(feature = "plugin", feature = "plugin-guest", feature = "plugin-sidecar"))]
29mod staging;
30mod window;
31
32/* === Re-Exports === */
33
34pub use batches::{BatchItem, Batches, Measurement, Summary};
35pub use definition::Stream;
36pub use harmos_domain::streams::{Axial, BatchDefinition, Batched, Definition, Prefix, StreamCatalog, StreamRow, Track, Tracked};
37
38#[cfg(any(feature = "plugin", feature = "plugin-guest", feature = "plugin-sidecar"))]
39pub use listeners::{PluginListenerBindings, PluginListenerRegistration};
40pub use manager::{Query, Seal, StreamFeed, StreamManager, Survey};
41pub use publication::ManagedPublication;
42pub(crate) use publication::row_value;
43pub use publications::{PluginStream, PublicationLease, PublicationRow, StreamAdmissionError, StreamPublicationError};
44pub use reader::{PageLimits, ReadCut, ReadError, ReadLimits, RowPage, RowReader, RowSource};
45
46#[cfg(any(feature = "plugin", feature = "plugin-guest", feature = "plugin-sidecar"))]
47pub use registration::StreamRegistration;
48
49#[cfg(any(feature = "plugin", feature = "plugin-guest", feature = "plugin-sidecar"))]
50pub(crate) use staging::Activation;
51
52#[cfg(any(feature = "plugin", feature = "plugin-guest", feature = "plugin-sidecar"))]
53pub use staging::{StagedPublication, StagedRows};
54
55pub(crate) use definition::{Refused, Table, Wired};
56pub use demand::Demand;
57pub(crate) use demand::Holding;
58pub use series::{Aggregated, Bucket, Point};
59pub(crate) use series::{Opened, Request, Tier};
60pub use window::{BeneathWindow, Item};
61
62/* === Imports === */
63
64// Standard Library Imports
65
66// Third Party Imports
67
68// Local Imports
69use manager::Partition;
70
71/* === Constants === */
72
73/* === Macros === */
74
75/* === Type Aliases === */
76
77/* === Structs === */
78
79/* === Enums === */
80
81/* === Traits === */
82
83/* === Implementations === */
84
85/* === Public Functions === */
86
87/* === Private Functions === */
88
89/* === Tests === */