java 调用 fastdfs_GitHub - TurtlesBox/fastdfs-client: FastDfs-client是一个访问Fastdfs的Java客户端框架,帮助开发人员快速使用分...

本文档详细介绍了Fastdfs-client Java客户端框架的StorageClient接口,包括文件上传、下载、元数据操作、文件删除等核心功能,旨在帮助开发者更便捷地使用FastDFS进行文件存储。
摘要由CSDN通过智能技术生成

/**

* 存储服务(Storage)客户端接口

*

* @author ningyu

* @date 2017年5月18日 上午11:25:03

*

*/

public interface StorageClient {

/**

* 上传文件

*

* @param groupName 组名称

* @param inputStream 文件输入流

* @param fileSize 文件大小

* @param fileExtName 文件扩展名

* @return 文件存储路径

*/

StorePath uploadFile(String groupName, InputStream inputStream, long fileSize, String fileExtName);

/**

* 文件上传

*

* @param inputStream 文件输入流

* @param fileSize 文件大小

* @param fileExtName 文件扩展名

* @return

*/

StorePath uploadFile(InputStream inputStream, long fileSize, String fileExtName);

/**

* 文件上传

*

* @param localFilePath 文件完全路径

* @return

*/

StorePath uploadFile(String localFilePath);

/**

* 文件上传

*

* @param localFilePath 文件完全路径

* @param fileExtName 文件后缀名

* @return

*/

StorePath uploadFile(String localFilePath, String fileExtName);

/**

* 文件上传

*

* @param groupName 组名称

* @param localFilePath 文件完全路径

* @param fileExtName 文件后缀名

* @return

*/

StorePath uploadFile(String groupName, String localFilePath, String fileExtName);

/**

* 上传从文件

*

* @param groupName 组名称

* @param masterFilename 主文件路径(fastdfs返回的file_id 去掉前面的group)

* @param inputStream 从文件输入流

* @param fileSize 从文件大小

* @param prefixName 从文件前缀

* @param fileExtName 主文件扩展名

* @return 文件存储路径

*/

StorePath uploadSlaveFile(String groupName, String masterFilename, InputStream inputStream, long fileSize, String prefixName, String fileExtName);

/**

* 上传从文件

*

* @param masterFileId 主文件路径(fastdfs返回的file_id,包含前面的group)

* @param inputStream 从文件输入流

* @param fileSize 从文件大小

* @param prefixName 从文件前缀

* @param fileExtName 主文件扩展名

* @return

*/

StorePath uploadSlaveFile(String masterFileId, InputStream inputStream, long fileSize, String prefixName, String fileExtName);

/**

* 获取文件元信息

*

* @param groupName 组名称

* @param path 主文件路径

* @return 获取文件元信息集合,不存在返回空集合

*/

Set getMetadata(String groupName, String path);

/**

* 获取文件元信息

*

* @param fileId 文件路径(fastdfs返回的file_id,包含前面的group)

* @return

*/

Set getMetadata(String fileId);

/**

* 修改文件元信息(覆盖)

*

* @param groupName 组名称

* @param path 主文件路径

* @param metaDataSet 元信息集合

*/

boolean overwriteMetadata(String groupName, String path, Set metaDataSet);

/**

* 修改文件元信息(覆盖)

*

* @param fileId 文件路径(fastdfs返回的file_id,包含前面的group)

* @param metaDataSet 元信息集合

* @return

*/

boolean overwriteMetadata(String fileId, Set metaDataSet);

/**

* 修改文件元信息(合并)

*

* @param groupName 组名称

* @param path 主文件路径

* @param metaDataSet 元信息集合

*/

boolean mergeMetadata(String groupName, String path, Set metaDataSet);

/**

* 修改文件元信息(合并)

*

* @param fileId 文件路径(fastdfs返回的file_id,包含前面的group)

* @param metaDataSet 元信息集合

* @return

*/

boolean mergeMetadata(String fileId, Set metaDataSet);

/**

* 获取文件的信息

*

* @param groupName 组名称

* @param path 主文件路径

* @return 文件信息(不存在返回null)

*/

FileInfo getFileInfo(String groupName, String path);

/**

* 获取文件信息

*

* @param fileId 文件路径(fastdfs返回的file_id,包含前面的group)

* @return

*/

FileInfo getFileInfo(String fileId);

/**

* 删除文件

*

* @param groupName 组名称

* @param path 主文件路径

*/

boolean deleteFile(String groupName, String path);

/**

* 删除文件

*

* @param fileId 文件路径(fastdfs返回的file_id,包含前面的group)

* @return

*/

boolean deleteFile(String fileId);

/**

* 下载整个文件

*

* @param groupName 组名称

* @param path 主文件路径

* @param callback 下载回调接口

* @return 下载回调接口返回结果

*/

T downloadFile(String groupName, String path, DownloadCallback callback);

/**

* 下载整个文件

*

* @param fileId 文件路径(fastdfs返回的file_id,包含前面的group)

* @param callback 下载回调接口

* @return

*/

T downloadFile(String fileId, DownloadCallback callback);

/**

* 下载文件片段

*

* @param groupName 组名称

* @param path 主文件路径

* @param fileOffset 开始位置

* @param fileSize 文件大小(经过测试好像这个参数值只能是“0”)

* @param callback 下载回调接口

* @return 下载回调接口返回结果

*/

T downloadFile(String groupName, String path, long fileOffset, long fileSize, DownloadCallback callback);

/**

* 下载文件片段

*

* @param fileId 文件路径(fastdfs返回的file_id,包含前面的group)

* @param fileOffset 开始位置

* @param fileSize 文件大小(经过测试好像这个参数值只能是“0”)

* @param callback 下载回调接口

* @return

*/

T downloadFile(String fileId, long fileOffset, long fileSize, DownloadCallback callback);

// ----------------------------------------------------------------------------------------------------------------------------------------------------

/**

* 上传文件, 并设置文件元数据

*

* @param inputStream 文件输入流

* @param fileSize 文件大小

* @param fileExtName 文件扩展名

* @param metaDataSet 元信息集合

* @return 文件存储路径

*/

StorePath uploadFile(InputStream inputStream, long fileSize, String fileExtName, Set metaDataSet);

/**

* 上传文件, 并设置文件元数据

*

* @param groupName 组名

* @param inputStream 文件输入流

* @param fileSize 文件大小

* @param fileExtName 文件扩展名

* @param metaDataSet 元信息集合

* @return

*/

StorePath uploadFile(String groupName, InputStream inputStream, long fileSize, String fileExtName, Set metaDataSet);

/**

* 文件上传(支持续传追加内容)

*

* @param groupName 组名称

* @param inputStream 文件输入流(文件部分)

* @param fileSize 文件大小

* @param fileExtName 文件扩展名

* @return 文件存储路径

*/

StorePath uploadAppenderFile(String groupName, InputStream inputStream, long fileSize, String fileExtName);

/**

* 续传文件(追加内容)

* 从末尾追加内容

*

* @param groupName 组名称

* @param path 文件路径

* @param inputStream 文件输入流(文件部分)

* @param fileSize 文件大小

*

*/

void appendFile(String groupName, String path, InputStream inputStream, long fileSize);

/**

* 续传文件(追加内容)

* 从末尾追加内容

*

* @param fileId 文件路径(fastdfs返回的file_id,包含前面的group)

* @param inputStream 文件输入流(文件部分)

* @param fileSize 文件大小

*

*/

void appendFile(String fileId, InputStream inputStream, long fileSize);

/**

* 修改文件内容的内容

* 从offset开始覆盖fileSize长度

* 报22参数错误,请检查offset是否超过文件长度

*

* @param groupName 组名称

* @param path 文件路径

* @param inputStream 文件输入流

* @param fileSize 文件大小

* @param fileOffset 开始位置

*

*/

void modifyFile(String groupName, String path, InputStream inputStream, long fileSize, long fileOffset);

/**

* 修改文件内容的内容

* 从offset开始覆盖fileSize长度

* 报22参数错误,请检查offset是否超过文件长度

*

* @param fileId 文件路径(fastdfs返回的file_id,包含前面的group)

* @param inputStream 文件输入流

* @param fileSize 文件大小

* @param fileOffset 开始位置

*

*/

void modifyFile(String fileId, InputStream inputStream, long fileSize, long fileOffset);

/**

* 清除文件的内容

*

* @param groupName 组名称

* @param path 文件路径

* @param truncatedFileSize 截断文件大小

*

*/

void truncateFile(String groupName, String path, long truncatedFileSize);

/**

* 清除文件的内容

*

* @param fileId 文件路径(fastdfs返回的file_id,包含前面的group)

* @param truncatedFileSize 截断文件大小

*

*/

void truncateFile(String fileId, long truncatedFileSize);

/**

* 清除文件的内容

*

* @param groupName 组名称

* @param path 文件路径

*

*/

void truncateFile(String groupName, String path);

/**

* 清除文件的内容

*

* @param fileId 文件路径(fastdfs返回的file_id,包含前面的group)

*

*/

void truncateFile(String fileId);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值