|
|
@@ -1,10 +1,14 @@
|
|
|
package cn.reghao.dfs.store.oss.service;
|
|
|
|
|
|
import cn.reghao.dfs.store.oss.db.mapper.FileMetaMapper;
|
|
|
-import cn.reghao.dfs.store.oss.model.FileMeta;
|
|
|
+import cn.reghao.dfs.store.oss.model.po.FileMeta;
|
|
|
+import cn.reghao.dfs.store.oss.model.vo.Contents;
|
|
|
+import cn.reghao.dfs.store.oss.model.vo.ListBucketResult;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import java.time.LocalDateTime;
|
|
|
import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* @author reghao
|
|
|
@@ -18,8 +22,17 @@ public class BucketService {
|
|
|
this.fileMetaMapper = fileMetaMapper;
|
|
|
}
|
|
|
|
|
|
- public List<FileMeta> list() {
|
|
|
+ public ListBucketResult list() {
|
|
|
+ int count = fileMetaMapper.count();
|
|
|
List<FileMeta> list = fileMetaMapper.findAll();
|
|
|
- return list;
|
|
|
+ List<Contents> list1 = list.stream().map(fileMeta -> {
|
|
|
+ String key = fileMeta.getObjectName();
|
|
|
+ LocalDateTime lastModified = fileMeta.getUpdateTime();
|
|
|
+ String eTag = fileMeta.getSha256sum();
|
|
|
+ long size = fileMeta.getSize();
|
|
|
+ return new Contents(key, lastModified, eTag, size);
|
|
|
+ }).collect(Collectors.toList());
|
|
|
+
|
|
|
+ return new ListBucketResult(list1.size(), count, list1);
|
|
|
}
|
|
|
}
|