pub enum Request {
Show 24 variants FileRead { path: PathBuf, }, FileReadText { path: PathBuf, }, FileWrite { path: PathBuf, data: Vec<u8>, }, FileWriteText { path: PathBuf, text: String, }, FileAppend { path: PathBuf, data: Vec<u8>, }, FileAppendText { path: PathBuf, text: String, }, DirRead { path: PathBuf, depth: usize, absolute: bool, canonicalize: bool, include_root: bool, }, DirCreate { path: PathBuf, all: bool, }, Remove { path: PathBuf, force: bool, }, Copy { src: PathBuf, dst: PathBuf, }, Rename { src: PathBuf, dst: PathBuf, }, Watch { path: PathBuf, recursive: bool, only: Vec<ChangeKind>, except: Vec<ChangeKind>, }, Unwatch { path: PathBuf, }, Exists { path: PathBuf, }, Metadata { path: PathBuf, canonicalize: bool, resolve_file_type: bool, }, SetPermissions { path: PathBuf, permissions: Permissions, options: SetPermissionsOptions, }, Search { query: SearchQuery, }, CancelSearch { id: SearchId, }, ProcSpawn { cmd: Cmd, environment: Environment, current_dir: Option<PathBuf>, pty: Option<PtySize>, }, ProcKill { id: ProcessId, }, ProcStdin { id: ProcessId, data: Vec<u8>, }, ProcResizePty { id: ProcessId, size: PtySize, }, SystemInfo {}, Version {},
}
Expand description

Represents the payload of a request to be performed on the remote machine

Variants§

§

FileRead

Fields

§path: PathBuf

The path to the file on the remote machine

Reads a file from the specified path on the remote machine

§

FileReadText

Fields

§path: PathBuf

The path to the file on the remote machine

Reads a file from the specified path on the remote machine and treats the contents as text

§

FileWrite

Fields

§path: PathBuf

The path to the file on the remote machine

§data: Vec<u8>

Data for server-side writing of content

Writes a file, creating it if it does not exist, and overwriting any existing content on the remote machine

§

FileWriteText

Fields

§path: PathBuf

The path to the file on the remote machine

§text: String

Data for server-side writing of content

Writes a file using text instead of bytes, creating it if it does not exist, and overwriting any existing content on the remote machine

§

FileAppend

Fields

§path: PathBuf

The path to the file on the remote machine

§data: Vec<u8>

Data for server-side writing of content

Appends to a file, creating it if it does not exist, on the remote machine

§

FileAppendText

Fields

§path: PathBuf

The path to the file on the remote machine

§text: String

Data for server-side writing of content

Appends text to a file, creating it if it does not exist, on the remote machine

§

DirRead

Fields

§path: PathBuf

The path to the directory on the remote machine

§depth: usize

Maximum depth to traverse with 0 indicating there is no maximum depth and 1 indicating the most immediate children within the directory

§absolute: bool

Whether or not to return absolute or relative paths

§canonicalize: bool

Whether or not to canonicalize the resulting paths, meaning returning the canonical, absolute form of a path with all intermediate components normalized and symbolic links resolved

Note that the flag absolute must be true to have absolute paths returned, even if canonicalize is flagged as true

§include_root: bool

Whether or not to include the root directory in the retrieved entries

If included, the root directory will also be a canonicalized, absolute path and will not follow any of the other flags

Reads a directory from the specified path on the remote machine

§

DirCreate

Fields

§path: PathBuf

The path to the directory on the remote machine

§all: bool

Whether or not to create all parent directories

Creates a directory on the remote machine

§

Remove

Fields

§path: PathBuf

The path to the file or directory on the remote machine

§force: bool

Whether or not to remove all contents within directory if is a directory. Does nothing different for files

Removes a file or directory on the remote machine

§

Copy

Fields

§src: PathBuf

The path to the file or directory on the remote machine

§dst: PathBuf

New location on the remote machine for copy of file or directory

Copies a file or directory on the remote machine

§

Rename

Fields

§src: PathBuf

The path to the file or directory on the remote machine

§dst: PathBuf

New location on the remote machine for the file or directory

Moves/renames a file or directory on the remote machine

§

Watch

Fields

§path: PathBuf

The path to the file, directory, or symlink on the remote machine

§recursive: bool

If true, will recursively watch for changes within directories, othewise will only watch for changes immediately within directories

§only: Vec<ChangeKind>

Filter to only report back specified changes

§except: Vec<ChangeKind>

Filter to report back changes except these specified changes

Watches a path for changes

§

Unwatch

Fields

§path: PathBuf

The path to the file, directory, or symlink on the remote machine

Unwatches a path for changes, meaning no additional changes will be reported

§

Exists

Fields

§path: PathBuf

The path to the file or directory on the remote machine

Checks whether the given path exists

§

Metadata

Fields

§path: PathBuf

The path to the file, directory, or symlink on the remote machine

§canonicalize: bool

Whether or not to include a canonicalized version of the path, meaning returning the canonical, absolute form of a path with all intermediate components normalized and symbolic links resolved

§resolve_file_type: bool

Whether or not to follow symlinks to determine absolute file type (dir/file)

Retrieves filesystem metadata for the specified path on the remote machine

§

SetPermissions

Fields

§path: PathBuf

The path to the file, directory, or symlink on the remote machine

§permissions: Permissions

New permissions to apply to the file, directory, or symlink

§options: SetPermissionsOptions

Additional options to supply when setting permissions

Sets permissions on a file, directory, or symlink on the remote machine

§

Search

Fields

§query: SearchQuery

Query to perform against the filesystem

Searches filesystem using the provided query

§

CancelSearch

Fields

§id: SearchId

Id of the search to cancel

Cancels an active search being run against the filesystem

§

ProcSpawn

Fields

§cmd: Cmd

The full command to run including arguments

§environment: Environment

Environment to provide to the remote process

§current_dir: Option<PathBuf>

Alternative current directory for the remote process

§pty: Option<PtySize>

If provided, will spawn process in a pty, otherwise spawns directly

Spawns a new process on the remote machine

§

ProcKill

Fields

§id: ProcessId

Id of the actively-running process

Kills a process running on the remote machine

§

ProcStdin

Fields

§id: ProcessId

Id of the actively-running process to send stdin data

§data: Vec<u8>

Data to send to a process’s stdin pipe

Sends additional data to stdin of running process

§

ProcResizePty

Fields

§id: ProcessId

Id of the actively-running process whose pty to resize

§size: PtySize

The new pty dimensions

Resize pty of remote process

§

SystemInfo

Fields

Retrieve information about the server and the system it is on

§

Version

Fields

Retrieve information about the server’s protocol version

Implementations§

source§

impl Request

source

pub fn is_file_read(&self) -> bool

source

pub fn is_file_read_text(&self) -> bool

source

pub fn is_file_write(&self) -> bool

source

pub fn is_file_write_text(&self) -> bool

source

pub fn is_file_append(&self) -> bool

source

pub fn is_file_append_text(&self) -> bool

source

pub fn is_dir_read(&self) -> bool

source

pub fn is_dir_create(&self) -> bool

source

pub fn is_remove(&self) -> bool

source

pub fn is_copy(&self) -> bool

source

pub fn is_rename(&self) -> bool

source

pub fn is_watch(&self) -> bool

source

pub fn is_unwatch(&self) -> bool

source

pub fn is_exists(&self) -> bool

source

pub fn is_metadata(&self) -> bool

source

pub fn is_set_permissions(&self) -> bool

source

pub fn is_proc_spawn(&self) -> bool

source

pub fn is_proc_kill(&self) -> bool

source

pub fn is_proc_stdin(&self) -> bool

source

pub fn is_proc_resize_pty(&self) -> bool

source

pub fn is_system_info(&self) -> bool

source

pub fn is_version(&self) -> bool

Trait Implementations§

source§

impl Clone for Request

source§

fn clone(&self) -> Request

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Request

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for Request

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl PartialEq<Request> for Request

source§

fn eq(&self, other: &Request) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for Request

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Eq for Request

source§

impl StructuralEq for Request

source§

impl StructuralPartialEq for Request

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> DeserializeOwned for Twhere T: for<'de> Deserialize<'de>,