pub struct SharedContext {Show 16 fields
pub config: EnvoyConfig,
pub envoy_key: String,
pub envoy_tx: UnboundedSender<ToEnvoyMessage>,
pub actors: Arc<Mutex<HashMap<String, HashMap<u32, SharedActorEntry>>>>,
pub actors_notify: Arc<Notify>,
pub live_tunnel_requests: Arc<Mutex<HashMap<[u8; 8], String>>>,
pub pending_hibernation_restores: Arc<Mutex<HashMap<String, Vec<HibernatingWebSocketMetadata>>>>,
pub ws_tx: Arc<Mutex<Option<UnboundedSender<WsTxMessage>>>>,
pub http_ws_tx: Arc<Mutex<Option<HttpConnectionTx>>>,
pub connection_session: AtomicU64,
pub next_connection_session: AtomicU64,
pub connection_session_tx: Sender<u64>,
pub protocol_metadata: Arc<Mutex<Option<ProtocolMetadata>>>,
pub shutting_down: AtomicBool,
pub last_ping_ts: AtomicI64,
pub stopped_tx: Sender<bool>,
}Fields§
§config: EnvoyConfig§envoy_key: String§envoy_tx: UnboundedSender<ToEnvoyMessage>§actors: Arc<Mutex<HashMap<String, HashMap<u32, SharedActorEntry>>>>§actors_notify: Arc<Notify>§live_tunnel_requests: Arc<Mutex<HashMap<[u8; 8], String>>>§pending_hibernation_restores: Arc<Mutex<HashMap<String, Vec<HibernatingWebSocketMetadata>>>>§ws_tx: Arc<Mutex<Option<UnboundedSender<WsTxMessage>>>>§http_ws_tx: Arc<Mutex<Option<HttpConnectionTx>>>§connection_session: AtomicU64The currently connected WebSocket session, or zero while disconnected.
Session IDs are actor-client-local and never cross the wire. Remote SQLite transactions use them to prevent a statement from being admitted on a replacement WebSocket after the server-side connection (and its SQLite handle) has already been torn down.
next_connection_session: AtomicU64§connection_session_tx: Sender<u64>§protocol_metadata: Arc<Mutex<Option<ProtocolMetadata>>>§shutting_down: AtomicBool§last_ping_ts: AtomicI64Epoch ms timestamp of the most recent ping packet received from the engine. Used by
EnvoyHandle::is_ping_healthy to surface a dead engine link to upstream health checks.
Zero means no ping has been received yet.
stopped_tx: Sender<bool>Auto Trait Implementations§
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more