diff options
author | Simon Rettberg | 2015-07-20 12:33:05 +0200 |
---|---|---|
committer | Simon Rettberg | 2015-07-20 12:33:05 +0200 |
commit | f2d463f3c4a6ad76d4a530185eadde7a5858cf7d (patch) | |
tree | 26b10dd3d5b33dbc7f75bd68165d8030c53eb366 | |
parent | [server] Simplified db schema a bit (diff) | |
download | tutor-module-f2d463f3c4a6ad76d4a530185eadde7a5858cf7d.tar.gz tutor-module-f2d463f3c4a6ad76d4a530185eadde7a5858cf7d.tar.xz tutor-module-f2d463f3c4a6ad76d4a530185eadde7a5858cf7d.zip |
[client] Adapt to file transfer constructor changes
3 files changed, 9 insertions, 7 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/Config.java b/dozentenmodul/src/main/java/org/openslx/dozmod/Config.java index c15c6bb1..df1894bc 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/Config.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/Config.java @@ -25,6 +25,8 @@ public class Config { * Logger for this class */ private final static Logger LOGGER = Logger.getLogger(Config.class); + + public static final int TRANSFER_TIMEOUT = 20 * 1000; // 20s timeout for hung transfers public static interface ErrorCallback { void writeError(Throwable t); diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/filetransfer/DownloadTask.java b/dozentenmodul/src/main/java/org/openslx/dozmod/filetransfer/DownloadTask.java index a2cfcba7..2acd40e4 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/filetransfer/DownloadTask.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/filetransfer/DownloadTask.java @@ -5,6 +5,7 @@ import java.io.IOException; import java.io.RandomAccessFile; import org.apache.log4j.Logger; +import org.openslx.dozmod.Config; import org.openslx.filetransfer.DataReceivedCallback; import org.openslx.filetransfer.Downloader; import org.openslx.filetransfer.FileRange; @@ -33,7 +34,6 @@ public class DownloadTask implements Runnable { private final String downloadToken; private final String saveDir; private final long fileSize; - private boolean success = false; public DownloadTask(String host, int port, String downloadToken, String saveDir, long fileSize) { this.host = host; @@ -107,7 +107,7 @@ public class DownloadTask implements Runnable { Downloader download = null; RandomAccessFile file = null; try { - download = new Downloader(host, port, null, downloadToken); // TODO: SSL + download = new Downloader(host, port, Config.TRANSFER_TIMEOUT, null, downloadToken); // TODO: SSL try { file = new RandomAccessFile(new File(saveDir), "rw"); } catch (Exception e2) { @@ -129,14 +129,13 @@ public class DownloadTask implements Runnable { } } if (download != null) - download.close(null); + download.cancel(); } // if the download succeeded, set the progress to 100% manually again here to make // sure the GUI knows about it. if (ret) { LOGGER.debug("successul download."); - success = true; } return; diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/filetransfer/UploadTask.java b/dozentenmodul/src/main/java/org/openslx/dozmod/filetransfer/UploadTask.java index 87e8845c..ad7a3eab 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/filetransfer/UploadTask.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/filetransfer/UploadTask.java @@ -10,6 +10,7 @@ import org.apache.thrift.TException; import org.openslx.bwlp.thrift.iface.TInvalidTokenException; import org.openslx.bwlp.thrift.iface.TransferState; import org.openslx.bwlp.thrift.iface.TransferStatus; +import org.openslx.dozmod.Config; import org.openslx.filetransfer.UploadStatusCallback; import org.openslx.filetransfer.Uploader; import org.openslx.thrifthelper.ThriftManager; @@ -67,7 +68,7 @@ public class UploadTask implements Runnable { synchronized (this) { if (upload != null) throw new IllegalStateException("Cannot launch UploadTask twice!"); - upload = new Uploader(host, port, null, uploadToken); // TODO: SSL + upload = new Uploader(host, port, Config.TRANSFER_TIMEOUT, null, uploadToken); // TODO: SSL } final Uploader uploader = upload; final long fileSize = uploadFile.length(); @@ -164,7 +165,7 @@ public class UploadTask implements Runnable { LOGGER.error("Upload of " + uploadFile.getAbsolutePath() + " failed: ", e); } finally { if (upload != null) - upload.close(null); + upload.cancel(); } return; } @@ -191,6 +192,6 @@ public class UploadTask implements Runnable { public void cancel() { if (upload != null) - upload.close("Cancelled by user"); + upload.cancel(); } } |