rusty_common/websocket/
mod.rs

1//! Consolidated WebSocket implementation for all exchanges
2//!
3//! This module provides a unified, high-performance WebSocket client implementation
4//! using yawc, with support for authentication, compression, automatic reconnection,
5//! and exchange-specific customizations.
6
7pub mod auth;
8pub mod batch;
9pub mod bridge;
10pub mod client;
11pub mod config;
12pub mod connector;
13pub mod error;
14pub mod handler;
15pub mod heartbeat;
16pub mod message;
17#[cfg(feature = "memory-pools")]
18pub mod pooled_message;
19pub mod reconnect;
20pub mod stats;
21pub mod utils;
22pub mod zerocopy_frame;
23
24#[cfg(test)]
25mod ping_pong_tests;
26
27// Re-export main types
28pub use auth::{AuthMethod, DefaultWebSocketAuth, WebSocketAuth, create_authenticator};
29pub use batch::{BatchProcessingMetrics, BatchProcessor};
30pub use bridge::{
31    ChannelBridgeHandler, MessageRouter, RoutedMessage, SubscriptionChannel, SubscriptionType,
32};
33pub use client::{ConnectionState, WebSocketClient, WebSocketStream};
34pub use config::{CompressionConfig, ReconnectConfig, WebSocketConfig};
35pub use connector::{WebSocketConnector, WebSocketSink};
36pub use error::{WebSocketError, WebSocketResult};
37pub use handler::{ExchangeHandler, MessageHandler};
38pub use heartbeat::{HeartbeatMonitor, HeartbeatStatus};
39pub use message::{Message, MessageType};
40#[cfg(feature = "memory-pools")]
41pub use pooled_message::PooledMessage;
42pub use reconnect::ReconnectStrategy;
43pub use stats::{ConnectionStats, SharedStats, new_shared_stats};
44pub use utils::to_json;
45
46// Exchange-specific implementations
47pub mod exchanges;