Use bufreader and bufwriter to optimize performance; but sftp is slow anyway

This commit is contained in:
ChristianVisintin
2020-12-05 21:10:45 +01:00
parent bcaaab3c21
commit af7bd17422

View File

@@ -32,7 +32,7 @@ use crate::fs::{FsDirectory, FsEntry, FsFile};
// Includes // Includes
use ssh2::{FileStat, OpenFlags, OpenType, Session, Sftp}; use ssh2::{FileStat, OpenFlags, OpenType, Session, Sftp};
use std::io::{Read, Write}; use std::io::{BufReader, BufWriter, Read, Write};
use std::net::TcpStream; use std::net::TcpStream;
use std::path::{Path, PathBuf}; use std::path::{Path, PathBuf};
use std::time::{Duration, SystemTime}; use std::time::{Duration, SystemTime};
@@ -522,7 +522,7 @@ impl FileTransfer for SftpFileTransfer {
mode, mode,
OpenType::File, OpenType::File,
) { ) {
Ok(file) => Ok(Box::new(file)), Ok(file) => Ok(Box::new(BufWriter::with_capacity(8192, file))),
Err(err) => Err(FileTransferError::new_ex( Err(err) => Err(FileTransferError::new_ex(
FileTransferErrorType::FileCreateDenied, FileTransferErrorType::FileCreateDenied,
format!("{}", err), format!("{}", err),
@@ -548,7 +548,7 @@ impl FileTransfer for SftpFileTransfer {
}; };
// Open remote file // Open remote file
match sftp.open(remote_path.as_path()) { match sftp.open(remote_path.as_path()) {
Ok(file) => Ok(Box::new(file)), Ok(file) => Ok(Box::new(BufReader::with_capacity(8192, file))),
Err(err) => Err(FileTransferError::new_ex( Err(err) => Err(FileTransferError::new_ex(
FileTransferErrorType::NoSuchFileOrDirectory, FileTransferErrorType::NoSuchFileOrDirectory,
format!("{}", err), format!("{}", err),