Skip to main content

oxigdal_streaming/
lib.rs

1//! Real-time data processing and streaming pipelines for OxiGDAL.
2//!
3//! This crate provides a comprehensive streaming framework for processing
4//! geospatial data in real-time. It includes:
5//!
6//! - Stream traits and abstractions with backpressure handling
7//! - Windowing and watermarking for event-time processing
8//! - Rich set of transformations (map, filter, join, etc.)
9//! - Stateful operations with checkpointing
10//! - State backends (RocksDB) for fault tolerance
11//!
12//! # Example
13//!
14//! ```no_run
15//! use oxigdal_streaming::core::Stream;
16//! use oxigdal_streaming::transformations::MapTransform;
17//!
18//! # async fn example() -> oxigdal_streaming::error::Result<()> {
19//! // Create a stream and apply transformations
20//! // let stream = Stream::new();
21//! // let transformed = stream.map(|x| x * 2).filter(|x| x > 10);
22//! # Ok(())
23//! # }
24//! ```
25
26#![warn(missing_docs)]
27#![deny(unsafe_code)]
28
29pub mod core;
30pub mod error;
31pub mod metrics;
32pub mod state;
33pub mod transformations;
34pub mod windowing;
35
36pub use error::{Result, StreamingError};