|
|
@@ -39,14 +39,10 @@ public class PutObjectService {
|
|
|
String objectName = objectProp.getObjectName();
|
|
|
FileMeta fileMeta = objectRepository.getBySha256sum(sha256sum);
|
|
|
if (fileMeta != null) {
|
|
|
- log.error("{} 已存在", sha256sum);
|
|
|
- //copyObject(objectProp, originalFilename, fileMeta);
|
|
|
FileUtils.deleteQuietly(savedFile);
|
|
|
-
|
|
|
- /*String objectId = objectRepository.getByObjectName(objectName).getObjectId();
|
|
|
- String url = objectNameService.getObjectUrl(objectName);
|
|
|
- return new ObjectResult(objectName, objectId, ObjectType.Other.getCode(), "", url);*/
|
|
|
- return null;
|
|
|
+ log.error("{} 已存在", sha256sum);
|
|
|
+ ObjectResult objectResult = copyObject(objectProp, originalFilename, fileMeta);
|
|
|
+ return objectResult;
|
|
|
} else {
|
|
|
String savedPath = savedFile.getAbsolutePath();
|
|
|
long size = savedFile.length();
|
|
|
@@ -89,12 +85,18 @@ public class PutObjectService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- public void copyObject(ObjectProp objectProp, String filename, FileMeta fileMeta) {
|
|
|
+ public ObjectResult copyObject(ObjectProp objectProp, String filename, FileMeta fileMeta) {
|
|
|
+ String existObjectId = fileMeta.getObjectId();
|
|
|
+ int fileType = fileMeta.getFileType();
|
|
|
+ String savedPath = "";
|
|
|
String objectName = objectProp.getObjectName();
|
|
|
String objectId = UUID.randomUUID().toString().replace("-", "");
|
|
|
boolean diskFile = objectProp.isDiskFile();
|
|
|
int acl = objectProp.getAcl();
|
|
|
FileMeta fileMeta1 = new FileMeta(objectName, objectId, filename, fileMeta, diskFile, acl);
|
|
|
objectRepository.saveFileMeta(fileMeta1);
|
|
|
+
|
|
|
+ String url = objectNameService.getObjectUrl(objectName);
|
|
|
+ return new ObjectResult(objectName, objectId, fileType, savedPath, url);
|
|
|
}
|
|
|
}
|