|
|
@@ -1,6 +1,10 @@
|
|
|
package cn.reghao.oss.store.db.repository;
|
|
|
|
|
|
+import cn.reghao.jutil.jdk.converter.ByteConverter;
|
|
|
+import cn.reghao.jutil.jdk.converter.ByteType;
|
|
|
+import cn.reghao.jutil.jdk.converter.DateTimeConverter;
|
|
|
import cn.reghao.jutil.jdk.db.Page;
|
|
|
+import cn.reghao.oss.api.constant.ObjectType;
|
|
|
import cn.reghao.oss.api.dto.FileInfo;
|
|
|
import cn.reghao.oss.api.iface.ConsoleService;
|
|
|
import cn.reghao.oss.store.db.mapper.DataBlockMapper;
|
|
|
@@ -29,6 +33,7 @@ public class ObjectRepository {
|
|
|
private final FileMetaMapper fileMetaMapper;
|
|
|
private final DataBlockMapper dataBlockMapper;
|
|
|
private ConsoleService consoleService;
|
|
|
+ private ByteConverter byteConverter = new ByteConverter();
|
|
|
|
|
|
public ObjectRepository(FileMetaMapper fileMetaMapper, DataBlockMapper dataBlockMapper) {
|
|
|
this.fileMetaMapper = fileMetaMapper;
|
|
|
@@ -107,8 +112,19 @@ public class ObjectRepository {
|
|
|
|
|
|
public List<FileInfo> getObjectsByPage(String pid, int pn, int ps) {
|
|
|
Page page = new Page(pn, ps);
|
|
|
- List<FileInfo> list = fileMetaMapper.findPidByPage(page, pid);
|
|
|
- return list;
|
|
|
+ List<FileMeta> list = fileMetaMapper.findPidByPage(page, pid);
|
|
|
+ return list.stream().map(this::getFileInfo).collect(Collectors.toList());
|
|
|
+ }
|
|
|
+
|
|
|
+ private FileInfo getFileInfo(FileMeta fileMeta) {
|
|
|
+ String objectId = fileMeta.getObjectId();
|
|
|
+ String objectName = fileMeta.getObjectName();
|
|
|
+ int fileType = fileMeta.getFileType();
|
|
|
+ String fileTypeStr = ObjectType.getDescByCode(fileMeta.getFileType());
|
|
|
+ String filename = fileMeta.getFilename();
|
|
|
+ String size = byteConverter.convert(ByteType.Bytes, fileMeta.getSize());
|
|
|
+ String updateTime = DateTimeConverter.format(fileMeta.getUpdateTime());
|
|
|
+ return new FileInfo(objectId, objectName, fileType, fileTypeStr, filename, size, updateTime);
|
|
|
}
|
|
|
|
|
|
List<FileInfo> getObjects() {
|
|
|
@@ -128,14 +144,6 @@ public class ObjectRepository {
|
|
|
list = fileMetaMapper.findAll2(bucket, prefix, startAfter, maxKeys);
|
|
|
}
|
|
|
|
|
|
- return list.stream().map(fileMeta -> {
|
|
|
- String objectId = fileMeta.getObjectId();
|
|
|
- String objectName = fileMeta.getObjectName();
|
|
|
- int fileType = fileMeta.getFileType();
|
|
|
- String filename = fileMeta.getFilename();
|
|
|
- long size = fileMeta.getSize();
|
|
|
- LocalDateTime updateTime = fileMeta.getUpdateTime();
|
|
|
- return new FileInfo();
|
|
|
- }).collect(Collectors.toList());
|
|
|
+ return list.stream().map(this::getFileInfo).collect(Collectors.toList());
|
|
|
}
|
|
|
}
|