package cn.timer.api.service;

import cn.timer.api.dto.disk.FileInfoDto;
import com.jcraft.jsch.ChannelSftp;
import org.springframework.web.multipart.MultipartFile;

import java.io.File;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.List;

/**
 * 上传文件的实现层
 */
public interface FtpService {

    boolean createDirs(String dirPath, ChannelSftp sftp);

    /**
     * 上传文件到服务器
     * @param files
     * @return
     */
    List<FileInfoDto> uploadFile(MultipartFile[] files);
    /**
     * 下载单个文件
     *
     * @param remotePath:远程目录
     * @return InputStream
     */
    InputStream downloadFile(String remotePath);

    /**
     * 删除服务器文件
     * @param targetPath
     * @return
     */
    boolean deleteFile(List<String> targetPath);
}