summaryrefslogtreecommitdiffstats
path: root/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/IncomingDataTransfer.java
diff options
context:
space:
mode:
authorSimon Rettberg2019-10-21 16:59:32 +0200
committerSimon Rettberg2019-10-21 17:08:16 +0200
commit535fc19e824abfe170b6fe03792519cb6e1105eb (patch)
treed6a5e7801eba3421f5f1bc40dcb17eabdb732ab3 /dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/IncomingDataTransfer.java
parent[client] Update virtualizer download link (diff)
downloadtutor-module-535fc19e824abfe170b6fe03792519cb6e1105eb.tar.gz
tutor-module-535fc19e824abfe170b6fe03792519cb6e1105eb.tar.xz
tutor-module-535fc19e824abfe170b6fe03792519cb6e1105eb.zip
[server] Disallow deleting busy images, fix multiple clones from master
Deleting images that are currently being up- or downloaded would create some confusion server-side, so disallow this. We accidentally didn't use the image version id as the transfer id for downloads from the master server; fix that so that triggering the download of the same image multiple times won't actually download the same image multiple times. Closes #3651
Diffstat (limited to 'dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/IncomingDataTransfer.java')
-rw-r--r--dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/IncomingDataTransfer.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/IncomingDataTransfer.java b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/IncomingDataTransfer.java
index 5267cab4..02a5eb3d 100644
--- a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/IncomingDataTransfer.java
+++ b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/IncomingDataTransfer.java
@@ -96,7 +96,7 @@ public class IncomingDataTransfer extends IncomingTransferBase {
public IncomingDataTransfer(ImagePublishData publishData, File tmpFile, TransferInformation transferInfo,
boolean repairUpload) throws FileNotFoundException {
- super(UUID.randomUUID().toString(), tmpFile, publishData.fileSize,
+ super(publishData.imageVersionId, tmpFile, publishData.fileSize,
ThriftUtil.unwrapByteBufferList(transferInfo.blockHashes), StorageChunkSource.instance);
ImageDetailsRead idr = new ImageDetailsRead();
idr.setCreateTime(publishData.createTime);
@@ -301,11 +301,15 @@ public class IncomingDataTransfer extends IncomingTransferBase {
return true;
}
- private String getVersionId() {
+ public String getVersionId() {
if (masterTransferInfo == null)
return getId();
return image.latestVersionId;
}
+
+ public String getBaseId() {
+ return image.imageBaseId;
+ }
@Override
public synchronized void cancel() {