pub enum SourceMessage {
Directory {
src: PathBuf,
dst: PathBuf,
metadata: Metadata,
is_root: bool,
},
Symlink {
src: PathBuf,
dst: PathBuf,
target: PathBuf,
metadata: Metadata,
is_root: bool,
},
DirStructureComplete,
FileSkipped {
src: PathBuf,
dst: PathBuf,
dir_total_files: usize,
},
SymlinkSkipped {
src_dst: SrcDst,
is_root: bool,
},
DirectoryEmpty {
src: PathBuf,
dst: PathBuf,
},
}Expand description
Messages sent from source to destination on the control stream.
Variants§
Directory
Create directory and store metadata for later application. Sent during directory tree traversal in depth-first order.
Symlink
Create symlink with metadata.
DirStructureComplete
Signal that all directories and symlinks have been sent.
Required before destination can send DestinationDone.
FileSkipped
Notify destination that a file failed to send.
Includes dir_total_files so destination can track file counts.
SymlinkSkipped
Notify destination that a symlink failed to read.
For logging purposes only (symlinks don’t affect file counts).
If is_root is true, this signals that root processing is complete (even if failed).
DirectoryEmpty
Notify destination that a directory contains no files.
Sent after receiving DirectoryCreated for an empty directory.
Trait Implementations§
Source§impl Debug for SourceMessage
impl Debug for SourceMessage
Source§impl<'de> Deserialize<'de> for SourceMessage
impl<'de> Deserialize<'de> for SourceMessage
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for SourceMessage
impl RefUnwindSafe for SourceMessage
impl Send for SourceMessage
impl Sync for SourceMessage
impl Unpin for SourceMessage
impl UnwindSafe for SourceMessage
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request