1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
//! # Connector Manager
//!
//! Unified interface for all 51+ exchange connectors.
//!
//! ## Architecture
//!
//! Connectors are dispatched through `Arc<dyn CoreConnector>` — a trait object
//! that composes all core sub-traits (ExchangeIdentity, MarketData, MarketDataPublic,
//! Trading, Account, Positions, etc.) with Send + Sync + 'static bounds.
//!
//! ## Components
//!
//! - `ConnectorPool` - Lock-free pool of `Arc<dyn CoreConnector>` by exchange
//! - `ConnectorFactory` - Constructs and wraps connectors from config
//! - `ConnectorAggregator` - Fan-out aggregation across multiple connectors
//! - `ConnectorRegistry` - Static metadata (supported features, categories)
//! - `ConnectorConfig` - Credentials and config management
//!
//! ## Usage
//!
//! ```ignore
//! use connectors_v5::connector_manager::{ConnectorFactory, CoreConnector};
//! use std::sync::Arc;
//!
//! // Build a connector through the factory
//! let connector: Arc<dyn CoreConnector> = factory.create_connector(exchange_id, credentials).await?;
//!
//! // Use core trait methods
//! let price = connector.get_price(symbol, AccountType::Spot).await?;
//! let balance = connector.get_balance(query).await?;
//!
//! // Get connector metadata
//! let id = connector.id();
//! let name = connector.exchange_name();
//! ```
pub use ;
pub use ;
pub use WebSocketPool;
pub use ;
pub use ;
pub use ConnectorFactory;
pub use ExchangeHub;
pub use crateCoreConnector;