137 lines
2.7 KiB
Java
137 lines
2.7 KiB
Java
package com.mesasoft.cn.service;
|
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import java.io.IOException;
|
|
|
|
/**
|
|
* @author pantao
|
|
* @since 2018/1/29
|
|
*/
|
|
public interface IFileManagerService {
|
|
|
|
|
|
/**
|
|
* 下载多个文件
|
|
*
|
|
* @param response {@link HttpServletResponse}
|
|
* @param items 文件集
|
|
* @param destFile 目标文件名
|
|
*
|
|
* @throws IOException 异常
|
|
*/
|
|
void multiDownload(HttpServletResponse response, String[] items, String destFile) throws IOException;
|
|
|
|
/**
|
|
* 上传文件(暂时还没有实现)
|
|
*
|
|
* @param destination 目标文件
|
|
* @param files {@link MultipartFile}
|
|
*
|
|
* @return {@link JSONObject}
|
|
*/
|
|
JSONObject upload(String destination, MultipartFile... files);
|
|
|
|
/**
|
|
* 解压文件
|
|
*
|
|
* @param object {@link JSONObject}
|
|
*
|
|
* @return {@link JSONObject}
|
|
*/
|
|
JSONObject extract(JSONObject object);
|
|
|
|
/**
|
|
* 压缩文件
|
|
*
|
|
* @param object {@link JSONObject}
|
|
*
|
|
* @return {@link JSONObject}
|
|
*/
|
|
JSONObject compress(JSONObject object);
|
|
|
|
/**
|
|
* 设置文件权限
|
|
*
|
|
* @param object {@link JSONObject}
|
|
*
|
|
* @return {@link JSONObject}
|
|
*/
|
|
JSONObject setPermission(JSONObject object);
|
|
|
|
/**
|
|
* 创建文件夹
|
|
*
|
|
* @param object {@link JSONObject}
|
|
*
|
|
* @return {@link JSONObject}
|
|
*/
|
|
JSONObject createFolder(JSONObject object);
|
|
|
|
/**
|
|
* 获取文件内容
|
|
*
|
|
* @param object {@link JSONObject}
|
|
*
|
|
* @return 文件内容
|
|
*/
|
|
String getContent(JSONObject object);
|
|
|
|
/**
|
|
* 编辑文件
|
|
*
|
|
* @param object {@link JSONObject}
|
|
*
|
|
* @return {@link JSONObject}
|
|
*/
|
|
JSONObject edit(JSONObject object);
|
|
|
|
/**
|
|
* 移除文件
|
|
*
|
|
* @param object {@link JSONObject}
|
|
*
|
|
* @return {@link JSONObject}
|
|
*/
|
|
JSONObject remove(JSONObject object);
|
|
|
|
/**
|
|
* 复制文件
|
|
*
|
|
* @param object {@link JSONObject}
|
|
*
|
|
* @return {@link JSONObject}
|
|
*/
|
|
JSONObject copy(JSONObject object);
|
|
|
|
/**
|
|
* 移动文件
|
|
*
|
|
* @param object {@link JSONObject}
|
|
*
|
|
* @return {@link JSONObject}
|
|
*/
|
|
JSONObject move(JSONObject object);
|
|
|
|
/**
|
|
* 重命名
|
|
*
|
|
* @param object {@link JSONObject}
|
|
*
|
|
* @return {@link JSONObject}
|
|
*/
|
|
JSONObject rename(JSONObject object);
|
|
|
|
/**
|
|
* 列出文件
|
|
*
|
|
* @param object {@link JSONObject}
|
|
*
|
|
* @return {@link JSONObject}
|
|
*/
|
|
JSONArray list(JSONObject object);
|
|
}
|