summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/ftp/UploadTask.java
diff options
context:
space:
mode:
authorSimon Rettberg2015-07-08 19:39:35 +0200
committerSimon Rettberg2015-07-08 19:39:35 +0200
commit8d6cd17c330388aa13fd7c39802c7400d85f972c (patch)
tree5f2c5856f58b1454e24dc16fad10751dfe9d087b /dozentenmodul/src/main/java/ftp/UploadTask.java
parentoops (diff)
downloadtutor-module-8d6cd17c330388aa13fd7c39802c7400d85f972c.tar.gz
tutor-module-8d6cd17c330388aa13fd7c39802c7400d85f972c.tar.xz
tutor-module-8d6cd17c330388aa13fd7c39802c7400d85f972c.zip
[client] Redo package structure, add comments/TODOs, rename GUI classes
Diffstat (limited to 'dozentenmodul/src/main/java/ftp/UploadTask.java')
-rw-r--r--dozentenmodul/src/main/java/ftp/UploadTask.java137
1 files changed, 0 insertions, 137 deletions
diff --git a/dozentenmodul/src/main/java/ftp/UploadTask.java b/dozentenmodul/src/main/java/ftp/UploadTask.java
deleted file mode 100644
index 7babb5f6..00000000
--- a/dozentenmodul/src/main/java/ftp/UploadTask.java
+++ /dev/null
@@ -1,137 +0,0 @@
-package ftp;
-
-import java.io.File;
-import java.io.IOException;
-
-import javax.swing.JOptionPane;
-import javax.swing.SwingWorker;
-
-import org.openslx.bwlp.thrift.iface.*;
-
-import org.apache.log4j.Logger;
-import org.openslx.filetransfer.UploadStatusCallback;
-import org.openslx.filetransfer.Uploader;
-
-/**
- * Executes the file upload in a background thread and updates progress to
- * listeners that implement the java.beans.PropertyChangeListener interface.
- *
- * @author www.codejava.net
- *
- */
-public class UploadTask extends SwingWorker<Void, Void> {
-
- /**
- * Logger instance for this class.
- */
- private final static Logger LOGGER = Logger.getLogger(UploadTask.class);
-
- private static final double UPDATE_INTERVAL_SECONDS = 0.6;
- private static final double UPDATE_INTERVAL_MS = UPDATE_INTERVAL_SECONDS * 1000;
- private static final double BYTES_PER_MIB = 1024 * 1024;
-
- private final String host;
- private final int port;
- private final String uploadToken;
- private final File uploadFile;
- private boolean success = false;
-
- public UploadTask(String host, int port, String uploadToken, File uploadFile) {
- // TODO: SSL
- this.host = host;
- this.port = port;
- this.uploadToken = uploadToken;
- this.uploadFile = uploadFile;
-
- }
-
- /**
- * Executed in background thread
- */
- @Override
- protected Void doInBackground() {
-
- Uploader upload = null;
- try {
- upload = new Uploader(host, port, null, uploadToken); // TODO: SSL
-
- final Uploader ul = upload;
- /* BROKEN CODE - FIXME class imports
- final long fileSize = Image.Filesize = uploadFile.length();
- BROKEN CODE - FIXME class imports */
- final long fileSize = 1000000;
-
-
- firePropertyChange("filesize", 0, fileSize); // Updates GUI
-
- final boolean ret = upload.upload(uploadFile.getAbsolutePath(), new UploadStatusCallback() {
- // progress counter
- private long totalBytesRead = 0;
- // initialize the counters needed for speed calculations
- private long lastUpdate = 0;
- private long lastBytes = 0;
- private long currentBytes = 0;
-
- @Override
- public void uploadProgress(long bytesSent) {
- totalBytesRead += bytesSent;
- currentBytes += bytesSent;
- final long now = System.currentTimeMillis();
- if (lastUpdate + UPDATE_INTERVAL_MS < now) {
- final int percentCompleted = (int) ((totalBytesRead * 100) / fileSize);
- setProgress(percentCompleted);
- lastBytes = (lastBytes * 2 + currentBytes) / 3;
- final double speed = lastBytes / UPDATE_INTERVAL_SECONDS;
- firePropertyChange("speed", 0, speed / BYTES_PER_MIB);
- firePropertyChange("bytesread", 0, totalBytesRead);
- lastUpdate = now;
- currentBytes = 0;
- }
- }
-
- @Override
- public void uploadError(String message) {
- JOptionPane.showMessageDialog(null, "Error uploading file: " + message, "Error",
- JOptionPane.ERROR_MESSAGE);
- ul.close(null);
- }
- });
-
- // if the upload succeeded, set the progress to 100% manually again here to make
- // sure the GUI knows about it.
- if (ret) {
- setProgress(100);
- firePropertyChange("bytesread", 0, uploadFile.length());
- firePropertyChange("success", false, true);
- success = true;
- }
- } catch (IOException e) {
- JOptionPane.showMessageDialog(null, "Error uploading file: " + e.getMessage(), "Error",
- JOptionPane.ERROR_MESSAGE);
- LOGGER.error("Upload of " + uploadFile.getAbsolutePath() + " failed!", e);
- } finally {
- if (upload != null)
- upload.close(null);
- }
-
- return null;
- }
-
- /**
- * Executed in Swing's event dispatching thread
- */
- @Override
- protected void done() {
- if (isCancelled())
- return;
- if (success) {
- LOGGER.info("Datei erfolgreich hochgeladen.");
- JOptionPane.showMessageDialog(null, "Datei erfolgreich hochgeladen.", "Message",
- JOptionPane.INFORMATION_MESSAGE);
- } else {
- LOGGER.error("Datei wurde unvollständig hochgeladen.");
- JOptionPane.showMessageDialog(null, "Datei wurde unvollständig hochgeladen. Bitte wiederholen.",
- "Message", JOptionPane.INFORMATION_MESSAGE);
- }
- }
-}