From 9f7c44a1afe2a599a9e0249b480cfa3b4155e9e6 Mon Sep 17 00:00:00 2001 From: tspitzer Date: Thu, 17 Oct 2013 14:41:12 +0200 Subject: Version vom 17.10 -Hinweise eingefügt -Freigabe GUI ohne funktionalität eingefügt -Fenster zentriert -Download und Upload um Informationen erweitert --- Dozentenmodul/src/GUI/FTPUploader.java | 113 +++++++++++++++++++++++++++------ 1 file changed, 92 insertions(+), 21 deletions(-) (limited to 'Dozentenmodul/src/GUI/FTPUploader.java') diff --git a/Dozentenmodul/src/GUI/FTPUploader.java b/Dozentenmodul/src/GUI/FTPUploader.java index 8aa18cf4..0ac05ad2 100644 --- a/Dozentenmodul/src/GUI/FTPUploader.java +++ b/Dozentenmodul/src/GUI/FTPUploader.java @@ -2,8 +2,10 @@ package GUI; import java.awt.BorderLayout; import java.awt.Color; +import java.awt.Dimension; import java.awt.EventQueue; import java.awt.FlowLayout; +import java.awt.Toolkit; import java.io.BufferedReader; import java.io.File; import java.io.IOException; @@ -41,7 +43,6 @@ public class FTPUploader extends JFrame implements PropertyChangeListener { private JPanel contentPane; private final JPanel contentPanel = new JPanel(); JLabel lblNewLabel; - JLabel UpSpeed; JProgressBar progressBar; String host="bwlp-masterserver.ruf.uni-freiburg.de"; int port=21; @@ -52,6 +53,15 @@ public class FTPUploader extends JFrame implements PropertyChangeListener { File uploadFile; static String arg=""; UploadTask task; + JLabel UpSpeed; + JLabel labelfertig; + JLabel labelfilesize; + JLabel labelZeit; + JLabel labelverbleibend; + long filesize; + double speed; + long bytesread; + boolean taskrun=false; /** * Launch the application. */ @@ -75,7 +85,10 @@ public class FTPUploader extends JFrame implements PropertyChangeListener { addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent arg0) { + if(taskrun==true) + { task.cancel(true); + } } }); setResizable(false); @@ -94,7 +107,11 @@ public class FTPUploader extends JFrame implements PropertyChangeListener { //filename=name; setBackground(Color.WHITE); setTitle("Uploader"); - setBounds(100, 100, 450, 218); + Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); + int top=(screenSize.height - 603) / 2; + int left=(screenSize.width - 250) / 2; + setBounds(left, top, 603, 250); + //setBounds(100, 100, 603, 250); getContentPane().setLayout(new BorderLayout()); contentPanel.setBackground(Color.WHITE); contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5)); @@ -133,24 +150,55 @@ public class FTPUploader extends JFrame implements PropertyChangeListener { } }); - btnDownloadStarten.setBounds(10, 106, 141, 23); + btnDownloadStarten.setBounds(10, 155, 141, 23); contentPanel.add(btnDownloadStarten); progressBar = new JProgressBar(0,100); progressBar.setStringPainted(true); - progressBar.setBounds(10, 45, 414, 30); + progressBar.setBounds(10, 45, 577, 30); contentPanel.add(progressBar); - JLabel lblUploadgeschwindigkeit = new JLabel("Uploadgeschwindigkeit:"); - lblUploadgeschwindigkeit.setBounds(10, 75, 150, 14); - contentPanel.add(lblUploadgeschwindigkeit); + JLabel label = new JLabel("Downloadgeschwindigkeit:"); + label.setBounds(10, 89, 141, 14); + contentPanel.add(label); + + JLabel label_1 = new JLabel("Fertig:"); + label_1.setBounds(10, 114, 46, 14); + contentPanel.add(label_1); + + labelfertig = new JLabel(""); + labelfertig.setBounds(66, 114, 108, 14); + contentPanel.add(labelfertig); - UpSpeed = new JLabel(""); - UpSpeed.setBounds(169, 75, 170, 14); - UpSpeed.setText(String.valueOf(0)); + UpSpeed = new JLabel("0"); + UpSpeed.setBounds(169, 89, 95, 14); contentPanel.add(UpSpeed); + + JLabel label_4 = new JLabel("von:"); + label_4.setBounds(179, 114, 46, 14); + contentPanel.add(label_4); + + labelfilesize = new JLabel(""); + labelfilesize.setBounds(235, 114, 108, 14); + contentPanel.add(labelfilesize); + + JLabel label_6 = new JLabel("Verbleibend:"); + label_6.setBounds(353, 114, 71, 14); + contentPanel.add(label_6); + + JLabel label_7 = new JLabel("Gesch\u00E4tzte Verbleibende Zeit:"); + label_7.setBounds(274, 89, 150, 14); + contentPanel.add(label_7); + + labelZeit = new JLabel(""); + labelZeit.setBounds(425, 89, 117, 14); + contentPanel.add(labelZeit); + + labelverbleibend = new JLabel(""); + labelverbleibend.setBounds(434, 114, 108, 14); + contentPanel.add(labelverbleibend); { JPanel buttonPane = new JPanel(); buttonPane.setBackground(UIManager.getColor("Button.background")); @@ -171,8 +219,12 @@ public class FTPUploader extends JFrame implements PropertyChangeListener { JButton cancelButton = new JButton("Zur\u00FCck"); cancelButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - task.cancel(true); dispose(); + if(taskrun==true) + { + task.cancel(true); + } + } }); cancelButton.setActionCommand("Cancel"); @@ -206,7 +258,7 @@ public class FTPUploader extends JFrame implements PropertyChangeListener { task=new UploadTask(host,port,username,password,uploadPath, uploadFile); task.addPropertyChangeListener(this); task.execute(); - + taskrun=true; createXML(); TransferToSatellit(); @@ -220,14 +272,33 @@ public class FTPUploader extends JFrame implements PropertyChangeListener { progressBar.setValue(progress); } if("speed"==arg0.getPropertyName()){ - double speed=(double)arg0.getNewValue(); + speed=(double)arg0.getNewValue(); //if(speed<=1){ - UpSpeed.setText(String.valueOf(speed)); - //}else + + UpSpeed.setText(String.valueOf(speed).substring(0,String.valueOf(speed).lastIndexOf(".")+3)+" MB/s"); + + // }else //{ - // double MBSpeed=speed/1024; - // UpSpeed.setText(String.valueOf((MBSpeed)).substring(0, String.valueOf(MBSpeed).indexOf("."))); - // } + //double MBSpeed=speed/1024; + //downspeed.setText(String.valueOf((MBSpeed)).substring(0, String.valueOf(MBSpeed).indexOf("."))); + //} + + } + if("bytesread"==arg0.getPropertyName()) + { + bytesread=(long)arg0.getNewValue(); + labelfertig.setText((bytesread/1024/1024)+" MB"); + labelverbleibend.setText(((filesize/1024/1024)-(bytesread/1024/1024))+" MB"); + + + labelZeit.setText(String.valueOf(((((filesize/1024/1024)-(bytesread/1024/1024))/speed)/60)+1).substring(0,String.valueOf((((filesize/1024/1024)-(bytesread/1024/1024))/speed)/60).lastIndexOf("."))+ " Minuten"); + + + } + if("filesize"==arg0.getPropertyName()) + { + filesize=(long)arg0.getNewValue(); + labelfilesize.setText((filesize/1024/1024)+" MB"); } @@ -294,10 +365,10 @@ public class FTPUploader extends JFrame implements PropertyChangeListener { InputStream is=ch.getInputStream(); System.out.println(vm.vl.getLaborname()+".xml"); - System.out.println(lblNewLabel.getText().substring(lblNewLabel.getText().lastIndexOf("\\"))+".vmdk"); - ch.setCommand("sh /home/openslx/scripts/copy_files_to_satellite.sh '"+vm.vl.getLaborname()+".xml' '"+lblNewLabel.getText().substring(lblNewLabel.getText().lastIndexOf("\\"))+"'"); + System.out.println(lblNewLabel.getText().substring(lblNewLabel.getText().lastIndexOf("\\")+1)); + ch.setCommand("sh /home/openslx/scripts/copy_files_to_satellite.sh '"+vm.vl.getLaborname()+".xml' '"+lblNewLabel.getText().substring(lblNewLabel.getText().lastIndexOf("\\")+1)+"'"); //ch.setCommand("ls"); - + System.out.println("Erfolg"); ch.connect(); BufferedReader reader = new BufferedReader(new InputStreamReader(is)); -- cgit v1.2.3-55-g7522