From 8d6cd17c330388aa13fd7c39802c7400d85f972c Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Wed, 8 Jul 2015 19:39:35 +0200 Subject: [client] Redo package structure, add comments/TODOs, rename GUI classes --- dozentenmodul/src/main/java/ftp/UploadTask.java | 137 ------------------------ 1 file changed, 137 deletions(-) delete mode 100644 dozentenmodul/src/main/java/ftp/UploadTask.java (limited to 'dozentenmodul/src/main/java/ftp/UploadTask.java') 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 { - - /** - * 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); - } - } -} -- cgit v1.2.3-55-g7522