diff options
author | Simon Rettberg | 2016-04-18 18:01:03 +0200 |
---|---|---|
committer | Simon Rettberg | 2016-04-18 18:01:03 +0200 |
commit | 2b6cb079a7793536db9945b59749a3a6c9d726a4 (patch) | |
tree | 31a23d94c1e9df5af3dc33da0ea6924cc8c6aeab /src/main/java/org/openslx/filetransfer | |
parent | More additions for central image store (diff) | |
download | master-sync-shared-2b6cb079a7793536db9945b59749a3a6c9d726a4.tar.gz master-sync-shared-2b6cb079a7793536db9945b59749a3a6c9d726a4.tar.xz master-sync-shared-2b6cb079a7793536db9945b59749a3a6c9d726a4.zip |
Add queryUploadStatus to master server
Diffstat (limited to 'src/main/java/org/openslx/filetransfer')
-rw-r--r-- | src/main/java/org/openslx/filetransfer/util/ChunkList.java | 2 | ||||
-rw-r--r-- | src/main/java/org/openslx/filetransfer/util/IncomingTransferBase.java | 7 |
2 files changed, 7 insertions, 2 deletions
diff --git a/src/main/java/org/openslx/filetransfer/util/ChunkList.java b/src/main/java/org/openslx/filetransfer/util/ChunkList.java index e00aa0e..372b082 100644 --- a/src/main/java/org/openslx/filetransfer/util/ChunkList.java +++ b/src/main/java/org/openslx/filetransfer/util/ChunkList.java @@ -135,7 +135,7 @@ public class ChunkList int index = 0; for ( Boolean missing : statusList ) { FileChunk chunk = allChunks.get( index ); - if ( fileLength != 0 && fileLength < chunk.range.endOffset ) + if ( fileLength != -1 && fileLength < chunk.range.endOffset ) break; // Stop, file is shorter than end of this chunk if ( missingChunks.remove( chunk ) || pendingChunks.remove( chunk ) ) { completeChunks.add( chunk ); diff --git a/src/main/java/org/openslx/filetransfer/util/IncomingTransferBase.java b/src/main/java/org/openslx/filetransfer/util/IncomingTransferBase.java index 9406c27..04ddc17 100644 --- a/src/main/java/org/openslx/filetransfer/util/IncomingTransferBase.java +++ b/src/main/java/org/openslx/filetransfer/util/IncomingTransferBase.java @@ -15,6 +15,7 @@ import java.util.concurrent.ExecutorService; import org.apache.log4j.Logger; import org.openslx.bwlp.thrift.iface.TransferState; +import org.openslx.bwlp.thrift.iface.TransferStatus; import org.openslx.filetransfer.DataReceivedCallback; import org.openslx.filetransfer.Downloader; import org.openslx.filetransfer.FileRange; @@ -107,7 +108,7 @@ public abstract class IncomingTransferBase extends AbstractTransfer implements H download.cancel(); } } - lastActivityTime.set( 0 ); + potentialFinishTime.set( 0 ); safeClose( tmpFileHandle ); } @@ -154,6 +155,10 @@ public abstract class IncomingTransferBase extends AbstractTransfer implements H return state; } + public synchronized TransferStatus getStatus() { + return new TransferStatus(chunks.getStatusArray(), getState()); + } + public final ChunkList getChunks() { return chunks; |