pub trait LifecycleControllerProxyInterface: Send + Sync {
type StartInstanceResponseFut: Future<Output = Result<LifecycleControllerStartInstanceResult, Error>> + Send;
type StartInstanceWithArgsResponseFut: Future<Output = Result<LifecycleControllerStartInstanceWithArgsResult, Error>> + Send;
type StopInstanceResponseFut: Future<Output = Result<LifecycleControllerStopInstanceResult, Error>> + Send;
type ResolveInstanceResponseFut: Future<Output = Result<LifecycleControllerResolveInstanceResult, Error>> + Send;
type UnresolveInstanceResponseFut: Future<Output = Result<LifecycleControllerUnresolveInstanceResult, Error>> + Send;
type CreateInstanceResponseFut: Future<Output = Result<LifecycleControllerCreateInstanceResult, Error>> + Send;
type DestroyInstanceResponseFut: Future<Output = Result<LifecycleControllerDestroyInstanceResult, Error>> + Send;
// Required methods
fn start_instance(
&self,
moniker: &str,
binder: ServerEnd<BinderMarker>,
) -> Self::StartInstanceResponseFut;
fn start_instance_with_args(
&self,
moniker: &str,
binder: ServerEnd<BinderMarker>,
args: StartChildArgs,
) -> Self::StartInstanceWithArgsResponseFut;
fn stop_instance(&self, moniker: &str) -> Self::StopInstanceResponseFut;
fn resolve_instance(
&self,
moniker: &str,
) -> Self::ResolveInstanceResponseFut;
fn unresolve_instance(
&self,
moniker: &str,
) -> Self::UnresolveInstanceResponseFut;
fn create_instance(
&self,
parent_moniker: &str,
collection: &CollectionRef,
decl: &Child,
args: CreateChildArgs,
) -> Self::CreateInstanceResponseFut;
fn destroy_instance(
&self,
parent_moniker: &str,
child: &ChildRef,
) -> Self::DestroyInstanceResponseFut;
}Required Associated Types§
type StartInstanceResponseFut: Future<Output = Result<LifecycleControllerStartInstanceResult, Error>> + Send
type StartInstanceWithArgsResponseFut: Future<Output = Result<LifecycleControllerStartInstanceWithArgsResult, Error>> + Send
type StopInstanceResponseFut: Future<Output = Result<LifecycleControllerStopInstanceResult, Error>> + Send
type ResolveInstanceResponseFut: Future<Output = Result<LifecycleControllerResolveInstanceResult, Error>> + Send
type UnresolveInstanceResponseFut: Future<Output = Result<LifecycleControllerUnresolveInstanceResult, Error>> + Send
type CreateInstanceResponseFut: Future<Output = Result<LifecycleControllerCreateInstanceResult, Error>> + Send
type DestroyInstanceResponseFut: Future<Output = Result<LifecycleControllerDestroyInstanceResult, Error>> + Send
Required Methods§
fn start_instance( &self, moniker: &str, binder: ServerEnd<BinderMarker>, ) -> Self::StartInstanceResponseFut
fn start_instance_with_args( &self, moniker: &str, binder: ServerEnd<BinderMarker>, args: StartChildArgs, ) -> Self::StartInstanceWithArgsResponseFut
fn stop_instance(&self, moniker: &str) -> Self::StopInstanceResponseFut
fn resolve_instance(&self, moniker: &str) -> Self::ResolveInstanceResponseFut
fn unresolve_instance( &self, moniker: &str, ) -> Self::UnresolveInstanceResponseFut
fn create_instance( &self, parent_moniker: &str, collection: &CollectionRef, decl: &Child, args: CreateChildArgs, ) -> Self::CreateInstanceResponseFut
fn destroy_instance( &self, parent_moniker: &str, child: &ChildRef, ) -> Self::DestroyInstanceResponseFut
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".