pub struct MutableConnection<DirectoryType: MutableDirectory> { /* private fields */ }
Implementations§
Source§impl<DirectoryType: MutableDirectory> MutableConnection<DirectoryType>
impl<DirectoryType: MutableDirectory> MutableConnection<DirectoryType>
Sourcepub async fn create(
scope: ExecutionScope,
directory: Arc<DirectoryType>,
protocols: impl ProtocolsExt,
object_request: ObjectRequestRef<'_>,
) -> Result<(), Status>
pub async fn create( scope: ExecutionScope, directory: Arc<DirectoryType>, protocols: impl ProtocolsExt, object_request: ObjectRequestRef<'_>, ) -> Result<(), Status>
Creates a new connection to serve the mutable directory. The directory will be served from a
new async Task
, not from the current Task
. Errors in constructing the connection are not
guaranteed to be returned, they may be sent directly to the client end of the connection.
This method should be called from within an ObjectRequest
handler to ensure that errors
are sent to the client end of the connection.
Trait Implementations§
Source§impl<DirectoryType: MutableDirectory> ConnectionCreator<DirectoryType> for MutableConnection<DirectoryType>
impl<DirectoryType: MutableDirectory> ConnectionCreator<DirectoryType> for MutableConnection<DirectoryType>
Source§async fn create<'a>(
scope: ExecutionScope,
node: Arc<DirectoryType>,
protocols: impl ProtocolsExt,
object_request: ObjectRequestRef<'a>,
) -> Result<(), Status>
async fn create<'a>( scope: ExecutionScope, node: Arc<DirectoryType>, protocols: impl ProtocolsExt, object_request: ObjectRequestRef<'a>, ) -> Result<(), Status>
Creates a new connection to
node
and spawns a new Task
to run the connection.Source§impl<DirectoryType: MutableDirectory> TokenInterface for MutableConnection<DirectoryType>
impl<DirectoryType: MutableDirectory> TokenInterface for MutableConnection<DirectoryType>
Source§fn get_node(&self) -> Arc<dyn MutableDirectory>
fn get_node(&self) -> Arc<dyn MutableDirectory>
Returns the node and flags that correspond with this token. This information is returned by
the but it should
be possible to change this so that files can be represented in future if and when the need
arises.
get_owner
method. For now this always returns ArcSource§fn token_registry(&self) -> &TokenRegistry
fn token_registry(&self) -> &TokenRegistry
Returns the token registry.
Auto Trait Implementations§
impl<DirectoryType> Freeze for MutableConnection<DirectoryType>
impl<DirectoryType> !RefUnwindSafe for MutableConnection<DirectoryType>
impl<DirectoryType> Send for MutableConnection<DirectoryType>
impl<DirectoryType> Sync for MutableConnection<DirectoryType>
impl<DirectoryType> Unpin for MutableConnection<DirectoryType>
impl<DirectoryType> !UnwindSafe for MutableConnection<DirectoryType>
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
Source§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
Source§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more