feat: 删除文件

This commit is contained in:
禾几海
2020-10-15 23:30:19 +08:00
parent 19068ff14d
commit 49000e9ee6
4 changed files with 80 additions and 3 deletions

View File

@@ -14,15 +14,27 @@ import java.util.List;
*/ */
@Service @Service
public interface FileManager { public interface FileManager {
/** /**
* 解决语法错误 占位方法 * 上传文件到文件存储容器中
* *
* @param is 文件流
* @param fileName 文件名
* @return FileResponse
*/ */
FileResponse uploadFile(InputStream is, String fileName); FileResponse uploadFile(InputStream is, String fileName);
/** /**
* 解决语法错误 占位方法 * 获取文件列表
*
* @return 文件信息
*/ */
List<FileInfo> getFileList(); List<FileInfo> getFileList();
/**
* 删除文件
*
* @param fileName 文件名
* @return 是否删除成功
*/
boolean deleteFile(String fileName);
} }

View File

@@ -12,6 +12,7 @@ import com.qiniu.storage.Configuration;
import com.qiniu.storage.UploadManager; import com.qiniu.storage.UploadManager;
import com.qiniu.util.Auth; import com.qiniu.util.Auth;
import com.qiniu.util.StringMap; import com.qiniu.util.StringMap;
import lombok.SneakyThrows;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -99,6 +100,14 @@ public class QiniuFileServiceImpl implements FileManager {
return infoList; return infoList;
} }
@SneakyThrows
@Override
public boolean deleteFile(String fileName) {
Response response = bucketManager.delete(bucket, fileName);
return false;
}
private boolean continueFile(String key) { private boolean continueFile(String key) {
List<FileInfo> fileList = getFileList(); List<FileInfo> fileList = getFileList();
for (FileInfo fileInfo : fileList) { for (FileInfo fileInfo : fileList) {

View File

@@ -345,5 +345,11 @@ public class BaseTest {
log.debug("获取文件列表请求"); log.debug("获取文件列表请求");
return new ArrayList<>(); return new ArrayList<>();
} }
@Override
public boolean deleteFile(String fileName) {
log.debug("删除[{}]成功", fileName);
return true;
}
} }
} }

View File

@@ -0,0 +1,50 @@
package cn.celess.blog.service.fileserviceimpl;
import cn.celess.blog.BaseTest;
import cn.celess.blog.entity.model.FileResponse;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ActiveProfiles;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import static org.junit.Assert.*;
@Slf4j
@ActiveProfiles("prod")
public class QiniuFileServiceImplTest extends BaseTest {
@Autowired
QiniuFileServiceImpl qiniuFileService;
@SneakyThrows
@Test
public void uploadFile() {
String fileName = "test." + randomStr(3);
File file = new File(fileName);
if (!file.exists() && file.createNewFile()) {
// 创建文件
log.debug("创建文件[{}]", fileName);
FileOutputStream outputStream = new FileOutputStream(file);
for (int i = 0; i < 100; i++) {
outputStream.write(new byte[1024]);
}
outputStream.flush();
outputStream.close();
}
FileResponse fileResponse = qiniuFileService.uploadFile(new FileInputStream(file), fileName);
assertEquals(fileName, fileResponse.key);
}
@Test
public void getFileList() {
}
@Test
public void deleteFile() {
}
}