diff options
Diffstat (limited to 'Dozentenmodul/src/downloader/UploadTask.java')
| -rw-r--r-- | Dozentenmodul/src/downloader/UploadTask.java | 93 |
1 files changed, 0 insertions, 93 deletions
diff --git a/Dozentenmodul/src/downloader/UploadTask.java b/Dozentenmodul/src/downloader/UploadTask.java deleted file mode 100644 index 6d7de00f..00000000 --- a/Dozentenmodul/src/downloader/UploadTask.java +++ /dev/null @@ -1,93 +0,0 @@ -package downloader;
-
-import java.io.File;
-import java.io.FileInputStream;
-
-import javax.swing.JOptionPane;
-import javax.swing.SwingWorker;
-
-/**
- * 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> {
- private static final int BUFFER_SIZE = 4096;
-
- private String host;
- private int port;
- private String username;
- private String password;
-
- private String destDir;
- private File uploadFile;
-
- public UploadTask(String host, int port, String username, String password,
- String destDir, File uploadFile) {
- this.host = host;
- this.port = port;
- this.username = username;
- this.password = password;
- this.destDir = destDir;
- this.uploadFile = uploadFile;
- }
-
- /**
- * Executed in background thread
- */
- @Override
- protected Void doInBackground() throws Exception {
- FTPUtility util = new FTPUtility(host, port, username, password);
- try {
- util.connect();
- util.uploadFile(uploadFile, destDir);
-
- FileInputStream inputStream = new FileInputStream(uploadFile);
- byte[] buffer = new byte[BUFFER_SIZE];
- int bytesRead = -1;
- long totalBytesRead = 0;
- int percentCompleted = 0;
- long fileSize = uploadFile.length();
- long start=System.nanoTime();
- final double NANOS_PER_SECOND = 1000000000.0;
- final double BYTES_PER_MIB = 1024*1024;
- while ((bytesRead = inputStream.read(buffer)) != -1 && isCancelled()==false) {
- util.writeFileBytes(buffer, 0, bytesRead);
- totalBytesRead += bytesRead;
- percentCompleted = (int) (totalBytesRead * 100 / fileSize);
- double speed = NANOS_PER_SECOND / BYTES_PER_MIB * totalBytesRead / (System.nanoTime() - start + 1);
- setProgress(percentCompleted);
- firePropertyChange("speed", 0, speed);
- firePropertyChange("filesize", 0,fileSize);
- firePropertyChange("bytesread", 0,totalBytesRead);
- }
-
- inputStream.close();
-
- util.finish();
- } catch (FTPException ex) {
- JOptionPane.showMessageDialog(null, "Error uploading file: " + ex.getMessage(),
- "Error", JOptionPane.ERROR_MESSAGE);
- ex.printStackTrace();
- setProgress(0);
- cancel(true);
- } finally {
- util.disconnect();
- }
-
- return null;
- }
-
- /**
- * Executed in Swing's event dispatching thread
- */
- @Override
- protected void done() {
- if (!isCancelled()) {
- JOptionPane.showMessageDialog(null,
- "File has been uploaded successfully!", "Message",
- JOptionPane.INFORMATION_MESSAGE);
- }
- }
-}
\ No newline at end of file |
