pub struct SessionBuilder { /* private fields */ }Expand description
Builds a Session. See Session::builder.
Implementations§
Source§impl SessionBuilder
impl SessionBuilder
Sourcepub fn with_egress_posture(self, posture: EgressPosture) -> Self
pub fn with_egress_posture(self, posture: EgressPosture) -> Self
The egress posture of the launch this session addresses; unsealed when unset.
Sourcepub fn with_minter(self, minter: Arc<dyn TokenMinter>) -> Self
pub fn with_minter(self, minter: Arc<dyn TokenMinter>) -> Self
Mints proxy tokens through minter, with the default refresh schedule.
Sourcepub fn with_proxy_auth(self, proxy: Arc<ProxyAuth>) -> Self
pub fn with_proxy_auth(self, proxy: Arc<ProxyAuth>) -> Self
Uses an already-built ProxyAuth, for a caller that needs a custom refresh
interval or clock. Wins over Self::with_minter.
Sourcepub fn with_backend(self, backend: SharedBackend) -> Self
pub fn with_backend(self, backend: SharedBackend) -> Self
Replaces the HTTP backend. The seam a simulated transport plugs into.
Sourcepub fn with_port(self, port: u16) -> Self
pub fn with_port(self, port: u16) -> Self
The port the proxy token is scoped to and the port header names.
Sourcepub fn with_timeout(self, timeout: Duration) -> Self
pub fn with_timeout(self, timeout: Duration) -> Self
How long one non-streaming request may take.
Sourcepub fn with_clock(self, clock: Arc<dyn Clock>) -> Self
pub fn with_clock(self, clock: Arc<dyn Clock>) -> Self
The clock exec ids are minted from, and the one a proxy auth built from
Self::with_minter refreshes on. Required by Self::try_build; the adapters’
clock under Self::build_with.
A ProxyAuth passed to Self::with_proxy_auth keeps its own clock.
Sourcepub fn build_with(self, adapters: &dyn Adapters) -> Result<Session, Error>
pub fn build_with(self, adapters: &dyn Adapters) -> Result<Session, Error>
Builds the session from what was set, taking an unset backend and clock from
adapters.
A sandbox builds its session this way, with its plane’s clock already set, so only the
backend comes from the adapters. SessionBuilder::build (microvms_core::prelude) is this
over the production adapters.