Skip to main content

SftpDownloadCommand

Struct SftpDownloadCommand 

Source
pub struct SftpDownloadCommand { /* private fields */ }
Expand description

Command that executes an SFTP file download from a remote server to local disk.

This is the primary integration point between the aria2 download engine and the SFTP protocol layer. It manages the full lifecycle of an SFTP download including connection management, authentication, data transfer, progress tracking, and cleanup.

Implementations§

Source§

impl SftpDownloadCommand

Source

pub fn new( gid: GroupId, uri: &str, options: &DownloadOptions, output_dir: Option<&str>, output_name: Option<&str>, ) -> Result<Self>

Create a new SFTP download command.

§Arguments
  • gid - Unique group identifier for this download
  • uri - The sftp:// URI to download from
  • options - Download configuration options
  • output_dir - Optional override for output directory
  • output_name - Optional override for output filename
§URI Format
sftp://[user[:password]@]host[:port]/path/to/file

Examples:
  sftp://user@example.com/path/to/file.txt
  sftp://admin:secret@192.168.1.100:2222/data/archive.tar.gz
  sftp://root@server.example.com:22/etc/config.conf
Source

pub async fn group(&self) -> RwLockReadGuard<'_, RequestGroup>

Get a read-only reference to the request group.

Trait Implementations§

Source§

impl Command for SftpDownloadCommand

Source§

fn execute<'life0, 'async_trait>( &'life0 mut self, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Execute the SFTP download.

This is the main entry point called by the download engine. It orchestrates the entire download lifecycle from connection establishment through data transfer to cleanup.

Source§

fn status(&self) -> CommandStatus

Return the current status of this command.

Source§

fn timeout(&self) -> Option<Duration>

Return the timeout for this command.

Source§

fn started_at(&self) -> Option<Instant>

Returns the instant at which this command started executing, if the engine has informed the command via [set_started_at]. Read more
Source§

fn set_started_at(&mut self, _instant: Instant)

Called by the engine immediately before the command is spawned onto a background task. The default implementation is a no-op; commands that store the instant can expose it through [started_at].

Auto Trait Implementations§

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where 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> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where 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> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

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

Source§

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 T
where U: TryFrom<T>,

Source§

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<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more