Skip to main content

ControlPlaneExt

Trait ControlPlaneExt 

Source
pub trait ControlPlaneExt: Sized {
    // Required methods
    fn new(region: Region) -> impl Future<Output = Result<Self, Error>> + Send;
    fn with_transport(
        transport: Arc<dyn Transport>,
        region: Region,
        clock: Arc<dyn Clock>,
    ) -> Self;
}
Expand description

ControlPlane’s production constructors.

Required Methods§

Source

fn new(region: Region) -> impl Future<Output = Result<Self, Error>> + Send

Resolves credentials for region and returns a usable client.

The region is a Region, so an unsupported one is either a compile error or a visible Region::unlisted at the call site. TRAP-6 is closed by the type before this function is reached, which is why there is no region check here.

Source

fn with_transport( transport: Arc<dyn Transport>, region: Region, clock: Arc<dyn Clock>, ) -> Self

A client over a caller-supplied transport and clock, with the OS random pool and the production adapters.

A caller who passes a real transport here gets exactly what new builds. The entropy is the OS pool’s even over a scripted transport, and that’s deliberate: such a plane still mints client tokens, and a deterministic default would mint repeating ones (TRAP-1). ControlPlane::from_ports is how a test pins it.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§