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§
Sourcefn new(region: Region) -> impl Future<Output = Result<Self, Error>> + Send
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.
Sourcefn with_transport(
transport: Arc<dyn Transport>,
region: Region,
clock: Arc<dyn Clock>,
) -> Self
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".