From 3231fee56ce50facd8483e7af4d7f9ff63c5bc38 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Fri, 6 Mar 2015 18:30:38 +0100 Subject: Aua, aua... --- .../java/gui/image/CreateImageAllgemein_GUI.java | 107 ++-- .../java/gui/image/CreateImageTechnisch_GUI.java | 174 +++--- .../src/main/java/gui/image/DeleteImage_GUI.java | 302 +++------- .../java/gui/image/EditImageAllgemein_GUI.java | 172 +++--- .../java/gui/image/EditImageTechnisch_GUI.java | 147 ++--- .../main/java/gui/image/FTPCreateUploader_GUI.java | 295 +++------- .../main/java/gui/image/FTPEditDownloader_GUI.java | 110 +--- .../main/java/gui/image/FTPEditUploader_GUI.java | 342 ++++------- .../java/gui/image/FTPSearchDownloader_GUI.java | 201 ++----- .../java/gui/image/PermissionCreateImage_GUI.java | 22 +- .../java/gui/image/PermissionEditImage_GUI.java | 9 +- .../main/java/gui/image/SearchEditImage_GUI.java | 429 ++++++-------- .../src/main/java/gui/image/SearchImage_GUI.java | 649 +++++++-------------- 13 files changed, 966 insertions(+), 1993 deletions(-) (limited to 'dozentenmodul/src/main/java/gui/image') diff --git a/dozentenmodul/src/main/java/gui/image/CreateImageAllgemein_GUI.java b/dozentenmodul/src/main/java/gui/image/CreateImageAllgemein_GUI.java index a212da9f..b63ac2ae 100644 --- a/dozentenmodul/src/main/java/gui/image/CreateImageAllgemein_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/CreateImageAllgemein_GUI.java @@ -3,7 +3,6 @@ package gui.image; import gui.intro.MainMenue_GUI; import java.awt.Color; -import java.awt.Component; import java.awt.FlowLayout; import java.awt.Font; import java.awt.SystemColor; @@ -22,8 +21,6 @@ import javax.swing.JSeparator; import javax.swing.JTextArea; import javax.swing.JTextField; import javax.swing.JTextPane; -import javax.swing.UIManager; -import javax.swing.UnsupportedLookAndFeelException; import javax.swing.border.EmptyBorder; import javax.swing.border.TitledBorder; import javax.swing.event.InternalFrameAdapter; @@ -31,14 +28,12 @@ import javax.swing.event.InternalFrameEvent; import models.Image; import models.person; - import util.GuiManager; @SuppressWarnings("serial") public class CreateImageAllgemein_GUI extends JInternalFrame { private final JPanel contentPanel = new JPanel(); - String[] result; private JTextField Vorname; private JTextField Nachname; private JTextField Hochschule; @@ -47,15 +42,13 @@ public class CreateImageAllgemein_GUI extends JInternalFrame { private JTextArea textAreadesc; private final int MAX_DESCRIPTION_LENGTH = 254; private JTextArea txtrGebenSieBitte_1; - Component c = null; - public static final String HELP_MESSAGE = "
" + - "Hier legen Sie zunächst ein Image an.
" + - "Dieses stellt die Grundlage Ihres Labors dar. Das Image ist der \"PC\", mit dem die Studenten arbeiten.
" + - "Installieren Sie alle benötigte Software und laden Sie am Ende dieses Prozesses die .vmdk-Datei hoch, um sie zu verwenden.
" + - "Um das Image richtig zuordnen zu können, werden hier einige grundlegende Informationen benötigt.
" + - "Geben Sie daher bitte einen allgemeinen Namen, sowie eine genauere Beschreibung ihres Images (Labors) an.
" + - "
"; - + public static final String HELP_MESSAGE = "
" + + "Hier legen Sie zunächst ein Image an.
" + + "Dieses stellt die Grundlage Ihres Labors dar. Das Image ist der \"PC\", mit dem die Studenten arbeiten.
" + + "Installieren Sie alle benötigte Software und laden Sie am Ende dieses Prozesses die .vmdk-Datei hoch, um sie zu verwenden.
" + + "Um das Image richtig zuordnen zu können, werden hier einige grundlegende Informationen benötigt.
" + + "Geben Sie daher bitte einen allgemeinen Namen, sowie eine genauere Beschreibung ihres Images (Labors) an.
" + + "
"; /** * Create the dialog. @@ -69,21 +62,9 @@ public class CreateImageAllgemein_GUI extends JInternalFrame { }); // Verhindert das Vergroessern des Fensters setResizable(false); - - - try { - // setzt das Look & Feel - UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); - } catch (ClassNotFoundException | InstantiationException - | IllegalAccessException | UnsupportedLookAndFeelException e) { - //LOGGER.error("Setting look and feel from system failed."); - e.printStackTrace(); - JOptionPane.showMessageDialog(c, - "Konnte das Farbschema des Systems nicht übernehmen.", "Debug-Message", - JOptionPane.ERROR_MESSAGE); - } + // Setzt den Titel - setTitle("bwLehrpool Suite - Image erzeugen - "+person.verantwortlicher.getUserID()); + setTitle("bwLehrpool Suite - Image erzeugen - " + person.verantwortlicher.getUserID()); // Zentriert das Fenster setBounds(0, 0, 603, 722); @@ -117,8 +98,8 @@ public class CreateImageAllgemein_GUI extends JInternalFrame { JPanel panel_1 = new JPanel(); panel_1.setBackground(SystemColor.menu); - panel_1.setBorder(new TitledBorder(null, "Informationen zum Image", - TitledBorder.LEADING, TitledBorder.TOP, null, null)); + panel_1.setBorder(new TitledBorder(null, "Informationen zum Image", TitledBorder.LEADING, + TitledBorder.TOP, null, null)); panel_1.setBounds(10, 66, 557, 369); contentPanel.add(panel_1); panel_1.setLayout(null); @@ -194,11 +175,8 @@ public class CreateImageAllgemein_GUI extends JInternalFrame { imagename.setText((String) null); imagename.setColumns(10); imagename.setBounds(145, 23, 350, 20); - imagename.setText(Image.image.getImagename()); // null am Anfang, aber - // speichert die - // Eingabe, wenn man - // zurueck kommt zur - // Seite + // null am Anfang, aber speichert die Eingabe, wenn man zurueck kommt zur Seite + imagename.setText(Image.Imagename); panel_1.add(imagename); JTextArea txtrGebenSieBitte = new JTextArea(); @@ -224,11 +202,9 @@ public class CreateImageAllgemein_GUI extends JInternalFrame { textAreadesc.setFont(new Font("Tahoma", Font.PLAIN, 11)); textAreadesc.setLineWrap(true); textAreadesc.setText((String) null); - textAreadesc.setText(Image.image.getDesc());// null am Anfang, aber - // speichert die Eingabe, - // wenn man zurueck kommt - // zur Seite - + // null am Anfang, aber speichert die Eingabe, wenn man zurueck kommt zur Seite + textAreadesc.setText(Image.Desc); + scrollPane.setViewportView(textAreadesc); txtrGebenSieBitte_1 = new JTextArea(); @@ -290,8 +266,8 @@ public class CreateImageAllgemein_GUI extends JInternalFrame { JButton backButton = new JButton("Zurück"); backButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - Image.image.setImagename(imagename.getText().trim()); - Image.image.setDesc(textAreadesc.getText().trim()); + Image.Imagename = imagename.getText().trim(); + Image.Desc = textAreadesc.getText().trim(); GuiManager.show(new MainMenue_GUI()); } }); @@ -305,18 +281,10 @@ public class CreateImageAllgemein_GUI extends JInternalFrame { // Prüfe Eingabe if (validateContent()) { // Schreibt die Daten in das Model - Image.image.setImagename(imagename.getText().trim()); - Image.image.setDesc(textAreadesc.getText().trim()); - - //LOGGER.info("Alle Eingaben in Ordnung. Imagename= \"" - // + Image.image.getImagename() - // + "\", Imagebeschreibung=\"" - // + Image.image.getDesc()+"\""); - + Image.Imagename = imagename.getText().trim(); + Image.Desc = textAreadesc.getText().trim(); + // Zeige nächsten Schritt an -// CreateImageTechnisch_GUI ea = new CreateImageTechnisch_GUI(); -// ea.setVisible(true); -// dispose(); GuiManager.show(new CreateImageTechnisch_GUI()); } } @@ -341,23 +309,18 @@ public class CreateImageAllgemein_GUI extends JInternalFrame { * Checks if the fields of the form have content, * if the image name has only alpha-numerical characters and * if the image description has less than 254 characters. - * + * * @return true if all fields are set, false otherwise. */ private boolean validateContent() { // check if any text field is empty - if (imagename.getText().trim().isEmpty() - || textAreadesc.getText().trim().isEmpty() - || Vorname.getText().trim().isEmpty() - || Nachname.getText().trim().isEmpty() - || Hochschule.getText().trim().isEmpty() - || EMail.getText().trim().isEmpty()) { + if (imagename.getText().trim().isEmpty() || textAreadesc.getText().trim().isEmpty() + || Vorname.getText().trim().isEmpty() || Nachname.getText().trim().isEmpty() + || Hochschule.getText().trim().isEmpty() || EMail.getText().trim().isEmpty()) { // missing some fields //LOGGER.info("Form has missing fields, warning user."); - JOptionPane.showMessageDialog(c, - "Bitte geben Sie alle notwendigen Daten an!", - "Daten unvollständig", - JOptionPane.ERROR_MESSAGE); + JOptionPane.showMessageDialog(null, "Bitte geben Sie alle notwendigen Daten an!", + "Daten unvollständig", JOptionPane.ERROR_MESSAGE); return false; } @@ -366,23 +329,21 @@ public class CreateImageAllgemein_GUI extends JInternalFrame { // if (!imagename.getText().trim().trim().matches("[a-zA-Z0-9\\x2B\\x2D\\x3A\\x5F]+")) { //LOGGER.info("Image name not alpha-numerical, warn user."); - JOptionPane.showMessageDialog( - c, - "Der Imagename darf nur aus Buchstaben, Zahlen und den Zeichen + - _ : bestehen.", - "Unerlaubte Zeichen", - JOptionPane.ERROR_MESSAGE); + JOptionPane.showMessageDialog(null, + "Der Imagename darf nur aus Buchstaben, Zahlen und den Zeichen + - _ : bestehen.", + "Unerlaubte Zeichen", JOptionPane.ERROR_MESSAGE); return false; } // max length for image description is 254 chars if (textAreadesc.getText().trim().length() >= MAX_DESCRIPTION_LENGTH) { - JOptionPane.showMessageDialog(c, - "Die Beschreibung darf max 254 Zeichen enthalten. Aktuell enthält sie "+textAreadesc.getText().trim().length()+".", - "Beschreibung zu umfangreich", + JOptionPane.showMessageDialog(null, + "Die Beschreibung darf max 254 Zeichen enthalten. Aktuell enthält sie " + + textAreadesc.getText().trim().length() + ".", "Beschreibung zu umfangreich", JOptionPane.ERROR_MESSAGE); return false; } - + // we passed all tests, return true! return true; } diff --git a/dozentenmodul/src/main/java/gui/image/CreateImageTechnisch_GUI.java b/dozentenmodul/src/main/java/gui/image/CreateImageTechnisch_GUI.java index 71728840..d4f9e614 100644 --- a/dozentenmodul/src/main/java/gui/image/CreateImageTechnisch_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/CreateImageTechnisch_GUI.java @@ -1,10 +1,8 @@ package gui.image; - import gui.intro.MainMenue_GUI; import java.awt.Color; -import java.awt.Component; import java.awt.FlowLayout; import java.awt.Font; import java.awt.SystemColor; @@ -25,8 +23,6 @@ import javax.swing.JSpinner; import javax.swing.JTextArea; import javax.swing.JTextPane; import javax.swing.SpinnerNumberModel; -import javax.swing.UIManager; -import javax.swing.UnsupportedLookAndFeelException; import javax.swing.border.EmptyBorder; import javax.swing.border.TitledBorder; @@ -49,51 +45,26 @@ public class CreateImageTechnisch_GUI extends JInternalFrame { private final static Logger LOGGER = Logger.getLogger(CreateImageTechnisch_GUI.class); private final JPanel contentPanel = new JPanel(); - String[] result; - JSpinner spinnerCPU; - JSpinner spinnerRam; + private JSpinner spinnerCPU; + private JSpinner spinnerRam; private JCheckBox chckbxIsLicensed; private JCheckBox chckbxIsInternetBlocked; - JComboBox comboBox; - Component c = null; - public static final String HELP_MESSAGE = "
" + - "Geben Sie hier bitte einige technische Daten an, die dann mit dem Image angezeigt werden.
" + - "Dies wird beispielsweise benötigt, wenn ein Dozent eine Veranstaltung hat,
" + - "die eine hohe Rechnerleistung voraussetzt. Er hat dann die Möglichkeit, sich an diesen Daten zu orientieren und
" + - "sie mit den technischen Daten des PC-Pools zu vergleichen."+ - "
"; - + private JComboBox comboBox; + public static final String HELP_MESSAGE = "
" + + "Geben Sie hier bitte einige technische Daten an, die dann mit dem Image angezeigt werden.
" + + "Dies wird beispielsweise benötigt, wenn ein Dozent eine Veranstaltung hat,
" + + "die eine hohe Rechnerleistung voraussetzt. Er hat dann die Möglichkeit, sich an diesen Daten zu orientieren und
" + + "sie mit den technischen Daten des PC-Pools zu vergleichen." + "
"; /** * Create the dialog. */ public CreateImageTechnisch_GUI() { -// addWindowListener(new WindowAdapter() { -// @Override -// public void windowClosing(WindowEvent arg0) { -// try { -// ThriftManager.getSatClient().setSessionInvalid(SessionData.AuthToken); -// } catch (TException e1) { -// // TODO Auto-generated catch block -// e1.printStackTrace(); -// } -// System.exit(0); -// } -// }); setResizable(false); - - try { - UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); - } catch (ClassNotFoundException | InstantiationException - | IllegalAccessException | UnsupportedLookAndFeelException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - setTitle("bwLehrpool Suite - Image erzeugen - "+person.verantwortlicher.getUserID()); + setTitle("bwLehrpool Suite - Image erzeugen - " + person.verantwortlicher.getUserID()); setBounds(0, 0, 603, 722); - getContentPane().setLayout(null); { JPanel panel = new JPanel(); @@ -107,7 +78,7 @@ public class CreateImageTechnisch_GUI extends JInternalFrame { panel.add(lblNewLabel); lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18)); } - + JTextPane txtpnBitteWhlenSie = new JTextPane(); txtpnBitteWhlenSie.setEditable(false); txtpnBitteWhlenSie.setBackground(SystemColor.menu); @@ -120,34 +91,33 @@ public class CreateImageTechnisch_GUI extends JInternalFrame { contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5)); getContentPane().add(contentPanel); contentPanel.setLayout(null); - + JPanel panel_1 = new JPanel(); panel_1.setBackground(SystemColor.menu); - panel_1.setBorder(new TitledBorder(null, "Informationen zum Image", TitledBorder.LEADING, TitledBorder.TOP, null, null)); + panel_1.setBorder(new TitledBorder(null, "Informationen zum Image", TitledBorder.LEADING, + TitledBorder.TOP, null, null)); panel_1.setBounds(10, 36, 557, 166); contentPanel.add(panel_1); panel_1.setLayout(null); - - + JLabel lblInternetIstInnerhalb = new JLabel("Internet ist für dieses Image gesperrt:"); lblInternetIstInnerhalb.setBounds(10, 82, 250, 20); panel_1.add(lblInternetIstInnerhalb); - + JButton btnInternetSettings = new JButton("Einstellungen..."); btnInternetSettings.setEnabled(false); btnInternetSettings.setBounds(439, 81, 108, 23); panel_1.add(btnInternetSettings); - - + JLabel lblNewLabel_2 = new JLabel("Image enthält lizenzpflichtige Software:"); lblNewLabel_2.setBounds(10, 54, 250, 20); panel_1.add(lblNewLabel_2); - + chckbxIsLicensed = new JCheckBox(""); chckbxIsLicensed.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { //if windows is selected, always set isLicensed()=true - if(comboBox.getSelectedItem().toString().startsWith("Windows")){ + if (comboBox.getSelectedItem().toString().startsWith("Windows")) { chckbxIsLicensed.setSelected(true); } } @@ -155,34 +125,33 @@ public class CreateImageTechnisch_GUI extends JInternalFrame { chckbxIsLicensed.setSelected(true); chckbxIsLicensed.setBounds(266, 52, 97, 23); panel_1.add(chckbxIsLicensed); - + chckbxIsInternetBlocked = new JCheckBox(""); - chckbxIsInternetBlocked.setSelected(Image.image.isInternet()); + chckbxIsInternetBlocked.setSelected(Image.Internet); chckbxIsInternetBlocked.setBounds(266, 80, 97, 23); chckbxIsInternetBlocked.setEnabled(false); panel_1.add(chckbxIsInternetBlocked); - + JLabel lblLizenzserverEintragen = new JLabel("Lizenzserver eintragen:"); lblLizenzserverEintragen.setBounds(10, 109, 250, 20); panel_1.add(lblLizenzserverEintragen); - + JButton btnLicenseServer = new JButton("Server-Adresse..."); btnLicenseServer.setEnabled(false); btnLicenseServer.setBounds(266, 108, 157, 23); panel_1.add(btnLicenseServer); - JLabel lblBetriebssystem = new JLabel("Betriebssystem:"); lblBetriebssystem.setBounds(10, 21, 250, 20); panel_1.add(lblBetriebssystem); - + // populate comboBox with list of supported OS we get // from the server ... comboBox = new JComboBox(); comboBox.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { //if windows is selected, always set isLicensed()=true - if(comboBox.getSelectedItem().toString().startsWith("Windows")){ + if (comboBox.getSelectedItem().toString().startsWith("Windows")) { chckbxIsLicensed.setSelected(true); } } @@ -190,7 +159,7 @@ public class CreateImageTechnisch_GUI extends JInternalFrame { List os = null; try { os = ThriftManager.getSatClient().getAllOS(SessionData.authToken); - for(int i=0; i"); label_1.setBounds(69, 11, 13, 14); contentPanel.add(label_1); - + JLabel lblVlimage = new JLabel("Image"); lblVlimage.setForeground(Color.BLUE); lblVlimage.setBounds(81, 11, 45, 14); contentPanel.add(lblVlimage); - + JLabel label_2 = new JLabel(">"); label_2.setBounds(133, 11, 13, 14); contentPanel.add(label_2); - + JLabel lblNewLabel_1 = new JLabel("Neu"); lblNewLabel_1.setBounds(146, 11, 155, 14); contentPanel.add(lblNewLabel_1); @@ -298,48 +269,37 @@ public class CreateImageTechnisch_GUI extends JInternalFrame { buttonPane.setBackground(SystemColor.menu); buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT)); getContentPane().add(buttonPane); + ActionListener saveSettings = new ActionListener() { + public void actionPerformed(ActionEvent e) { + // werte die angebenen Optionen aus + Image.Internet = chckbxIsInternetBlocked.isSelected(); + Image.Licensed = chckbxIsLicensed.isSelected(); + Image.Vorlage = chckbxIsLicensed.isSelected(); + Image.Cpu = Integer.valueOf(spinnerCPU.getValue().toString()).intValue(); + Image.Ram = Integer.valueOf(spinnerRam.getValue().toString()).intValue(); + Image.OS = comboBox.getSelectedItem().toString(); + GuiManager.show(new PermissionCreateImage_GUI()); + } + }; { JButton cancelButton = new JButton("Zurück"); - cancelButton.addActionListener(new ActionListener() { - public void actionPerformed(ActionEvent e) { - // werte die angebenen Optionen aus - Image.image.setInternet(chckbxIsInternetBlocked.isSelected()); - Image.image.setLicensed(chckbxIsLicensed.isSelected()); - Image.image.setVorlage(chckbxIsLicensed.isSelected()); - Image.image.setCpu(Integer.valueOf(spinnerCPU.getValue().toString()).intValue()); - Image.image.setRam(Integer.valueOf(spinnerRam.getValue().toString()).intValue()); - Image.image.setOS(comboBox.getSelectedItem().toString()); - GuiManager.show(new CreateImageAllgemein_GUI()); - } - }); + cancelButton.addActionListener(saveSettings); cancelButton.setActionCommand("OK"); buttonPane.add(cancelButton); } { JButton continueButton = new JButton("Weiter"); - continueButton.addActionListener(new ActionListener() { - public void actionPerformed(ActionEvent e) { - // werte die angebenen Optionen aus - Image.image.setInternet(chckbxIsInternetBlocked.isSelected()); - Image.image.setLicensed(chckbxIsLicensed.isSelected()); - //Image.image.setVorlage(chckbxIsTemplate.isSelected()); - Image.image.setCpu(Integer.valueOf(spinnerCPU.getValue().toString()).intValue()); - Image.image.setRam(Integer.valueOf(spinnerRam.getValue().toString()).intValue()); - Image.image.setOS(comboBox.getSelectedItem().toString()); - //LOGGER.info("Betriebssystem: "+Image.image.getOS()+", istVorlage: "+Image.image.isVorlage()+", Lizenzpflichtig: "+Image.image.isLicensed()+", Internetsperre: "+Image.image.isInternet()+", CPU: "+Image.image.getCpu()+", RAM: "+Image.image.getRam()); - GuiManager.show(new PermissionCreateImage_GUI()); - } - }); + continueButton.addActionListener(saveSettings); continueButton.setActionCommand("Cancel"); buttonPane.add(continueButton); getRootPane().setDefaultButton(continueButton); } } - + JSeparator separator = new JSeparator(); separator.setBounds(0, 78, 597, 2); getContentPane().add(separator); - + JSeparator separator_1 = new JSeparator(); separator_1.setBounds(0, 627, 597, 2); getContentPane().add(separator_1); diff --git a/dozentenmodul/src/main/java/gui/image/DeleteImage_GUI.java b/dozentenmodul/src/main/java/gui/image/DeleteImage_GUI.java index b5938138..21128e48 100644 --- a/dozentenmodul/src/main/java/gui/image/DeleteImage_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/DeleteImage_GUI.java @@ -1,9 +1,9 @@ package gui.image; +import gui.helper.TableFiller; import gui.intro.MainMenue_GUI; import java.awt.Color; -import java.awt.Component; import java.awt.FlowLayout; import java.awt.Font; import java.awt.HeadlessException; @@ -17,7 +17,6 @@ import java.awt.event.MouseEvent; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; -import java.util.Iterator; import java.util.List; import java.util.Map; @@ -27,7 +26,6 @@ import javax.swing.JInternalFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; -import javax.swing.JRadioButton; import javax.swing.JScrollPane; import javax.swing.JSeparator; import javax.swing.JTable; @@ -36,8 +34,6 @@ import javax.swing.JTextField; import javax.swing.JTextPane; import javax.swing.ListSelectionModel; import javax.swing.RowFilter; -import javax.swing.UIManager; -import javax.swing.UnsupportedLookAndFeelException; import javax.swing.border.EmptyBorder; import javax.swing.border.TitledBorder; import javax.swing.event.InternalFrameAdapter; @@ -61,47 +57,28 @@ import util.GuiManager; @SuppressWarnings("serial") public class DeleteImage_GUI extends JInternalFrame { - private final static Logger LOGGER = Logger - .getLogger(DeleteImage_GUI.class); + private final static Logger LOGGER = Logger.getLogger(DeleteImage_GUI.class); private final JPanel contentPanel = new JPanel(); - JLabel labelName; - JLabel labelUpdate; - JLabel labelVerantwortlicher; - JLabel labelWeitereVerantwortliche; - JLabel labelVorlage; - JLabel labelLizenzSoftware; - JLabel labelInternet; - JLabel labelRam; - JLabel labelCPU; - JLabel labelID; - JLabel labelVersion; - JTextArea textAreadesc; + private JLabel labelName; + private JLabel labelUpdate; + private JLabel labelVerantwortlicher; + private JLabel labelWeitereVerantwortliche; + private JLabel labelVorlage; + private JLabel labelLizenzSoftware; + private JLabel labelInternet; + private JLabel labelRam; + private JLabel labelCPU; + private JLabel labelID; + private JLabel labelVersion; + private JTextArea textAreadesc; private JLabel labelOS; - String[] result; - JRadioButton rdbtnInternetJa; - JRadioButton rdbtnInternetNein; - JComboBox comboBox; - JTable tablemyImages; + private JComboBox comboBox; + private JTable tablemyImages; private JTextField textFieldName; private JLabel lblTotalResults = new JLabel("Anzahl:"); - boolean activeSearch = false; - Component c = null; - String[] titles = { "Name", "Lizenzpflichtig", "OS", "Veranstaltung", - "Verantwortlicher", "Letztes Update", "ID", "Version", "Template", - "Beschreibung" }; // Angezeigt - // werden - // aber - // nur - // Name - // (0), - // OS - // (2), - // Verantwortlicher - // (4), - // Letztes - // Update - // (5) + private String[] titles = { "Name", "Lizenzpflichtig", "OS", "Veranstaltung", "Verantwortlicher", + "Letztes Update", "ID", "Version", "Template", "Beschreibung" }; public static final String HELP_MESSAGE = "
" + "Löschen Sie hier die Images, die nicht mehr benötigt werden.
" + "Ein gelöschtes Image wird auch tatsächlich physisch gelöscht und kann nicht wiederhergestellt werden.
" @@ -114,13 +91,10 @@ public class DeleteImage_GUI extends JInternalFrame { } }; - final TableRowSorter rowSorterMyImages = new TableRowSorter( - modelMyImages); - + final TableRowSorter rowSorterMyImages = new TableRowSorter(modelMyImages); RowFilter rf = null; - List> filters = new ArrayList>( - 2); + List> filters = new ArrayList>(2); /** * Create the dialog. @@ -133,7 +107,7 @@ public class DeleteImage_GUI extends JInternalFrame { addInternalFrameListener(new InternalFrameAdapter() { @Override public void internalFrameActivated(InternalFrameEvent arg0) { - + initTableModel(modelMyImages); // auszublendende Angaben // 1=Lizenzpflichtig @@ -166,38 +140,9 @@ public class DeleteImage_GUI extends JInternalFrame { textFieldName.requestFocusInWindow(); } }); - -// addWindowListener(new WindowAdapter() { -// @Override -// public void windowClosing(WindowEvent arg0) { -// // Beendet die Anwendung nach klick auf X -// try { -// ThriftManager.getSatClient().setSessionInvalid(SessionData.AuthToken); -// } catch (TException e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// } -// System.exit(0); -// } -// -// @Override -// public void windowOpened(WindowEvent arg0) { -// -// -// } -// }); - - try { - // Setzt das Look & Feel auf System - UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); - } catch (ClassNotFoundException | InstantiationException - | IllegalAccessException | UnsupportedLookAndFeelException e) { - e.printStackTrace(); - } // Setzt den Fenstertitel - setTitle("bwLehrpool Suite - Image löschen - " - + person.verantwortlicher.getUserID()); + setTitle("bwLehrpool Suite - Image löschen - " + person.verantwortlicher.getUserID()); // Zentriert das Fenster in die Bildmitte setBounds(0, 0, 918, 722); @@ -231,8 +176,8 @@ public class DeleteImage_GUI extends JInternalFrame { JPanel panel_1 = new JPanel(); panel_1.setBackground(SystemColor.menu); - panel_1.setBorder(new TitledBorder(null, "Filterfunktionen", - TitledBorder.LEADING, TitledBorder.TOP, null, null)); + panel_1.setBorder(new TitledBorder(null, "Filterfunktionen", TitledBorder.LEADING, TitledBorder.TOP, + null, null)); panel_1.setBounds(10, 49, 557, 98); contentPanel.add(panel_1); panel_1.setLayout(null); @@ -255,24 +200,16 @@ public class DeleteImage_GUI extends JInternalFrame { String stext = textFieldName.getText().trim(); // Wenn Textfield nicht leer - if (stext != "") { - activeSearch = true; + if (!stext.isEmpty()) { // Filtere nach der Eingabe filters.clear(); - filters.add(RowFilter.regexFilter("(?i)" + stext, 0)); // case - // insensitive - filters.add(RowFilter.regexFilter("(?i)" + stext, 9)); // case - // insensitive + filters.add(RowFilter.regexFilter("(?i)" + stext, 0)); + filters.add(RowFilter.regexFilter("(?i)" + stext, 9)); rf = RowFilter.orFilter(filters); rowSorterMyImages.setRowFilter(rf); } else { - activeSearch = false; - filters.clear(); - filters.add(RowFilter.regexFilter(".", 0)); // case - // insensitive, - // filter for - // anything + filters.add(RowFilter.regexFilter(".", 0)); rf = RowFilter.orFilter(filters); rowSorterMyImages.setRowFilter(rf); } @@ -288,8 +225,7 @@ public class DeleteImage_GUI extends JInternalFrame { comboBox = new JComboBox(); try { - // Holt sich eine Liste aller verfügbaren Betriebssysteme vom - // Server + // Holt sich eine Liste aller verfügbaren Betriebssysteme vom Server List list = ThriftManager.getSatClient().getAllOS(SessionData.authToken); // Leeres Item hinzufuegen comboBox.addItem(""); @@ -300,8 +236,7 @@ public class DeleteImage_GUI extends JInternalFrame { } catch (TException e2) { e2.printStackTrace(); - JOptionPane.showMessageDialog(c, - e2.getCause() + "\n" + e2.getStackTrace(), "Debug-Message", + JOptionPane.showMessageDialog(null, e2.getCause() + "\n" + e2.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } // Registriert Auswahlaenderungen der Box @@ -309,29 +244,10 @@ public class DeleteImage_GUI extends JInternalFrame { public void actionPerformed(ActionEvent arg0) { // Prueft das die Auswahl nicht leer ist if (comboBox.getSelectedItem().toString() != "") { - activeSearch = true; - - /* - * rowSorterAll.setRowFilter(RowFilter.regexFilter(comboBox - * .getSelectedItem().toString(), 2)); - */ - rowSorterMyImages.setRowFilter(RowFilter.regexFilter( - comboBox.getSelectedItem().toString(), 2)); - /* - * rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter - * ( comboBox.getSelectedItem().toString(), 2)); - */ + rowSorterMyImages.setRowFilter(RowFilter.regexFilter(comboBox.getSelectedItem() + .toString(), 2)); } else { - activeSearch = false; - /* - * String username = person.verantwortlicher.getName() + " " - * + person.verantwortlicher.getVorname(); - */ rowSorterMyImages.setRowFilter(null); - /* - * rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter - * ( "true", 8)); rowSorterAll.setRowFilter(null); - */ } } @@ -378,22 +294,17 @@ public class DeleteImage_GUI extends JInternalFrame { if (tablemyImages.getSelectedRowCount() != 0) { // frage, soll das selektierte Daten geloescht werden? - eingabe = JOptionPane.showConfirmDialog(c, - "Wollen Sie diese Daten löschen?", "Löschen?", - JOptionPane.YES_NO_OPTION); + eingabe = JOptionPane.showConfirmDialog(null, "Wollen Sie diese Daten löschen?", + "Löschen?", JOptionPane.YES_NO_OPTION); if (eingabe == JOptionPane.YES_OPTION) { imageid = modelMyImages.getValueAt( - tablemyImages - .convertRowIndexToModel(tablemyImages - .getSelectedRow()), 6) + tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()), 6) .toString(); imageversion = modelMyImages.getValueAt( - tablemyImages - .convertRowIndexToModel(tablemyImages - .getSelectedRow()), 7) + tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()), 7) .toString(); // Image darf nur geloescht werden, wenn keine @@ -401,69 +312,51 @@ public class DeleteImage_GUI extends JInternalFrame { // Unbdingt abfragen! try { - if (!ThriftManager.getSatClient().connectedToLecture(imageid, - imageversion, + if (!ThriftManager.getSatClient().connectedToLecture(imageid, imageversion, SessionData.authToken)) { try { // try to delete file from file system - if (ThriftManager.getSatClient().deleteImageServer(imageid, - imageversion, + if (ThriftManager.getSatClient().deleteImageServer(imageid, imageversion, SessionData.authToken) == true) { // successful, now delete file from DB if (ThriftManager.getSatClient().deleteImageData(imageid, - imageversion, - SessionData.authToken)) { + imageversion, SessionData.authToken)) { - LOGGER.info("Image '" + imageid - + "' erfolgreich gelöscht."); + LOGGER.info("Image '" + imageid + "' erfolgreich gelöscht."); GuiManager.show(new DeleteImage_GUI()); } else { //could not delete file from DB - LOGGER.info("Image '" - + imageid + LOGGER.info("Image '" + imageid + "' konnte nicht gelöscht werden."); - JOptionPane - .showMessageDialog( - c, - "Image konnte nicht gelöscht werden.", - "Fehler", - JOptionPane.INFORMATION_MESSAGE); + JOptionPane.showMessageDialog(null, + "Image konnte nicht gelöscht werden.", "Fehler", + JOptionPane.INFORMATION_MESSAGE); } } else { // could not delete file from file // system - LOGGER.info("Image '" - + imageid + LOGGER.info("Image '" + imageid + "' konnte nicht von Server gelöscht werden."); - JOptionPane - .showMessageDialog( - c, - "Image konnte nicht vom Server gelöscht werden.", - "Fehler", - JOptionPane.INFORMATION_MESSAGE); + JOptionPane.showMessageDialog(null, + "Image konnte nicht vom Server gelöscht werden.", "Fehler", + JOptionPane.INFORMATION_MESSAGE); } } catch (HeadlessException e) { e.printStackTrace(); - JOptionPane.showMessageDialog( - c, - e.getCause() + "\n" - + e.getStackTrace(), - "Debug-Message", + JOptionPane.showMessageDialog(null, + e.getCause() + "\n" + e.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } catch (TException e) { e.printStackTrace(); - JOptionPane.showMessageDialog( - c, - e.getCause() + "\n" - + e.getStackTrace(), - "Debug-Message", + JOptionPane.showMessageDialog(null, + e.getCause() + "\n" + e.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } @@ -474,16 +367,14 @@ public class DeleteImage_GUI extends JInternalFrame { JOptionPane .showMessageDialog( - c, + null, "Image kann nicht gelöscht werden, da mindestens eine Veranstaltung mit diesem Image verlinkt ist.", - "Verlinkung vorhanden", - JOptionPane.INFORMATION_MESSAGE); + "Verlinkung vorhanden", JOptionPane.INFORMATION_MESSAGE); } } catch (TException e) { e.printStackTrace(); - JOptionPane.showMessageDialog(c, e.getCause() - + "\n" + e.getStackTrace(), + JOptionPane.showMessageDialog(null, e.getCause() + "\n" + e.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } } @@ -499,28 +390,21 @@ public class DeleteImage_GUI extends JInternalFrame { scrollPaneMyImage.setBounds(10, 158, 557, 339); contentPanel.add(scrollPaneMyImage); tablemyImages = new JTable(); - tablemyImages.getSelectionModel().addListSelectionListener( - new ListSelectionListener() { - public void valueChanged(ListSelectionEvent e) { - - if (tablemyImages.getSelectedRow() != -1) { - String imageid = modelMyImages - .getValueAt( - tablemyImages - .convertRowIndexToModel(tablemyImages - .getSelectedRow()), - 6).toString(); - String version = modelMyImages - .getValueAt( - tablemyImages - .convertRowIndexToModel(tablemyImages - .getSelectedRow()), - 7).toString(); - writeImageData(imageid, version); - } - } + tablemyImages.getSelectionModel().addListSelectionListener(new ListSelectionListener() { + public void valueChanged(ListSelectionEvent e) { + + if (tablemyImages.getSelectedRow() != -1) { + String imageid = modelMyImages.getValueAt( + tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()), 6) + .toString(); + String version = modelMyImages.getValueAt( + tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()), 7) + .toString(); + writeImageData(imageid, version); + } + } - }); + }); tablemyImages.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); tablemyImages.setModel(modelMyImages); tablemyImages.getColumnModel().getColumn(1).sizeWidthToFit(); @@ -622,8 +506,7 @@ public class DeleteImage_GUI extends JInternalFrame { labelLizenzSoftware.setBounds(10, 383, 296, 14); panel.add(labelLizenzSoftware); - JLabel lblLizenzpflichtigeSoftware = new JLabel( - "Lizenzpflichtige Software:"); + JLabel lblLizenzpflichtigeSoftware = new JLabel("Lizenzpflichtige Software:"); lblLizenzpflichtigeSoftware.setBounds(10, 367, 130, 14); panel.add(lblLizenzpflichtigeSoftware); @@ -686,7 +569,6 @@ public class DeleteImage_GUI extends JInternalFrame { textAreadesc.setBackground(SystemColor.menu); scrollPane.setViewportView(textAreadesc); - } // Initiale Beffuelung eines Table models @@ -698,54 +580,24 @@ public class DeleteImage_GUI extends JInternalFrame { // Hole eine Liste der Images if (person.verantwortlicher.getRole() == "Admin") { // get complete list - images = ThriftManager.getSatClient().getImageList(person.verantwortlicher - .getUserID(),SessionData.authToken); + images = ThriftManager.getSatClient().getImageList(person.verantwortlicher.getUserID(), + SessionData.authToken); } else { // get permitted list images = ThriftManager.getSatClient().getImageListPermissionAdmin( - person.verantwortlicher.getUserID(), - SessionData.authToken); + person.verantwortlicher.getUserID(), SessionData.authToken); } - Iterator i = images.iterator(); - - System.out.println("Size of image list=" + images.size()); - - int x = 0; - SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss"); - - while (i.hasNext()) { - // erzeuge Objekte fuer die Tabelle - Object[] obj = { images.get(x).getImageName(), - images.get(x).getLicenseRestriction(), - images.get(x).getOsName(), - images.get(x).getLectureName(), - images.get(x).getUserData(), - out.format(in.parse(images.get(x).updateTime)), - images.get(x).id, images.get(x).getVersion(), - images.get(x).getIsTemplate(), - images.get(x).getDescription() }; - // Fuege diese Objekte der Tabelle hinzu - model.addRow(obj); - x++; - i.next(); - - } - if (x == 0) { - System.out.println("Damn... nothing to do here.."); - } + TableFiller.fillModelWithImageList(model, images); // show number if rows in GUI - lblTotalResults.setText(lblTotalResults.getText() + " " - + model.getRowCount()); + lblTotalResults.setText(lblTotalResults.getText() + " " + model.getRowCount()); return model; - } catch (TException | ParseException e1) { + } catch (TException e1) { e1.printStackTrace(); - JOptionPane.showMessageDialog(c, - e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message", + JOptionPane.showMessageDialog(null, e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } return model; diff --git a/dozentenmodul/src/main/java/gui/image/EditImageAllgemein_GUI.java b/dozentenmodul/src/main/java/gui/image/EditImageAllgemein_GUI.java index 9ea3dee9..d8c907be 100644 --- a/dozentenmodul/src/main/java/gui/image/EditImageAllgemein_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/EditImageAllgemein_GUI.java @@ -3,7 +3,6 @@ package gui.image; import gui.intro.MainMenue_GUI; import java.awt.Color; -import java.awt.Component; import java.awt.FlowLayout; import java.awt.Font; import java.awt.SystemColor; @@ -23,8 +22,6 @@ import javax.swing.JSeparator; import javax.swing.JTextArea; import javax.swing.JTextField; import javax.swing.JTextPane; -import javax.swing.UIManager; -import javax.swing.UnsupportedLookAndFeelException; import javax.swing.border.EmptyBorder; import javax.swing.border.TitledBorder; @@ -42,7 +39,6 @@ import util.GuiManager; public class EditImageAllgemein_GUI extends JInternalFrame { private final JPanel contentPanel = new JPanel(); - String[] result; private JTextField Vorname; private JTextField Nachname; private JTextField Hochschule; @@ -59,26 +55,17 @@ public class EditImageAllgemein_GUI extends JInternalFrame { private boolean nameIsOK = false; //imagename only contains letters private boolean descriptionLengthOK = false; //description may not be longer than MAX_DESCRIPTION_LENGTH private final int MAX_DESCRIPTION_LENGTH = 254; - Component c = null; - public static final String HELP_MESSAGE = "
" + - "Bearbeiten Sie hier die allgemeinen Angaben, die Sie beim Erzeugen des Images hinterlegt haben.
" + - "Sie können sowohl den Anzeigenamen als auch die Beschreibung ändern.
" + - "Änderungen der Informationen zum Besitzer sind nicht zulässig." + - "
"; + public static final String HELP_MESSAGE = "
" + + "Bearbeiten Sie hier die allgemeinen Angaben, die Sie beim Erzeugen des Images hinterlegt haben.
" + + "Sie können sowohl den Anzeigenamen als auch die Beschreibung ändern.
" + + "Änderungen der Informationen zum Besitzer sind nicht zulässig." + "
"; /** * Create the dialog. */ public EditImageAllgemein_GUI() { - try { - UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); - } catch (ClassNotFoundException | InstantiationException - | IllegalAccessException | UnsupportedLookAndFeelException e) { - e.printStackTrace(); - } - // Setzt den Fenstertitel - setTitle("bwLehrpool Suite - Image bearbeiten - "+person.verantwortlicher.getUserID()); + setTitle("bwLehrpool Suite - Image bearbeiten - " + person.verantwortlicher.getUserID()); // Zentriert das Fenster in der Bildmitte setBounds(0, 0, 603, 722); @@ -113,8 +100,8 @@ public class EditImageAllgemein_GUI extends JInternalFrame { JPanel panel_1 = new JPanel(); panel_1.setBackground(SystemColor.menu); - panel_1.setBorder(new TitledBorder(null, "Informationen zum Image", - TitledBorder.LEADING, TitledBorder.TOP, null, null)); + panel_1.setBorder(new TitledBorder(null, "Informationen zum Image", TitledBorder.LEADING, + TitledBorder.TOP, null, null)); panel_1.setBounds(10, 66, 557, 369); contentPanel.add(panel_1); panel_1.setLayout(null); @@ -185,10 +172,9 @@ public class EditImageAllgemein_GUI extends JInternalFrame { panel_1.add(lblImagename); imagename = new JTextField(); - imagename - .setToolTipText("Bitte geben Sie hier den Namen des Image ein, z.B. \"Programmieren\"."); + imagename.setToolTipText("Bitte geben Sie hier den Namen des Image ein, z.B. \"Programmieren\"."); imagename.setBackground(Color.WHITE); - imagename.setText(Image.image.getImagename()); + imagename.setText(Image.Imagename); imagename.setColumns(10); imagename.setBounds(145, 23, 350, 20); panel_1.add(imagename); @@ -201,26 +187,26 @@ public class EditImageAllgemein_GUI extends JInternalFrame { .setText("Geben Sie bitte einen sprechenden Namen für das Image an.\r\nDieser soll jedoch recht allgemein gehalten werden.\r\nBeispiel: \"Programmieren\", nicht \"Java Wintersemester bei...\""); txtrGebenSieBitte.setBounds(145, 48, 350, 55); panel_1.add(txtrGebenSieBitte); - + JLabel lblBeschreibung = new JLabel("Beschreibung: *"); lblBeschreibung.setBackground(SystemColor.menu); lblBeschreibung.setBounds(10, 110, 125, 20); panel_1.add(lblBeschreibung); - + JScrollPane scrollPane = new JScrollPane(); scrollPane.setBounds(145, 110, 350, 60); panel_1.add(scrollPane); - + textAreadesc = new JTextArea(); textAreadesc.setFont(new Font("Tahoma", Font.PLAIN, 11)); textAreadesc.setLineWrap(true); textAreadesc.setText((String) null); - textAreadesc.setText(Image.image.getDesc());// null am Anfang, aber - // speichert die Eingabe, - // wenn man zurueck kommt - // zur Seite + textAreadesc.setText(Image.Desc);// null am Anfang, aber + // speichert die Eingabe, + // wenn man zurueck kommt + // zur Seite scrollPane.setViewportView(textAreadesc); - + JTextArea textArea = new JTextArea(); textArea.setText("Geben Sie bitte eine Beschreibung für das Image an.\r\nDiese soll jedoch recht spezifisch gehalten werden.\r\nBeispiel: \"Java-Enticklung mit eclipse und MySQL\""); textArea.setLineWrap(true); @@ -283,7 +269,7 @@ public class EditImageAllgemein_GUI extends JInternalFrame { // Setzen der Eingabe im Model, dadurch bleiben die // Daten bei einem erneuten Aufruf verfuegbar - // Image.image.setImagename(imagename.getText().trim()); + // Image.Imagename(imagename.getText().trim = ); GuiManager.show(new SearchEditImage_GUI()); } }); @@ -297,18 +283,13 @@ public class EditImageAllgemein_GUI extends JInternalFrame { public void actionPerformed(ActionEvent arg0) { // Prueft die Eingabe und leitet weiter zur naechsten // Seite - if (checkContent() == true && checkNameIsLettersOrNumbers() == true && descriptionLenghtOK()== true) { + if (checkContent() == true && checkNameIsLettersOrNumbers() == true + && descriptionLenghtOK() == true) { // setze Namen, egal ob alt oder nicht - Image.image.setImagename(imagename.getText().trim()); - Image.image.setDesc(textAreadesc.getText().trim()); + Image.Imagename = imagename.getText().trim(); + Image.Desc = textAreadesc.getText().trim(); // Info - //LOGGER.info("Alle Eingaben in Ordnung. Imagename= \"" - // + Image.image.getImagename() - // + ", NewImageName=\"" - // + Image.image.getNewName() - // + "\", Imagebeschreibung=\"" - // + Image.image.getDesc()+"\""); GuiManager.show(new EditImageTechnisch_GUI()); @@ -332,55 +313,51 @@ public class EditImageAllgemein_GUI extends JInternalFrame { separator_1.setBounds(0, 627, 597, 2); getContentPane().add(separator_1); - } public void initData() { try { - Map map = ThriftManager.getSatClient().getImageData( - Image.image.getImageId(), Image.image.getVersion(),SessionData.authToken); - + Map map = ThriftManager.getSatClient().getImageData(Image.ImageId, Image.Version, + SessionData.authToken); + if (map.get("internet").equals("0")) { - Image.image.setInternet(false); + Image.Internet = false; } else { - Image.image.setInternet(true); + Image.Internet = true; } if (map.get("license").equals("0")) { - Image.image.setLicensed(false); + Image.Licensed = false; } else { - Image.image.setLicensed(true); + Image.Licensed = true; } //LOGGER.debug(map.get("template")); if (map.get("template").equals("false")) { - Image.image.setVorlage(false); + Image.Vorlage = false; } else { - Image.image.setVorlage(true); - } - Image.image.setImagename(map.get("name")); - Image.image.setRam(Integer.parseInt(map.get("ram"))); - Image.image.setCpu(Integer.parseInt(map.get("cpu"))); - Image.image.setImagepath(map.get("path")); - Image.image.setDesc(map.get("desc")); - Image.image.setFilesize(Long.parseLong(map.get("filesize"))); - int mode=0; - if(map.get("shareMode").equals("only_local")){ - mode=0; + Image.Vorlage = true; } - else - { - mode=1; + Image.Imagename = map.get("name"); + Image.Ram = Integer.parseInt(map.get("ram")); + Image.Cpu = Integer.parseInt(map.get("cpu")); + Image.Imagepath = map.get("path"); + Image.Desc = map.get("desc"); + Image.Filesize = Long.parseLong(map.get("filesize")); + int mode = 0; + if (map.get("shareMode").equals("only_local")) { + mode = 0; + } else { + mode = 1; } - Image.image.setShareMode(mode); - Image.image.setOS(map.get("os")); + Image.ShareMode = mode; + Image.OS = map.get("os"); } catch (TException e) { e.printStackTrace(); - JOptionPane.showMessageDialog(c, - e.getCause() + "\n" + e.getStackTrace(), "Debug-Message", + JOptionPane.showMessageDialog(null, e.getCause() + "\n" + e.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } }//end initData() - + public boolean checkNameIsLettersOrNumbers() { nameIsOK = false; @@ -388,23 +365,19 @@ public class EditImageAllgemein_GUI extends JInternalFrame { if (imagename.getText().trim().matches("[a-zA-Z0-9\\x2B\\x2D\\x3A\\x5F]+")) { nameIsOK = true; } else { - JOptionPane - .showMessageDialog( - c, - "Der Imagename darf nur aus Buchstaben, Zahlen und den Zeichen + - _ : bestehen.", - "Unerlaubte Zeichen", - JOptionPane.INFORMATION_MESSAGE); + JOptionPane.showMessageDialog(null, + "Der Imagename darf nur aus Buchstaben, Zahlen und den Zeichen + - _ : bestehen.", + "Unerlaubte Zeichen", JOptionPane.INFORMATION_MESSAGE); }// if return nameIsOK; }// end nameIsOK - - public boolean checkContent(){ - textfieldsHaveContent=false; - + + public boolean checkContent() { + textfieldsHaveContent = false; + //check if any textfield is empty - if(imagename.getText().trim().isEmpty() == false - && textAreadesc.getText().trim().isEmpty() == false + if (imagename.getText().trim().isEmpty() == false && textAreadesc.getText().trim().isEmpty() == false && Vorname.getText().trim().isEmpty() == false && Nachname.getText().trim().isEmpty() == false && Hochschule.getText().trim().isEmpty() == false @@ -412,34 +385,29 @@ public class EditImageAllgemein_GUI extends JInternalFrame { //all textfields have content textfieldsHaveContent = true; } else { - JOptionPane - .showMessageDialog( - c, - "Bitte geben Sie alle notwendigen Daten an!", - "Daten unvollständig", - JOptionPane.INFORMATION_MESSAGE); + JOptionPane.showMessageDialog(null, "Bitte geben Sie alle notwendigen Daten an!", + "Daten unvollständig", JOptionPane.INFORMATION_MESSAGE); }//end if - + return textfieldsHaveContent; }//end checkContent - - public boolean descriptionLenghtOK(){ - descriptionLengthOK=false; - + + public boolean descriptionLenghtOK() { + descriptionLengthOK = false; + //max length is 254 chars if (textAreadesc.getText().trim().length() >= MAX_DESCRIPTION_LENGTH) { - descriptionLengthOK=false; - JOptionPane - .showMessageDialog(c, - "Die Beschreibung darf max 254 Zeichen enthalten. Aktuell enthält sie "+textAreadesc.getText().trim().length()+".", - "Beschreibung zu umfangreich", + descriptionLengthOK = false; + JOptionPane.showMessageDialog(null, + "Die Beschreibung darf max 254 Zeichen enthalten. Aktuell enthält sie " + + textAreadesc.getText().trim().length() + ".", "Beschreibung zu umfangreich", JOptionPane.ERROR_MESSAGE); - }else { - descriptionLengthOK=true; - + } else { + descriptionLengthOK = true; + } - + return descriptionLengthOK; }// enddescriptionLenghtOK() - + }//end class diff --git a/dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java b/dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java index f8fa5298..75719cce 100644 --- a/dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java @@ -3,7 +3,6 @@ package gui.image; import gui.intro.MainMenue_GUI; import java.awt.Color; -import java.awt.Component; import java.awt.FlowLayout; import java.awt.Font; import java.awt.SystemColor; @@ -24,8 +23,6 @@ import javax.swing.JSpinner; import javax.swing.JTextArea; import javax.swing.JTextPane; import javax.swing.SpinnerNumberModel; -import javax.swing.UIManager; -import javax.swing.UnsupportedLookAndFeelException; import javax.swing.border.EmptyBorder; import javax.swing.border.TitledBorder; @@ -46,21 +43,19 @@ public class EditImageTechnisch_GUI extends JInternalFrame { * Logger instance for this class. */ private final static Logger LOGGER = Logger.getLogger(EditImageTechnisch_GUI.class); - + private final JPanel contentPanel = new JPanel(); - String[] result; - JSpinner spinnerCPU; - JSpinner spinnerRam; + private JSpinner spinnerCPU; + private JSpinner spinnerRam; private JCheckBox chckbxIsLicensed; private JCheckBox chckbxIsInternetBlocked; - JComboBox comboBox; - Component c = null; - public static final String HELP_MESSAGE = "
" + - "Bearbeiten Sie hier die technischen Angaben zu Ihrem Image, die Sie beim Erzeugen des Images hinterlegt haben.
" + - "Wenn sich die technischen Anforderungen an Ihr Image geändert haben, müssen Sie es nicht erneut hochladen,
" + - "sondern können die Angaben direkt hier korrigieren. Die Daten werden dann für Ihr Image übernommen." + - "
"; - + private JComboBox comboBox; + public static final String HELP_MESSAGE = "
" + + "Bearbeiten Sie hier die technischen Angaben zu Ihrem Image, die Sie beim Erzeugen des Images hinterlegt haben.
" + + "Wenn sich die technischen Anforderungen an Ihr Image geändert haben, müssen Sie es nicht erneut hochladen,
" + + "sondern können die Angaben direkt hier korrigieren. Die Daten werden dann für Ihr Image übernommen." + + "
"; + /** * Create the dialog. */ @@ -68,16 +63,8 @@ public class EditImageTechnisch_GUI extends JInternalFrame { // Verhindert das Vergrößern des Fensters setResizable(false); - try { - // setzt das Look & Feel - UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); - } catch (ClassNotFoundException | InstantiationException - | IllegalAccessException | UnsupportedLookAndFeelException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } // Setzt den Titel des Fensters - setTitle("bwLehrpool Suite - Image bearbeiten - "+person.verantwortlicher.getUserID()); + setTitle("bwLehrpool Suite - Image bearbeiten - " + person.verantwortlicher.getUserID()); // Zentriert das Fenster setBounds(0, 0, 603, 722); @@ -98,8 +85,7 @@ public class EditImageTechnisch_GUI extends JInternalFrame { JTextPane txtpnBitteWhlenSie = new JTextPane(); txtpnBitteWhlenSie.setEditable(false); txtpnBitteWhlenSie.setBackground(SystemColor.menu); - txtpnBitteWhlenSie - .setText("Geben Sie hier bitte einige technische Daten ein."); + txtpnBitteWhlenSie.setText("Geben Sie hier bitte einige technische Daten ein."); txtpnBitteWhlenSie.setBounds(10, 36, 509, 32); panel.add(txtpnBitteWhlenSie); } @@ -111,98 +97,92 @@ public class EditImageTechnisch_GUI extends JInternalFrame { JPanel panel_1 = new JPanel(); panel_1.setBackground(SystemColor.menu); - panel_1.setBorder(new TitledBorder(null, "Informationen zum Image", - TitledBorder.LEADING, TitledBorder.TOP, null, null)); + panel_1.setBorder(new TitledBorder(null, "Informationen zum Image", TitledBorder.LEADING, + TitledBorder.TOP, null, null)); panel_1.setBounds(10, 25, 557, 167); contentPanel.add(panel_1); panel_1.setLayout(null); - JLabel lblNewLabel_2 = new JLabel( - "Image enthält lizenzpflichtige Software:"); + JLabel lblNewLabel_2 = new JLabel("Image enthält lizenzpflichtige Software:"); lblNewLabel_2.setBounds(10, 58, 250, 20); panel_1.add(lblNewLabel_2); - + chckbxIsLicensed = new JCheckBox(""); chckbxIsLicensed.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { //if windows is selected, always set isLicensed()=true - if(comboBox.getSelectedItem().toString().startsWith("Windows")){ + if (comboBox.getSelectedItem().toString().startsWith("Windows")) { chckbxIsLicensed.setSelected(true); } } }); chckbxIsLicensed.setBounds(266, 57, 97, 23); panel_1.add(chckbxIsLicensed); - + chckbxIsInternetBlocked = new JCheckBox(""); chckbxIsInternetBlocked.setBounds(266, 85, 97, 23); chckbxIsInternetBlocked.setEnabled(false); panel_1.add(chckbxIsInternetBlocked); - JLabel lblInternetIstInnerhalb = new JLabel( - "Internet ist innerhalb des Images gesperrt:"); + JLabel lblInternetIstInnerhalb = new JLabel("Internet ist innerhalb des Images gesperrt:"); lblInternetIstInnerhalb.setBounds(10, 86, 250, 20); panel_1.add(lblInternetIstInnerhalb); JLabel label = new JLabel("Lizenzserver eintragen:"); label.setBounds(10, 115, 250, 20); panel_1.add(label); - + JButton button = new JButton("Server-Adresse..."); button.setEnabled(false); button.setBounds(266, 114, 157, 23); panel_1.add(button); - + JLabel lblBetriebssystem = new JLabel("Betriebssystem:"); lblBetriebssystem.setBounds(10, 26, 250, 20); panel_1.add(lblBetriebssystem); - + comboBox = new JComboBox(); comboBox.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - + //if windows is selected, always set isLicensed()=true - if(comboBox.getSelectedItem().toString().startsWith("Windows")){ + if (comboBox.getSelectedItem().toString().startsWith("Windows")) { chckbxIsLicensed.setSelected(true); } } }); - - List os = null; try { - os=ThriftManager.getSatClient().getAllOS(SessionData.authToken); - for(int i=0;iAchtung: Alle Änderungen gehen verloren!
Klicken Sie auf fertigstellen, wenn Sie die Änderungen dauerhaft speichern möchten.

Möchten Sie jetzt abbrechen und zurück?", - "Abbrechen und zurück", - JOptionPane.YES_NO_OPTION); + "Abbrechen und zurück", JOptionPane.YES_NO_OPTION); if (selectedOption == JOptionPane.YES_OPTION) { - // System.out.println("CreateUploader X:"+formerGUI.getLocation().getX()); - // System.out.println("CreateUploader X:"+formerGUI.getLocation().getY()); GuiManager.show(new PermissionCreateImage_GUI()); } else { // for actions if "no" is selected. tbd. @@ -575,7 +476,6 @@ public class FTPCreateUploader_GUI extends JInternalFrame implements } } - } private void buttonUploadActionPerformed(ActionEvent event) { @@ -586,34 +486,22 @@ public class FTPCreateUploader_GUI extends JInternalFrame implements btnUploadStarten.setText("Bitte warten"); try { - LOGGER.info("Getting FTP User..."); user = ThriftManager.getSatClient().getFtpUser(SessionData.authToken); LOGGER.info("Received FTP user."); - // LOGGER.debug("FTP name: " + user.userName); - // LOGGER.debug("FTP path: " + user.path); - // LOGGER.debug("FTP pass: " + user.password); } catch (TException e) { LOGGER.error("Konnte vom Satellit keinen FTP-User erhalten!"); e.printStackTrace(); - JOptionPane.showMessageDialog(c, - "Konnte vom Satellit keinen FTP-User erhalten!", + JOptionPane.showMessageDialog(null, "Konnte vom Satellit keinen FTP-User erhalten!", "Debug-Message", JOptionPane.ERROR_MESSAGE); } DateFormat formatter = new SimpleDateFormat("yyyMMddHHmmss"); - // LOGGER.info("Setting new name: " + formatter.format(new Date()) + "_" - // + person.verantwortlicher.getHochschule() + "_" - // + person.verantwortlicher.getUsername() + "_" - // + Image.image.getImagename() + ".vmdk"); - Image.image.setNewName(formatter.format(new Date()) + "_" - + person.verantwortlicher.getHochschule() + "_" - + person.verantwortlicher.getUsername() + "_" - + Image.image.getImagename() + ".vmdk"); + Image.NewName = formatter.format(new Date()) + "_" + person.verantwortlicher.getHochschule() + "_" + + person.verantwortlicher.getUsername() + "_" + Image.Imagename + ".vmdk"; LOGGER.info("Uploading to host: " + host); - task = new UploadTask(host, port, user.userName, user.password, - user.path + "temp/", uploadFile); + task = new UploadTask(host, port, user.userName, user.password, user.path + "temp/", uploadFile); task.addPropertyChangeListener(this); task.execute(); @@ -633,10 +521,8 @@ public class FTPCreateUploader_GUI extends JInternalFrame implements // Fertigstellen erlauben wenn upload abgeschlossen und abbrechen // erlauben wenn kein load aktiv ist - if (isCurrentlyLoading() == false - || progressBar.getPercentComplete() == 1.0) { + if (isCurrentlyLoading() == false || progressBar.getPercentComplete() == 1.0) { // no upload - // LOGGER.info("finished uploading file"); btnUploadStoppen.setEnabled(false); btnFinish.setEnabled(true); } else { @@ -652,16 +538,13 @@ public class FTPCreateUploader_GUI extends JInternalFrame implements lblUpSpeed.setText(String.format("%.2f", speed) + " MB/s"); } - if ("bytesread" == arg0.getPropertyName()) { + if (arg0.getPropertyName().equals("bytesread")) { bytesread = (long) arg0.getNewValue(); lblFertig.setText((bytesread / 1024 / 1024) + " MB"); - lblVerbleibend - .setText(((filesize / 1024 / 1024) - (bytesread / 1024 / 1024)) - + " MB"); + lblVerbleibend.setText(((filesize / 1024 / 1024) - (bytesread / 1024 / 1024)) + " MB"); lblZeit.setText(String - .valueOf( - ((((filesize / 1024 / 1024) - (bytesread / 1024 / 1024)) / speed) / 60) + 1) + .valueOf(((((filesize / 1024 / 1024) - (bytesread / 1024 / 1024)) / speed) / 60) + 1) .substring( 0, String.valueOf( @@ -670,7 +553,7 @@ public class FTPCreateUploader_GUI extends JInternalFrame implements + " Minuten"); } - if ("filesize" == arg0.getPropertyName()) { + if (arg0.getPropertyName().equals("filesize")) { filesize = (long) arg0.getNewValue(); lblFilesize.setText((filesize / 1024 / 1024) + " MB"); @@ -682,42 +565,26 @@ public class FTPCreateUploader_GUI extends JInternalFrame implements try { - ThriftManager.getSatClient().writeVLdata(Image.image.getImagename(), - Image.image.getDesc(), person.verantwortlicher.getTel(), - person.verantwortlicher.getFakultaet(), - Image.image.isLicensed(), Image.image.isInternet(), - Image.image.getRam(), Image.image.getCpu(), "temp/" - + Image.image.getNewName(), - Image.image.isVorlage(), Image.image.getFilesize(), - Image.image.getShareMode(), Image.image.getOS(), uuid, - SessionData.authToken, + ThriftManager.getSatClient().writeVLdata(Image.Imagename, Image.Desc, + person.verantwortlicher.getTel(), person.verantwortlicher.getFakultaet(), Image.Licensed, + Image.Internet, Image.Ram, Image.Cpu, "temp/" + Image.NewName, Image.Vorlage, + Image.Filesize, Image.ShareMode, Image.OS, uuid, SessionData.authToken, person.verantwortlicher.getUserID()); - // System.out.println("userID is: "+person.verantwortlicher.getUserID()); System.out.println("starting file copy..."); - ThriftManager.getSatClient().startFileCopy(Image.image.getNewName(), - SessionData.authToken); + ThriftManager.getSatClient().startFileCopy(Image.NewName, SessionData.authToken); ThriftManager.getSatClient().writeImageRights(uuid, SessionData.authToken, - person.verantwortlicher.getRole(), - person.verantwortlicher.getHochschule(), + person.verantwortlicher.getRole(), person.verantwortlicher.getHochschule(), person.verantwortlicher.getUserID()); - for (int i = 0; i < RightsManagement.rightsManagement - .getPermittedUserList().size(); i++) { - // System.out.println("Writing additional rights for user "+RightsManagement.rightsManagement.getPermittedUserList().get(i).getUserID()+", User "+i+"/"+RightsManagement.rightsManagement.getPermittedUserList().size()); + for (int i = 0; i < RightsManagement.rightsManagement.getPermittedUserList().size(); i++) { ThriftManager.getSatClient().writeAdditionalImageRights(uuid, - RightsManagement.rightsManagement - .getPermittedUserList().get(i).getUserID(), - RightsManagement.rightsManagement - .getPermittedUserList().get(i).isImageRead(), - RightsManagement.rightsManagement - .getPermittedUserList().get(i).isImageWrite(), - RightsManagement.rightsManagement - .getPermittedUserList().get(i) - .isImageLinkAllowed(), - RightsManagement.rightsManagement - .getPermittedUserList().get(i).isImageAdmin(), + RightsManagement.rightsManagement.getPermittedUserList().get(i).getUserID(), + RightsManagement.rightsManagement.getPermittedUserList().get(i).isImageRead(), + RightsManagement.rightsManagement.getPermittedUserList().get(i).isImageWrite(), + RightsManagement.rightsManagement.getPermittedUserList().get(i).isImageLinkAllowed(), + RightsManagement.rightsManagement.getPermittedUserList().get(i).isImageAdmin(), SessionData.authToken); }// end for @@ -725,8 +592,7 @@ public class FTPCreateUploader_GUI extends JInternalFrame implements } catch (TException e) { e.printStackTrace(); - JOptionPane.showMessageDialog(c, - e.getCause() + "\n" + e.getStackTrace(), "Debug-Message", + JOptionPane.showMessageDialog(null, e.getCause() + "\n" + e.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); return false; } @@ -737,8 +603,7 @@ public class FTPCreateUploader_GUI extends JInternalFrame implements public boolean isCurrentlyLoading() { isCurrentlyLoading = false; - if (lblVerbleibend.getText().trim().equals("0 MB") - || lblVerbleibend.getText().trim().equals("0")) { + if (lblVerbleibend.getText().trim().equals("0 MB") || lblVerbleibend.getText().trim().equals("0")) { isCurrentlyLoading = false; } else { isCurrentlyLoading = true; diff --git a/dozentenmodul/src/main/java/gui/image/FTPEditDownloader_GUI.java b/dozentenmodul/src/main/java/gui/image/FTPEditDownloader_GUI.java index ba6c056c..b7b0a9f4 100644 --- a/dozentenmodul/src/main/java/gui/image/FTPEditDownloader_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/FTPEditDownloader_GUI.java @@ -2,7 +2,6 @@ package gui.image; import java.awt.BorderLayout; import java.awt.Color; -import java.awt.Component; import java.awt.FlowLayout; import java.awt.Font; import java.awt.SystemColor; @@ -19,7 +18,6 @@ import javax.swing.JFileChooser; import javax.swing.JFrame; import javax.swing.JInternalFrame; import javax.swing.JLabel; -import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JOptionPane; import javax.swing.JPanel; @@ -28,7 +26,6 @@ import javax.swing.JSeparator; import javax.swing.JTextPane; import javax.swing.SwingConstants; import javax.swing.UIManager; -import javax.swing.UnsupportedLookAndFeelException; import javax.swing.border.EmptyBorder; import javax.swing.event.InternalFrameAdapter; import javax.swing.event.InternalFrameEvent; @@ -58,33 +55,29 @@ public class FTPEditDownloader_GUI extends JInternalFrame implements private final static Logger LOGGER = Logger .getLogger(FTPEditDownloader_GUI.class); - @SuppressWarnings("unused") - private JPanel contentPane; private final JPanel contentPanel = new JPanel(); - JLabel lblPath; - JLabel lblDownSpeed; - User user; - JProgressBar progressBar; - String host = SessionData.serverAdress; - int port = 21; - String downloadFile = ""; - static String arg = ""; - DownloadTask task; - JLabel lblFertig; - JLabel lblFilesize; - JLabel lblVerbleibend; - JFileChooser fc; - long filesize; - double speed; - int progress = 0; // progress of download - long bytesread; - JLabel lblZeit; - boolean taskrun = false; - JButton btnZurck = new JButton("Zurück"); - JButton btnDownloadStarten = new JButton("Download starten"); - JButton btnDownloadStoppen = new JButton("Download abbrechen"); + private JLabel lblPath; + private JLabel lblDownSpeed; + private User user; + private JProgressBar progressBar; + private String host = SessionData.serverAdress; + private int port = 21; + private String downloadFile = ""; + private DownloadTask task; + private JLabel lblFertig; + private JLabel lblFilesize; + private JLabel lblVerbleibend; + private JFileChooser fc; + private long filesize; + private double speed; + private int progress = 0; // progress of download + private long bytesread; + private JLabel lblZeit; + private boolean taskrun = false; + private JButton btnZurck = new JButton("Zurück"); + private JButton btnDownloadStarten = new JButton("Download starten"); + private JButton btnDownloadStoppen = new JButton("Download abbrechen"); private JLabel lblAnleitung; - Component c = null; private boolean isCurrentlyLoading = false; // currently up or downloading // file private boolean isAborted = false; // down- or upload was manually aborted @@ -107,7 +100,7 @@ public class FTPEditDownloader_GUI extends JInternalFrame implements // check if user wants to quit. int choice = JOptionPane .showOptionDialog( - c, + null, "Aktuell ist ein Download aktiv. Wollen Sie diesen Abbrechen und das Programm beenden?", "Upload aktiv", JOptionPane.YES_NO_CANCEL_OPTION, @@ -133,56 +126,7 @@ public class FTPEditDownloader_GUI extends JInternalFrame implements } } }); -// addWindowListener(new WindowAdapter() { -// @Override -// public void windowClosing(WindowEvent e) { -// if (taskrun == true) { -// // check if user wants to quit. -// int choice = JOptionPane -// .showOptionDialog( -// c, -// "Aktuell ist ein Download aktiv. Wollen Sie diesen Abbrechen und das Programm beenden?", -// "Upload aktiv", -// JOptionPane.YES_NO_CANCEL_OPTION, -// JOptionPane.QUESTION_MESSAGE, null, -// options, options[1]); -// // 0=beenden, 1=abbrechen -// if (choice == 0) { -// try { -// ThriftManager.getSatClient().DeleteFtpUser(user.userName,SessionData.AuthToken); -// try { -// ThriftManager.getSatClient().setSessionInvalid(SessionData.AuthToken); -// } catch (TException e1) { -// // TODO Auto-generated catch block -// e1.printStackTrace(); -// } -// } catch (TException e1) { -// -// e1.printStackTrace(); -// } -// task.cancel(true); -// System.exit(0); -// }// end if coice -// } else { -// // no download running, close window -// try { -// ThriftManager.getSatClient().setSessionInvalid(SessionData.AuthToken); -// } catch (TException e1) { -// // TODO Auto-generated catch block -// e1.printStackTrace(); -// } -// System.exit(0); -// }// end if taskrun -// }// end window closing -// }); setResizable(false); - try { - UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); - } catch (ClassNotFoundException | InstantiationException - | IllegalAccessException | UnsupportedLookAndFeelException e) { - - e.printStackTrace(); - } setBackground(Color.WHITE); setTitle("Dozentenmodul - Image herunterladen - "+person.verantwortlicher.getUserID()); @@ -425,7 +369,7 @@ public class FTPEditDownloader_GUI extends JInternalFrame implements if (isCurrentlyLoading() == true) { int choice = JOptionPane .showOptionDialog( - c, + null, "Nicht abgeschlossene Uploads werden beendet. Trotzdem zurück gehen?", "Warnung", JOptionPane.YES_NO_CANCEL_OPTION, @@ -484,13 +428,13 @@ public class FTPEditDownloader_GUI extends JInternalFrame implements downloadFile = user.path + "/" - + ThriftManager.getSatClient().getPathOfImage(Image.image.getImageId(), - Image.image.getVersion(),SessionData.authToken); + + ThriftManager.getSatClient().getPathOfImage(Image.ImageId, + Image.Version,SessionData.authToken); } catch (TException e) { e.printStackTrace(); - JOptionPane.showMessageDialog(c, + JOptionPane.showMessageDialog(null, e.getCause() + "\n" + e.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } @@ -524,7 +468,6 @@ public class FTPEditDownloader_GUI extends JInternalFrame implements if (isCurrentlyLoading() == false || progressBar.getPercentComplete() == 1.0) { // no download - // LOGGER.info("finished downloading file"); btnDownloadStoppen.setEnabled(false); } else { // currently uploading, don't let user interact @@ -580,7 +523,6 @@ public class FTPEditDownloader_GUI extends JInternalFrame implements }// end resetValues public void resetButtons() { - // btnFinish.setEnabled(false); btnDownloadStarten.setEnabled(true); btnDownloadStarten.setText("Download starten"); btnDownloadStoppen.setEnabled(false); diff --git a/dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java b/dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java index 19c9ba00..7777bf37 100644 --- a/dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java @@ -2,7 +2,6 @@ package gui.image; import java.awt.BorderLayout; import java.awt.Color; -import java.awt.Component; import java.awt.FlowLayout; import java.awt.Font; import java.awt.SystemColor; @@ -22,9 +21,6 @@ import javax.swing.JFileChooser; import javax.swing.JFrame; import javax.swing.JInternalFrame; import javax.swing.JLabel; -import javax.swing.JMenu; -import javax.swing.JMenuBar; -import javax.swing.JMenuItem; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JProgressBar; @@ -32,7 +28,6 @@ import javax.swing.JSeparator; import javax.swing.JTextPane; import javax.swing.SwingConstants; import javax.swing.UIManager; -import javax.swing.UnsupportedLookAndFeelException; import javax.swing.border.EmptyBorder; import javax.swing.event.InternalFrameAdapter; import javax.swing.event.InternalFrameEvent; @@ -49,55 +44,46 @@ import org.openslx.sat.thrift.iface.User; import org.openslx.thrifthelper.ThriftManager; import util.GuiManager; -import util.OpenLinks; import config.Config; import ftp.UploadTask; -import gui.intro.About_GUI; import gui.intro.MainMenue_GUI; @SuppressWarnings("serial") -public class FTPEditUploader_GUI extends JInternalFrame implements - PropertyChangeListener { +public class FTPEditUploader_GUI extends JInternalFrame implements PropertyChangeListener { /** * Logger instance for this class. */ - private final static Logger LOGGER = Logger - .getLogger(FTPEditUploader_GUI.class); + private final static Logger LOGGER = Logger.getLogger(FTPEditUploader_GUI.class); - @SuppressWarnings("unused") - private JPanel contentPane; private final JPanel contentPanel = new JPanel(); - JLabel lblPath; - JProgressBar progressBar; - String host = SessionData.serverAdress; - int port = 21; - User user; - String filename = ""; - File uploadFile; - static String arg = ""; - UploadTask task; - JLabel lblUpSpeed; - JLabel lblFertig; - JLabel lblFilesize; - JLabel lblZeit; - JLabel lblVerbleibend; - JFileChooser fc; - long filesize; - double speed; - long bytesread; - boolean fileupload = false; - boolean taskrun = false; - int progress = 0; - JButton btnUploadStarten = new JButton("Upload auf Server starten"); - JButton btnSpeicherortAuswhlen = new JButton("Image auswählen"); - JButton btnFinish = new JButton("Fertigstellen"); - JButton btnZurck = new JButton("Zurück"); - JButton btnUploadStoppen = new JButton("Upload abbrechen"); + private JLabel lblPath; + private JProgressBar progressBar; + private String host = SessionData.serverAdress; + private int port = 21; + private User user; + private File uploadFile; + private UploadTask task; + private JLabel lblUpSpeed; + private JLabel lblFertig; + private JLabel lblFilesize; + private JLabel lblZeit; + private JLabel lblVerbleibend; + private JFileChooser fc; + private long filesize; + private double speed; + private long bytesread; + private boolean fileupload = false; + private boolean taskrun = false; + private int progress = 0; + private JButton btnUploadStarten = new JButton("Upload auf Server starten"); + private JButton btnSpeicherortAuswhlen = new JButton("Image auswählen"); + private JButton btnFinish = new JButton("Fertigstellen"); + private JButton btnZurck = new JButton("Zurück"); + private JButton btnUploadStoppen = new JButton("Upload abbrechen"); private boolean isCurrentlyLoading = false; // currently up or downloading // file private boolean isAborted = false; // down- or upload was manually aborted - Component c = null; public static final String HELP_MESSAGE = "
" + "Laden Sie hier Ihre bearbeitete .vmdk-Datei hoch, die dann als virtuelles Labor geladen werden kann.
" + "Wichtig ist, dass Sie zum Schluss auf \"Fertigstellen\" klicken, damit die Daten übernommen werden.
" @@ -109,8 +95,6 @@ public class FTPEditUploader_GUI extends JInternalFrame implements * Create the frame. */ public FTPEditUploader_GUI() { - - final Object[] options = { "Beenden", "Abbrechen" }; addInternalFrameListener(new InternalFrameAdapter() { @@ -120,16 +104,14 @@ public class FTPEditUploader_GUI extends JInternalFrame implements // check if user wants to quit. int choice = JOptionPane .showOptionDialog( - c, + null, "Aktuell ist ein Upload aktiv. Wollen Sie diesen Abbrechen und das Programm beenden?", - "Upload aktiv", - JOptionPane.YES_NO_CANCEL_OPTION, - JOptionPane.QUESTION_MESSAGE, null, - options, options[1]); + "Upload aktiv", JOptionPane.YES_NO_CANCEL_OPTION, + JOptionPane.QUESTION_MESSAGE, null, options, options[1]); // 0=beenden, 1=abbrechen if (choice == 0) { try { - ThriftManager.getSatClient().DeleteFtpUser(user.userName,SessionData.authToken); + ThriftManager.getSatClient().DeleteFtpUser(user.userName, SessionData.authToken); } catch (TException e1) { e1.printStackTrace(); } @@ -151,68 +133,12 @@ public class FTPEditUploader_GUI extends JInternalFrame implements } } }); -// addWindowListener(new WindowAdapter() { -// @Override -// public void windowClosing(WindowEvent arg0) { -// -// if (taskrun == true) { -// // check if user wants to quit. -// int choice = JOptionPane -// .showOptionDialog( -// c, -// "Aktuell ist ein Upload aktiv. Wollen Sie diesen Abbrechen und das Programm beenden?", -// "Upload aktiv", -// JOptionPane.YES_NO_CANCEL_OPTION, -// JOptionPane.QUESTION_MESSAGE, null, -// options, options[1]); -// // 0=beenden, 1=abbrechen -// if (choice == 0) { -// try { -// ThriftManager.getSatClient().DeleteFtpUser(user.userName,SessionData.AuthToken); -// } catch (TException e1) { -// e1.printStackTrace(); -// } -// task.cancel(true); -// try { -// ThriftManager.getSatClient().setSessionInvalid(SessionData.AuthToken); -// } catch (TException e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// } -// try { -// ThriftManager.getSatClient().setSessionInvalid(SessionData.AuthToken); -// } catch (TException e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// } -// System.exit(0); -// }// end if choice -// } else { -// // no upload running, close window -// try { -// ThriftManager.getSatClient().setSessionInvalid(SessionData.AuthToken); -// } catch (TException e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// } -// System.exit(0); -// }// end if taskrun -// }// end window closing -// }); setResizable(false); // Aktion die beim Schliessen durchgefuehrt werden soll setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); - try { - UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); - } catch (ClassNotFoundException | InstantiationException - | IllegalAccessException | UnsupportedLookAndFeelException e) { - e.printStackTrace(); - } - - // filename=name; setBackground(Color.WHITE); - setTitle("Dozentenmodul - Image bearbeiten - "+person.verantwortlicher.getUserID()); + setTitle("Dozentenmodul - Image bearbeiten - " + person.verantwortlicher.getUserID()); setBounds(0, 0, 603, 722); @@ -227,8 +153,7 @@ public class FTPEditUploader_GUI extends JInternalFrame implements public void actionPerformed(ActionEvent arg0) { fc = new JFileChooser(Config.getLastUploadPath()); fc.setFileSelectionMode(JFileChooser.FILES_ONLY); - FileNameExtensionFilter filter = new FileNameExtensionFilter( - "VMDK-Container", "vmdk"); + FileNameExtensionFilter filter = new FileNameExtensionFilter("VMDK-Container", "vmdk"); fc.setFileFilter(filter); fc.showOpenDialog(getParent()); @@ -237,7 +162,7 @@ public class FTPEditUploader_GUI extends JInternalFrame implements if (file != null) { // file selected uploadFile = file; - filename = uploadFile.getName(); + uploadFile.getName(); lblPath.setText(file.getAbsolutePath()); } else { // no file selected @@ -360,7 +285,6 @@ public class FTPEditUploader_GUI extends JInternalFrame implements GuiManager.show(new MainMenue_GUI()); } }); - JLabel label_3 = new JLabel(">"); label_3.setBounds(80, 91, 14, 14); @@ -403,7 +327,7 @@ public class FTPEditUploader_GUI extends JInternalFrame implements isAborted = true; // set flag try { - ThriftManager.getSatClient().DeleteFtpUser(user.userName,SessionData.authToken); + ThriftManager.getSatClient().DeleteFtpUser(user.userName, SessionData.authToken); LOGGER.info("FTP user deleted."); } catch (TException e1) { e1.printStackTrace(); @@ -420,11 +344,11 @@ public class FTPEditUploader_GUI extends JInternalFrame implements btnUploadStoppen.setEnabled(false); btnUploadStoppen.setBounds(307, 238, 173, 23); contentPanel.add(btnUploadStoppen); - + JLabel lblNewLabel = new JLabel(" (opt.)"); lblNewLabel.setBounds(20, 179, 46, 14); contentPanel.add(lblNewLabel); - + JLabel lblopt = new JLabel(" (opt.)"); lblopt.setBounds(20, 257, 46, 14); contentPanel.add(lblopt); @@ -442,20 +366,17 @@ public class FTPEditUploader_GUI extends JInternalFrame implements // save data boolean success = updateData(); if (success == true) { - LOGGER.info("Bearbeitetes Image '"+Image.image.getImagename()+"' erfolgreich gespeichert."); - JOptionPane - .showMessageDialog( - c, - "Die Änderungen wurden erfolgreich gespeichert.", - "Änderungen gespeichert", - JOptionPane.INFORMATION_MESSAGE); + LOGGER.info("Bearbeitetes Image '" + Image.Imagename + + "' erfolgreich gespeichert."); + JOptionPane.showMessageDialog(null, + "Die Änderungen wurden erfolgreich gespeichert.", + "Änderungen gespeichert", JOptionPane.INFORMATION_MESSAGE); } else { - LOGGER.error("Bearbeitetes Image '"+Image.image.getImagename()+"' konnte nicht gespeichert werden."); - JOptionPane - .showMessageDialog( - c, - "Die Änderungen konnten nicht gespeichert werden.", - "Fehler", JOptionPane.ERROR_MESSAGE); + LOGGER.error("Bearbeitetes Image '" + Image.Imagename + + "' konnte nicht gespeichert werden."); + JOptionPane.showMessageDialog(null, + "Die Änderungen konnten nicht gespeichert werden.", "Fehler", + JOptionPane.ERROR_MESSAGE); } if (lblPath.getText().trim().length() > 0) { @@ -464,8 +385,7 @@ public class FTPEditUploader_GUI extends JInternalFrame implements if (f.isDirectory()) { Config.setLastUploadPath(f.toString()); } else if (f.getParentFile().isDirectory()) { - Config.setLastUploadPath(f.getParentFile() - .toString()); + Config.setLastUploadPath(f.getParentFile().toString()); } } @@ -475,13 +395,13 @@ public class FTPEditUploader_GUI extends JInternalFrame implements if (taskrun == true) { try { - ThriftManager.getSatClient().DeleteFtpUser(user.userName,SessionData.authToken); + ThriftManager.getSatClient().DeleteFtpUser(user.userName, + SessionData.authToken); } catch (TException e1) { e1.printStackTrace(); - JOptionPane.showMessageDialog(c, e1.getCause() - + "\n" + e1.getStackTrace(), - "Debug-Message", + JOptionPane.showMessageDialog(null, + e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } task.cancel(true); @@ -494,27 +414,26 @@ public class FTPEditUploader_GUI extends JInternalFrame implements // check if loading file or not if (isCurrentlyLoading() == true) { - int choice = JOptionPane - .showOptionDialog( - c, - "Nicht abgeschlossene Uploads werden beendet. Trotzdem zurück gehen?", - "Warnung", - JOptionPane.YES_NO_CANCEL_OPTION, - JOptionPane.QUESTION_MESSAGE, null, - options, options[1]); + int choice = JOptionPane.showOptionDialog(null, + "Nicht abgeschlossene Uploads werden beendet. Trotzdem zurück gehen?", + "Warnung", JOptionPane.YES_NO_CANCEL_OPTION, + JOptionPane.QUESTION_MESSAGE, null, options, options[1]); // 0=beenden, 1=abbrechen if (choice == 0) { try { - ThriftManager.getSatClient().DeleteFtpUser(user.userName,SessionData.authToken); + ThriftManager.getSatClient().DeleteFtpUser(user.userName, + SessionData.authToken); } catch (TException e1) { e1.printStackTrace(); } task.cancel(true); // not loading files, go back one page - + try { - if(ThriftManager.getSatClient().userIsImageAdmin(Image.image.getImageId(), SessionData.authToken,person.verantwortlicher.getUserID()) == true || person.verantwortlicher.getRole().equals("Admin")){ + if (ThriftManager.getSatClient().userIsImageAdmin(Image.ImageId, + SessionData.authToken, person.verantwortlicher.getUserID()) == true + || person.verantwortlicher.getRole().equals("Admin")) { //user is admin and may change permissions GuiManager.show(new PermissionEditImage_GUI()); @@ -526,23 +445,22 @@ public class FTPEditUploader_GUI extends JInternalFrame implements // TODO Auto-generated catch block e.printStackTrace(); } - }// end if coice } else { int selectedOption = JOptionPane .showConfirmDialog( - c, + null, "Achtung: Alle Änderungen gehen verloren!
Klicken Sie auf fertigstellen, wenn Sie die Änderungen dauerhaft speichern möchten.

Möchten Sie jetzt abbrechen und zurück?", - "Abbrechen und zurück", - JOptionPane.YES_NO_OPTION); + "Abbrechen und zurück", JOptionPane.YES_NO_OPTION); if (selectedOption == JOptionPane.YES_OPTION) { try { - System.out.println("userID in editimageuploader is : "+person.verantwortlicher.getUserID()); - - if(ThriftManager.getSatClient().userIsImageAdmin(Image.image.getImageId(), SessionData.authToken,person.verantwortlicher.getUserID()) == true) - { + System.out.println("userID in editimageuploader is : " + + person.verantwortlicher.getUserID()); + + if (ThriftManager.getSatClient().userIsImageAdmin(Image.ImageId, + SessionData.authToken, person.verantwortlicher.getUserID()) == true) { //user is admin and may change permissions GuiManager.show(new PermissionEditImage_GUI()); } else { @@ -579,35 +497,21 @@ public class FTPEditUploader_GUI extends JInternalFrame implements btnUploadStarten.setText("Bitte warten"); try { - //LOGGER.info("Getting FTP-User..."); user = ThriftManager.getSatClient().getFtpUser(SessionData.authToken); LOGGER.info("Received FTP user."); - //LOGGER.debug("FTP name: " + user.userName); - //LOGGER.debug("FTP path: " + user.path); - //LOGGER.debug("FTP pass: " + user.password); } catch (TException e) { e.printStackTrace(); - JOptionPane.showMessageDialog(c, - "Konnte vom Satelliten keine FTP-User erhalten!", + JOptionPane.showMessageDialog(null, "Konnte vom Satelliten keine FTP-User erhalten!", "Debug-Message", JOptionPane.ERROR_MESSAGE); } DateFormat formatter = new SimpleDateFormat("yyyMMddHHmmss"); // set new file name and path only when uploading a new file. else use // old filename and path - //LOGGER.info("Getting imagePath: "+Image.image.getImagepath()); - //LOGGER.info("Getting old 'newName': "+Image.image.getNewName()); - //LOGGER.info("Setting new File-Name: " + formatter.format(new Date()) + "_" - // + person.verantwortlicher.getHochschule() + "_" - // + person.verantwortlicher.getUsername() + "_" - // + Image.image.getImagename() + ".vmdk"); - Image.image.setNewName(formatter.format(new Date()) + "_" - + person.verantwortlicher.getHochschule() + "_" - + person.verantwortlicher.getUsername() + "_" - + Image.image.getImagename() + ".vmdk"); - - task = new UploadTask(host, port, user.userName, user.password, - user.path + "temp/", uploadFile); + Image.NewName = formatter.format(new Date()) + "_" + person.verantwortlicher.getHochschule() + "_" + + person.verantwortlicher.getUsername() + "_" + Image.Imagename + ".vmdk"; + + task = new UploadTask(host, port, user.userName, user.password, user.path + "temp/", uploadFile); task.addPropertyChangeListener(this); task.execute(); @@ -625,8 +529,7 @@ public class FTPEditUploader_GUI extends JInternalFrame implements } // Fertigstellen erlauben wenn upload abgeschlossen - if (isCurrentlyLoading() == false - || progressBar.getPercentComplete() == 1.0) { + if (isCurrentlyLoading() == false || progressBar.getPercentComplete() == 1.0) { // no upload // LOGGER.info("finished uploading file"); btnUploadStoppen.setEnabled(false); @@ -649,13 +552,10 @@ public class FTPEditUploader_GUI extends JInternalFrame implements if ("bytesread" == arg0.getPropertyName()) { bytesread = (long) arg0.getNewValue(); lblFertig.setText((bytesread / 1024 / 1024) + " MB"); - lblVerbleibend - .setText(((filesize / 1024 / 1024) - (bytesread / 1024 / 1024)) - + " MB"); + lblVerbleibend.setText(((filesize / 1024 / 1024) - (bytesread / 1024 / 1024)) + " MB"); lblZeit.setText(String - .valueOf( - ((((filesize / 1024 / 1024) - (bytesread / 1024 / 1024)) / speed) / 60) + 1) + .valueOf(((((filesize / 1024 / 1024) - (bytesread / 1024 / 1024)) / speed) / 60) + 1) .substring( 0, String.valueOf( @@ -675,73 +575,43 @@ public class FTPEditUploader_GUI extends JInternalFrame implements public boolean updateData() { try { - //LOGGER.debug("NewFileName: " + Image.image.getNewName()); - //LOGGER.debug("ImageName: " + Image.image.getImagename()); - //if a new file has been uploaded and new filename is set - if (Image.image.getNewName() != null) { + if (Image.NewName != null) { LOGGER.debug("New file uploaded and new filename is set"); - //LOGGER.debug("(NOT NULL) new FileName is '"+Image.image.getNewName()+"', imagepath="+ Image.image.getImagepath()); - - ThriftManager.getSatClient().updateImageData( - Image.image.getImagename(), - Image.image.getImagename(), - Image.image.getDesc(), - //Image.image.getImagepath(), - "temp/"+Image.image.getNewName(), - Image.image.isLicensed(), - Image.image.isInternet(), - Image.image.getRam(), - Image.image.getCpu(), - Image.image.getImageId(), - Image.image.getVersion(), - Image.image.isVorlage(), - Image.image.getFilesize(), - Image.image.getShareMode(), - Image.image.getOS(), - SessionData.authToken - ); + + ThriftManager.getSatClient().updateImageData(Image.Imagename, Image.Imagename, + Image.Desc, + //Image.Imagepath, + "temp/" + Image.NewName, Image.Licensed, Image.Internet, Image.Ram, Image.Cpu, + Image.ImageId, Image.Version, Image.Vorlage, Image.Filesize, Image.ShareMode, + Image.OS, SessionData.authToken); if (fileupload == true) { - ThriftManager.getSatClient().startFileCopy(Image.image.getNewName(),SessionData.authToken); + ThriftManager.getSatClient().startFileCopy(Image.NewName, SessionData.authToken); } } else { //no new file uploaded and old file name stays - //LOGGER.debug("(NULL) newName is '"+Image.image.getNewName()+"', imagepath="+ Image.image.getImagepath()); LOGGER.debug("old file should remain"); - - ThriftManager.getSatClient().updateImageData( - Image.image.getImagename(), - Image.image.getImagename(), - Image.image.getDesc(), - //"temp/" + Image.image.getNewName(), //wrong - Image.image.getImagepath(), - Image.image.isLicensed(), - Image.image.isInternet(), - Image.image.getRam(), - Image.image.getCpu(), - Image.image.getImageId(), - Image.image.getVersion(), - Image.image.isVorlage(), - Image.image.getFilesize(), - Image.image.getShareMode(), - Image.image.getOS(), - SessionData.authToken - ); + + ThriftManager.getSatClient().updateImageData(Image.Imagename, Image.Imagename, + Image.Desc, + //"temp/" + Image.NewName, //wrong + Image.Imagepath, Image.Licensed, Image.Internet, Image.Ram, Image.Cpu, Image.ImageId, + Image.Version, Image.Vorlage, Image.Filesize, Image.ShareMode, Image.OS, + SessionData.authToken); if (fileupload == true) { - ThriftManager.getSatClient().startFileCopy(Image.image.getNewName(),SessionData.authToken); - // client.startFileCopy(Image.image.getImagename()); + ThriftManager.getSatClient().startFileCopy(Image.NewName, SessionData.authToken); + // client.startFileCopy(Image.Imagename); } } - // remove all additional user permissions on first stage - ThriftManager.getSatClient().deleteAllAdditionalImagePermissions(Image.image.getImageId(),SessionData.authToken,person.verantwortlicher.getUserID()); + ThriftManager.getSatClient().deleteAllAdditionalImagePermissions(Image.ImageId, + SessionData.authToken, person.verantwortlicher.getUserID()); // then, add user permissions as they have been set new - for (int i = 0; i < RightsManagement.rightsManagement.getPermittedUserList().size(); i++) - { + for (int i = 0; i < RightsManagement.rightsManagement.getPermittedUserList().size(); i++) { /*System.out.println("Writing additional rights for user " + RightsManagement.rightsManagement .getPermittedUserList().get(i).getUserID() @@ -750,25 +620,22 @@ public class FTPEditUploader_GUI extends JInternalFrame implements + "/" + RightsManagement.rightsManagement.getPermittedUserList().size()); */ - - ThriftManager.getSatClient().writeAdditionalImageRights(Image.image.getImageId(), + + ThriftManager.getSatClient().writeAdditionalImageRights(Image.ImageId, RightsManagement.rightsManagement.getPermittedUserList().get(i).getUserID(), RightsManagement.rightsManagement.getPermittedUserList().get(i).isImageRead(), RightsManagement.rightsManagement.getPermittedUserList().get(i).isImageWrite(), RightsManagement.rightsManagement.getPermittedUserList().get(i).isImageLinkAllowed(), RightsManagement.rightsManagement.getPermittedUserList().get(i).isImageAdmin(), - SessionData.authToken - ); + SessionData.authToken); }// end for } catch (TException e) { e.printStackTrace(); - JOptionPane - .showMessageDialog( - c, - "Konnte die Metadaten des Images nicht in die Datenbank speichern!", - "Debug-Message", JOptionPane.ERROR_MESSAGE); + JOptionPane.showMessageDialog(null, + "Konnte die Metadaten des Images nicht in die Datenbank speichern!", "Debug-Message", + JOptionPane.ERROR_MESSAGE); return false; } return true; @@ -778,8 +645,7 @@ public class FTPEditUploader_GUI extends JInternalFrame implements public boolean isCurrentlyLoading() { isCurrentlyLoading = false; - if (lblVerbleibend.getText().trim().equals("0 MB") - || lblVerbleibend.getText().trim().equals("0")) { + if (lblVerbleibend.getText().trim().equals("0 MB") || lblVerbleibend.getText().trim().equals("0")) { isCurrentlyLoading = false; } else { isCurrentlyLoading = true; diff --git a/dozentenmodul/src/main/java/gui/image/FTPSearchDownloader_GUI.java b/dozentenmodul/src/main/java/gui/image/FTPSearchDownloader_GUI.java index daec08e6..f92d6a5c 100644 --- a/dozentenmodul/src/main/java/gui/image/FTPSearchDownloader_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/FTPSearchDownloader_GUI.java @@ -2,7 +2,6 @@ package gui.image; import java.awt.BorderLayout; import java.awt.Color; -import java.awt.Component; import java.awt.FlowLayout; import java.awt.Font; import java.awt.SystemColor; @@ -19,9 +18,6 @@ import javax.swing.JFileChooser; import javax.swing.JFrame; import javax.swing.JInternalFrame; import javax.swing.JLabel; -import javax.swing.JMenu; -import javax.swing.JMenuBar; -import javax.swing.JMenuItem; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JProgressBar; @@ -29,7 +25,6 @@ import javax.swing.JSeparator; import javax.swing.JTextPane; import javax.swing.SwingConstants; import javax.swing.UIManager; -import javax.swing.UnsupportedLookAndFeelException; import javax.swing.border.EmptyBorder; import javax.swing.event.InternalFrameAdapter; import javax.swing.event.InternalFrameEvent; @@ -47,59 +42,51 @@ import util.GuiManager; import util.OpenLinks; import config.Config; import ftp.DownloadTask; -import gui.intro.About_GUI; import gui.intro.MainMenue_GUI; @SuppressWarnings("serial") -public class FTPSearchDownloader_GUI extends JInternalFrame implements - PropertyChangeListener { +public class FTPSearchDownloader_GUI extends JInternalFrame implements PropertyChangeListener { - private final static Logger LOGGER = Logger - .getLogger(FTPEditDownloader_GUI.class); + private final static Logger LOGGER = Logger.getLogger(FTPEditDownloader_GUI.class); - @SuppressWarnings("unused") - private JPanel contentPane; private final JPanel contentPanel = new JPanel(); - JLabel lblPath; - JLabel lblDownSpeed; - User user; - JProgressBar progressBar; - String host = SessionData.serverAdress; - int port = 21; - String downloadFile = ""; - static String arg = ""; - DownloadTask task; - JLabel lblFertig; - JLabel lblFilesize; - JLabel lblVerbleibend; - JFileChooser fc; - long filesize; - double speed; - int progress = 0; // progress of download - long bytesread; - JLabel lblZeit; - boolean taskrun = false; - JButton btnZurck = new JButton("Zurück"); - JButton btnDownloadStarten = new JButton("Download starten"); - JButton btnMainMenu = new JButton("Hauptmenü"); - JButton btnDownloadStoppen = new JButton("Download abbrechen"); + private JLabel lblPath; + private JLabel lblDownSpeed; + private User user; + private JProgressBar progressBar; + private String host = SessionData.serverAdress; + private int port = 21; + private String downloadFile = ""; + private DownloadTask task; + private JLabel lblFertig; + private JLabel lblFilesize; + private JLabel lblVerbleibend; + private JFileChooser fc; + private long filesize; + private double speed; + private int progress = 0; // progress of download + private long bytesread; + private JLabel lblZeit; + private boolean taskrun = false; + private JButton btnZurck = new JButton("Zurück"); + private JButton btnDownloadStarten = new JButton("Download starten"); + private JButton btnMainMenu = new JButton("Hauptmenü"); + private JButton btnDownloadStoppen = new JButton("Download abbrechen"); private JLabel lblAnleitung; - Component c = null; private boolean isCurrentlyLoading = false; // currently up or downloading // file private boolean isAborted = false; // down- or upload was manually aborted - public static final String HELP_MESSAGE = "
" + - "Hier können Sie Images herunterladen.
" + - "Klicken Sie anschließend auf \"Zurück\" oder \"Hauptmenü\", um zu Ihrer vorherigen Auswahl oder zum Menü zurückzugelangen.
" + - "
"; + public static final String HELP_MESSAGE = "
" + + "Hier können Sie Images herunterladen.
" + + "Klicken Sie anschließend auf \"Zurück\" oder \"Hauptmenü\", um zu Ihrer vorherigen Auswahl oder zum Menü zurückzugelangen.
" + + "
"; /** * Create the frame. */ public FTPSearchDownloader_GUI() { - - final Object[] options = { "Beenden", "Abbrechen" }; + final String[] options = { "Beenden", "Abbrechen" }; addInternalFrameListener(new InternalFrameAdapter() { @Override public void internalFrameClosing(InternalFrameEvent arg0) { @@ -107,17 +94,15 @@ public class FTPSearchDownloader_GUI extends JInternalFrame implements // check if user wants to quit. int choice = JOptionPane .showOptionDialog( - c, + null, "Aktuell ist ein Download aktiv. Wollen Sie diesen Abbrechen und das Programm beenden?", - "Upload aktiv", - JOptionPane.YES_NO_CANCEL_OPTION, - JOptionPane.QUESTION_MESSAGE, null, - options, options[1]); + "Upload aktiv", JOptionPane.YES_NO_CANCEL_OPTION, + JOptionPane.QUESTION_MESSAGE, null, options, options[1]); // 0=beenden, 1=abbrechen if (choice == 0) { try { - ThriftManager.getSatClient().DeleteFtpUser(user.userName,SessionData.authToken); + ThriftManager.getSatClient().DeleteFtpUser(user.userName, SessionData.authToken); try { ThriftManager.getSatClient().setSessionInvalid(SessionData.authToken); } catch (TException e1) { @@ -141,68 +126,11 @@ public class FTPSearchDownloader_GUI extends JInternalFrame implements } } }); -// addWindowListener(new WindowAdapter() { -// @Override -// public void windowClosing(WindowEvent e) { -// if (taskrun == true) { -// // check if user wants to quit. -// int choice = JOptionPane -// .showOptionDialog( -// c, -// "Aktuell ist ein Download aktiv. Wollen Sie diesen Abbrechen und das Programm beenden?", -// "Upload aktiv", -// JOptionPane.YES_NO_CANCEL_OPTION, -// JOptionPane.QUESTION_MESSAGE, null, -// options, options[1]); -// // 0=beenden, 1=abbrechen -// if (choice == 0) { -// -// try { -// ThriftManager.getSatClient().DeleteFtpUser(user.userName,SessionData.AuthToken); -// try { -// ThriftManager.getSatClient().setSessionInvalid(SessionData.AuthToken); -// } catch (TException e1) { -// // TODO Auto-generated catch block -// e1.printStackTrace(); -// } -// try { -// ThriftManager.getSatClient().setSessionInvalid(SessionData.AuthToken); -// } catch (TException e1) { -// // TODO Auto-generated catch block -// e1.printStackTrace(); -// } -// } catch (TException e1) { -// // TODO Auto-generated catch block -// e1.printStackTrace(); -// } -// task.cancel(true); -// -// System.exit(0); -// }// end if choice -// } else { -// // no download running, close window -// try { -// ThriftManager.getSatClient().setSessionInvalid(SessionData.AuthToken); -// } catch (TException e1) { -// // TODO Auto-generated catch block -// e1.printStackTrace(); -// } -// System.exit(0); -// }// end if taskrun -// }// end window closing -// }); - setResizable(false); - try { - UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); - } catch (ClassNotFoundException | InstantiationException - | IllegalAccessException | UnsupportedLookAndFeelException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } + setResizable(false); setBackground(Color.WHITE); - setTitle("Dozentenmodul - Image herunterladen - "+person.verantwortlicher.getUserID()); + setTitle("Dozentenmodul - Image herunterladen - " + person.verantwortlicher.getUserID()); // Aktion die beim Schliessen durchgefuehrt werden soll setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); setBounds(0, 0, 603, 722); @@ -213,8 +141,7 @@ public class FTPSearchDownloader_GUI extends JInternalFrame implements getContentPane().add(contentPanel, BorderLayout.CENTER); contentPanel.setLayout(null); { - JButton btnSpeicherortAuswhlen = new JButton( - "Speicherort auswählen"); + JButton btnSpeicherortAuswhlen = new JButton("Speicherort auswählen"); btnSpeicherortAuswhlen.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { fc = new JFileChooser(Config.getLastDownloadPath()); @@ -247,7 +174,7 @@ public class FTPSearchDownloader_GUI extends JInternalFrame implements lblPath.addPropertyChangeListener(new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent arg0) { - if (lblPath.getText().trim() == null) { + if (lblPath.getText().trim().isEmpty()) { // wenn leer, dann upload button nicht freigeben btnDownloadStarten.setEnabled(false); btnDownloadStarten.setText("Bitte warten"); @@ -277,8 +204,7 @@ public class FTPSearchDownloader_GUI extends JInternalFrame implements progressBar.setBounds(102, 234, 485, 30); contentPanel.add(progressBar); - JLabel lblDownloadgeschwindigkeit = new JLabel( - "Downloadgeschwindigkeit:"); + JLabel lblDownloadgeschwindigkeit = new JLabel("Downloadgeschwindigkeit:"); lblDownloadgeschwindigkeit.setBounds(102, 275, 141, 14); contentPanel.add(lblDownloadgeschwindigkeit); @@ -310,8 +236,7 @@ public class FTPSearchDownloader_GUI extends JInternalFrame implements lblVerbleibend.setBounds(183, 350, 108, 14); contentPanel.add(lblVerbleibend); - JLabel lblGeschtzteVerbleibendeZeit = new JLabel( - "Geschätzte Verbleibende Zeit:"); + JLabel lblGeschtzteVerbleibendeZeit = new JLabel("Geschätzte Verbleibende Zeit:"); lblGeschtzteVerbleibendeZeit.setBounds(102, 300, 150, 14); contentPanel.add(lblGeschtzteVerbleibendeZeit); @@ -331,8 +256,7 @@ public class FTPSearchDownloader_GUI extends JInternalFrame implements panel.add(lblImageDownloader); JTextPane txtpnWhlenSieEinen = new JTextPane(); - txtpnWhlenSieEinen - .setText("Wählen Sie einen Ort aus, um das von Ihnen gwählte Image zu speichern."); + txtpnWhlenSieEinen.setText("Wählen Sie einen Ort aus, um das von Ihnen gwählte Image zu speichern."); txtpnWhlenSieEinen.setEditable(false); txtpnWhlenSieEinen.setBackground(SystemColor.menu); txtpnWhlenSieEinen.setBounds(10, 36, 509, 32); @@ -380,18 +304,17 @@ public class FTPSearchDownloader_GUI extends JInternalFrame implements lblSchritt_3.setBounds(20, 423, 57, 14); contentPanel.add(lblSchritt_3); - JLabel lblKlickenSieAuf = new JLabel( - "Klicken Sie auf \"Zurück\" oder \"Hauptmenü\"."); + JLabel lblKlickenSieAuf = new JLabel("Klicken Sie auf \"Zurück\" oder \"Hauptmenü\"."); lblKlickenSieAuf.setBounds(102, 423, 241, 14); contentPanel.add(lblKlickenSieAuf); - + lblAnleitung = new JLabel( "Anleitung zum erstellen einer virtuellen Maschine herunterladen"); lblAnleitung.setForeground(Color.BLUE); lblAnleitung.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent arg0) { - OpenLinks.openWebpage("vmware"); + OpenLinks.openWebpage("vmware"); } }); lblAnleitung.setBounds(102, 448, 311, 14); @@ -401,7 +324,7 @@ public class FTPSearchDownloader_GUI extends JInternalFrame implements isAborted = true; // set flag try { - ThriftManager.getSatClient().DeleteFtpUser(user.userName,SessionData.authToken); + ThriftManager.getSatClient().DeleteFtpUser(user.userName, SessionData.authToken); LOGGER.info("Deleted FTP user."); } catch (TException e1) { // TODO Auto-generated catch block @@ -429,19 +352,16 @@ public class FTPSearchDownloader_GUI extends JInternalFrame implements public void actionPerformed(ActionEvent e) { // check if loading file or not if (isCurrentlyLoading() == true) { - int choice = JOptionPane - .showOptionDialog( - c, - "Nicht abgeschlossene Uploads werden beendet. Trotzdem zurück gehen?", - "Warnung", - JOptionPane.YES_NO_CANCEL_OPTION, - JOptionPane.QUESTION_MESSAGE, null, - options, options[1]); + int choice = JOptionPane.showOptionDialog(null, + "Nicht abgeschlossene Uploads werden beendet. Trotzdem zurück gehen?", + "Warnung", JOptionPane.YES_NO_CANCEL_OPTION, + JOptionPane.QUESTION_MESSAGE, null, options, options[1]); // 0=beenden, 1=abbrechen if (choice == 0) { task.cancel(true); try { - ThriftManager.getSatClient().DeleteFtpUser(user.userName,SessionData.authToken); + ThriftManager.getSatClient().DeleteFtpUser(user.userName, + SessionData.authToken); } catch (TException e1) { // TODO Auto-generated catch block e1.printStackTrace(); @@ -489,19 +409,18 @@ public class FTPSearchDownloader_GUI extends JInternalFrame implements downloadFile = user.path + "/" - + ThriftManager.getSatClient().getPathOfImage(Image.image.getImageId(), - Image.image.getVersion(),SessionData.authToken); + + ThriftManager.getSatClient().getPathOfImage(Image.ImageId, + Image.Version, SessionData.authToken); } catch (TException e) { // TODO Auto-generated catch block e.printStackTrace(); - JOptionPane.showMessageDialog(c, - e.getCause() + "\n" + e.getStackTrace(), "Debug-Message", + JOptionPane.showMessageDialog(null, e.getCause() + "\n" + e.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } - task = new DownloadTask(host, port, user.userName, user.password, - downloadFile, lblPath.getText().trim()); + task = new DownloadTask(host, port, user.userName, user.password, downloadFile, lblPath.getText() + .trim()); task.addPropertyChangeListener(this); task.execute(); taskrun = true; @@ -541,13 +460,10 @@ public class FTPSearchDownloader_GUI extends JInternalFrame implements if ("bytesread" == arg0.getPropertyName()) { bytesread = (long) arg0.getNewValue(); lblFertig.setText((bytesread / 1024 / 1024) + " MB"); - lblVerbleibend - .setText(((filesize / 1024 / 1024) - (bytesread / 1024 / 1024)) - + " MB"); + lblVerbleibend.setText(((filesize / 1024 / 1024) - (bytesread / 1024 / 1024)) + " MB"); lblZeit.setText(String - .valueOf( - ((((filesize / 1024 / 1024) - (bytesread / 1024 / 1024)) / speed) / 60) + 1) + .valueOf(((((filesize / 1024 / 1024) - (bytesread / 1024 / 1024)) / speed) / 60) + 1) .substring( 0, String.valueOf( @@ -567,8 +483,7 @@ public class FTPSearchDownloader_GUI extends JInternalFrame implements public boolean isCurrentlyLoading() { isCurrentlyLoading = false; - if (lblVerbleibend.getText().trim().equals("0 MB") - || lblVerbleibend.getText().trim().equals("0")) { + if (lblVerbleibend.getText().trim().equals("0 MB") || lblVerbleibend.getText().trim().equals("0")) { isCurrentlyLoading = false; } else { isCurrentlyLoading = true; diff --git a/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java b/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java index 8fab2da8..25848bde 100644 --- a/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java @@ -10,7 +10,6 @@ import java.awt.Font; import java.awt.SystemColor; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; @@ -19,7 +18,6 @@ import java.util.ArrayList; import java.util.Iterator; import java.util.List; -import javax.swing.AbstractButton; import javax.swing.DefaultComboBoxModel; import javax.swing.JButton; import javax.swing.JCheckBox; @@ -360,7 +358,7 @@ public class PermissionCreateImage_GUI extends JInternalFrame { saveTableToList(); - Image.image.setShareMode(comboBox_1.getSelectedIndex()); + Image.ShareMode = comboBox_1.getSelectedIndex(); GuiManager.show(new FTPCreateUploader_GUI()); } @@ -407,19 +405,6 @@ public class PermissionCreateImage_GUI extends JInternalFrame { table.setValueAt(checkedVals[3], selectedRow, 4); }// end checkIntegrity() - // invisible userID column - class MyItemListener5 implements ItemListener { - public void itemStateChanged(ItemEvent e) { - Object source = e.getSource(); - if (source instanceof AbstractButton == false) - return; - boolean checked = e.getStateChange() == ItemEvent.SELECTED; - for (int x = 0, y = table.getRowCount(); x < y; x++) { - table.setValueAt(new Boolean(checked), x, 5); - } - } - } - // save the entered rights into the model and prepare them to be written to // the database private void saveTableToList() { @@ -431,11 +416,8 @@ public class PermissionCreateImage_GUI extends JInternalFrame { // for (int i = 0; i < map.size(); i++) { for (int i = 0; i < table.getRowCount(); i++) { - // System.out.println("in for, rowcount="+table.getRowCount()); person temp = new person(); - // table.getModel().setValueAt(map.get, i, 5); - temp.setUserID(table.getModel().getValueAt(i, 5).toString()); // get // userID temp.setImageAdmin(Boolean.parseBoolean(table.getModel().getValueAt(i, 4).toString())); // get Admin @@ -451,8 +433,6 @@ public class PermissionCreateImage_GUI extends JInternalFrame { if (temp.isImageAdmin() || temp.isImageLinkAllowed() || temp.isImageWrite() || temp.isImageRead()) { // save entry list.add(temp); - } else { - // do nothing } } diff --git a/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java b/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java index cbbd2eba..eb7a7769 100644 --- a/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java @@ -9,15 +9,12 @@ import java.awt.Font; import java.awt.SystemColor; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.awt.event.ItemEvent; -import java.awt.event.ItemListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.util.ArrayList; import java.util.Iterator; import java.util.List; -import javax.swing.AbstractButton; import javax.swing.DefaultComboBoxModel; import javax.swing.JButton; import javax.swing.JComboBox; @@ -158,7 +155,7 @@ public class PermissionEditImage_GUI extends JInternalFrame { try { map = ThriftManager.getSatClient().getPermissionForUserAndImage(SessionData.authToken, - Image.image.getImageId(), person.verantwortlicher.getUserID()); + Image.ImageId, person.verantwortlicher.getUserID()); Iterator i = map.iterator(); int x = 0; @@ -244,7 +241,7 @@ public class PermissionEditImage_GUI extends JInternalFrame { final JComboBox comboBox_1 = new JComboBox<>(); comboBox_1.setModel(new DefaultComboBoxModel(new String[] { "Lokal (Eigene Hochschule)", "Öffentlich (Alle Hochschulen)" })); - comboBox_1.setSelectedIndex(Image.image.getShareMode()); + comboBox_1.setSelectedIndex(Image.ShareMode); comboBox_1.setBounds(270, 30, 250, 20); panel_2.add(comboBox_1); @@ -376,7 +373,7 @@ public class PermissionEditImage_GUI extends JInternalFrame { saveTableToList(); - Image.image.setShareMode(comboBox_1.getSelectedIndex()); + Image.ShareMode = comboBox_1.getSelectedIndex(); GuiManager.show(new FTPEditUploader_GUI()); } }); diff --git a/dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java b/dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java index 2c037885..2093d34c 100644 --- a/dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java @@ -1,5 +1,6 @@ package gui.image; +import gui.helper.TableFiller; import gui.intro.MainMenue_GUI; import java.awt.Color; @@ -17,7 +18,6 @@ import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.HashMap; -import java.util.Iterator; import java.util.List; import java.util.Map; @@ -27,7 +27,6 @@ import javax.swing.JInternalFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; -import javax.swing.JRadioButton; import javax.swing.JScrollPane; import javax.swing.JSeparator; import javax.swing.JTable; @@ -36,8 +35,6 @@ import javax.swing.JTextField; import javax.swing.JTextPane; import javax.swing.ListSelectionModel; import javax.swing.RowFilter; -import javax.swing.UIManager; -import javax.swing.UnsupportedLookAndFeelException; import javax.swing.border.EmptyBorder; import javax.swing.border.TitledBorder; import javax.swing.event.InternalFrameAdapter; @@ -57,135 +54,105 @@ import org.apache.thrift.TException; import org.openslx.thrifthelper.ThriftManager; import util.GuiManager; + //import models.person; @SuppressWarnings("serial") public class SearchEditImage_GUI extends JInternalFrame { private final JPanel contentPanel = new JPanel(); - JLabel labelName; - JLabel labelUpdate; - JLabel labelVerantwortlicher; - JLabel labelWeitereVerantwortliche; - JLabel labelVorlage; - JLabel labelLizenzSoftware; - JLabel labelInternet; - JLabel labelRam; - JLabel labelCPU; - JLabel labelID; - JLabel labelVersion; - JLabel lblNewLabel = new JLabel("Imageauswahl"); - JTextArea textAreadesc; + private JLabel labelName; + private JLabel labelUpdate; + private JLabel labelVerantwortlicher; + private JLabel labelWeitereVerantwortliche; + private JLabel labelVorlage; + private JLabel labelLizenzSoftware; + private JLabel labelInternet; + private JLabel labelRam; + private JLabel labelCPU; + private JLabel labelID; + private JLabel labelVersion; + private JLabel lblNewLabel = new JLabel("Imageauswahl"); + private JTextArea textAreadesc; private JLabel labelOS; - String[] result; - JRadioButton rdbtnInternetJa; - JRadioButton rdbtnInternetNein; - JComboBox comboBox; - JTable tablemyImages; - boolean activeSearch = false; + private JComboBox comboBox; + private JTable tablemyImages; + private JLabel lblTotalResults; private JTextField textFieldName; - Component c = null; - int requiredPermission = 1; // 0=Read, 1= Write, 2=LinkAllowed, 3=Admin - String[] titles = { "Name", "Lizenzpflichtig", "OS", "Veranstaltung", - "Verantwortlicher", "Letztes Update", "ID", "Version", "Template", "Beschreibung", "Größe" };// Angezeigt - // werden - // aber - // nur - // Name - // (0), - // OS - // (2), - // Verantwortlicher - // (4), - // Letztes - // Update - // (5) + private Component c = null; + private String[] titles = { "Name", "Lizenzpflichtig", "OS", "Veranstaltung", "Verantwortlicher", + "Letztes Update", "ID", "Version", "Template", "Beschreibung", "Größe" }; public static final String HELP_MESSAGE = "
" + "Suchen Sie Images und laden Sie sie direkt herunter.
" + "Sie können die Volltextsuche nutzen und nach Betriebssystemen filtern.
" + "Die Volltextsuche sucht in den Feldern Name und Beschreibung.
" - + "Klicken Sie auf \"Weiter\" um das Image für weitere Schritte auszuwählen." - + "
"; + + "Klicken Sie auf \"Weiter\" um das Image für weitere Schritte auszuwählen." + "
"; - - final DefaultTableModel modelMyImages = new DefaultTableModel(titles, 0) { + private final DefaultTableModel modelMyImages = new DefaultTableModel(titles, 0) { public boolean isCellEditable(int rowIndex, int mColIndex) { return false; } }; - - final TableRowSorter rowSorterMyImages = new TableRowSorter( - modelMyImages); + private final TableRowSorter rowSorterMyImages = new TableRowSorter(modelMyImages); RowFilter rf = null; - List> filters = new ArrayList>(2); - private JLabel lblTotalResults; - + List> filters = new ArrayList>(2); /** - * Create the dialog. + * Create the dialog. */ public SearchEditImage_GUI() { - filters.add(RowFilter.regexFilter(".", 0)); rf = RowFilter.orFilter(filters); - + addInternalFrameListener(new InternalFrameAdapter() { @Override public void internalFrameActivated(InternalFrameEvent arg0) { - initTableModel(modelMyImages); - - // auszublendende Angaben - // 1=Lizenzpflichtig - // 3=Veranstaltung - // 6=ID - // 7=Version - // 8=Template - // 9=Beschreibung (needed for full text search) - tablemyImages.getColumnModel().getColumn(1).setWidth(0); - tablemyImages.getColumnModel().getColumn(1).setMinWidth(0); - tablemyImages.getColumnModel().getColumn(1).setMaxWidth(0); - tablemyImages.getColumnModel().getColumn(3).setWidth(0); - tablemyImages.getColumnModel().getColumn(3).setMinWidth(0); - tablemyImages.getColumnModel().getColumn(3).setMaxWidth(0); - tablemyImages.getColumnModel().getColumn(8).setWidth(0); - tablemyImages.getColumnModel().getColumn(8).setMinWidth(0); - tablemyImages.getColumnModel().getColumn(8).setMaxWidth(0); - tablemyImages.getColumnModel().getColumn(6).setWidth(0); - tablemyImages.getColumnModel().getColumn(6).setMinWidth(0); - tablemyImages.getColumnModel().getColumn(6).setMaxWidth(0); - tablemyImages.getColumnModel().getColumn(7).setWidth(0); - tablemyImages.getColumnModel().getColumn(7).setMinWidth(0); - tablemyImages.getColumnModel().getColumn(7).setMaxWidth(0); - tablemyImages.getColumnModel().getColumn(9).setWidth(0); - tablemyImages.getColumnModel().getColumn(9).setMinWidth(0); - tablemyImages.getColumnModel().getColumn(9).setMaxWidth(0); - - tablemyImages.getTableHeader().setReorderingAllowed(false); - tablemyImages.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); - textFieldName.requestFocusInWindow(); + initTableModel(modelMyImages); + + // auszublendende Angaben + // 1=Lizenzpflichtig + // 3=Veranstaltung + // 6=ID + // 7=Version + // 8=Template + // 9=Beschreibung (needed for full text search) + tablemyImages.getColumnModel().getColumn(1).setWidth(0); + tablemyImages.getColumnModel().getColumn(1).setMinWidth(0); + tablemyImages.getColumnModel().getColumn(1).setMaxWidth(0); + tablemyImages.getColumnModel().getColumn(3).setWidth(0); + tablemyImages.getColumnModel().getColumn(3).setMinWidth(0); + tablemyImages.getColumnModel().getColumn(3).setMaxWidth(0); + tablemyImages.getColumnModel().getColumn(8).setWidth(0); + tablemyImages.getColumnModel().getColumn(8).setMinWidth(0); + tablemyImages.getColumnModel().getColumn(8).setMaxWidth(0); + tablemyImages.getColumnModel().getColumn(6).setWidth(0); + tablemyImages.getColumnModel().getColumn(6).setMinWidth(0); + tablemyImages.getColumnModel().getColumn(6).setMaxWidth(0); + tablemyImages.getColumnModel().getColumn(7).setWidth(0); + tablemyImages.getColumnModel().getColumn(7).setMinWidth(0); + tablemyImages.getColumnModel().getColumn(7).setMaxWidth(0); + tablemyImages.getColumnModel().getColumn(9).setWidth(0); + tablemyImages.getColumnModel().getColumn(9).setMinWidth(0); + tablemyImages.getColumnModel().getColumn(9).setMaxWidth(0); + + tablemyImages.getTableHeader().setReorderingAllowed(false); + tablemyImages.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); + textFieldName.requestFocusInWindow(); } }); // Verhindert das Vergroessern Des Fensters setResizable(false); - try { - // Setzt das Look & Feel auf System - UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); - } catch (ClassNotFoundException | InstantiationException - | IllegalAccessException | UnsupportedLookAndFeelException e) { - e.printStackTrace(); - } // Setzt den Fenstertitel - setTitle("bwLehrpool Suite - Image bearbeiten - "+person.verantwortlicher.getUserID()); + setTitle("bwLehrpool Suite - Image bearbeiten - " + person.verantwortlicher.getUserID()); // Zentriert das Fenster in die Bildmitte setBounds(0, 0, 918, 722); - //final DefaultTableModel model = new DefaultTableModel(titles, 0); getContentPane().setLayout(null); @@ -218,8 +185,8 @@ public class SearchEditImage_GUI extends JInternalFrame { JPanel panel_1 = new JPanel(); panel_1.setBackground(SystemColor.menu); - panel_1.setBorder(new TitledBorder(null, "Filterfunktionen", - TitledBorder.LEADING, TitledBorder.TOP, null, null)); + panel_1.setBorder(new TitledBorder(null, "Filterfunktionen", TitledBorder.LEADING, TitledBorder.TOP, + null, null)); panel_1.setBounds(10, 49, 557, 98); contentPanel.add(panel_1); panel_1.setLayout(null); @@ -233,7 +200,7 @@ public class SearchEditImage_GUI extends JInternalFrame { panel_1.add(lblInternetIstInnerhalb); textFieldName = new JTextField(); - + // Key Listener der Tastatureingabe registriert textFieldName.addKeyListener(new KeyAdapter() { @Override @@ -241,41 +208,33 @@ public class SearchEditImage_GUI extends JInternalFrame { // Textfield eingabe auslesen String stext = textFieldName.getText().trim(); - + //System.out.println("Help, I don't want to be filtered yet...."); // Wenn Textfield nicht leer - if (stext.trim().length() > 0) - { - - activeSearch = true; + if (!stext.isEmpty()) { // Filtere nach der Eingabe - + filters.clear(); - - filters.add(RowFilter.regexFilter("(?i)"+stext, 0)); //case insensitive - filters.add(RowFilter.regexFilter("(?i)"+stext, 9)); //case insensitive - + + filters.add(RowFilter.regexFilter("(?i)" + stext, 0)); //case insensitive + filters.add(RowFilter.regexFilter("(?i)" + stext, 9)); //case insensitive + rf = RowFilter.orFilter(filters); - rowSorterMyImages.setRowFilter(rf); - - } - else - { - - activeSearch = false; - + rowSorterMyImages.setRowFilter(rf); + + } else { filters.clear(); filters.add(RowFilter.regexFilter(".", 0)); //case insensitive, filter for anything - + rf = RowFilter.orFilter(filters); - + rowSorterMyImages.setRowFilter(rf); - + } - + tablemyImages.clearSelection(); - + resetImageInfo(); } @@ -298,11 +257,9 @@ public class SearchEditImage_GUI extends JInternalFrame { } } catch (TException e2) { e2.printStackTrace(); - JOptionPane - .showMessageDialog( - c, - "Konnte die Liste der Betriebssysteme vom Server nicht abfragen!", - "Fehlermeldung", JOptionPane.ERROR_MESSAGE); + JOptionPane.showMessageDialog(c, + "Konnte die Liste der Betriebssysteme vom Server nicht abfragen!", "Fehlermeldung", + JOptionPane.ERROR_MESSAGE); } // Registriert Auswahlaenderungen der Box comboBox.addActionListener(new ActionListener() { @@ -310,20 +267,12 @@ public class SearchEditImage_GUI extends JInternalFrame { // Prueft das die Auswahl nicht leer ist if (comboBox.getSelectedItem().toString().isEmpty() == false) { // Filtert nach dem ausgewaehlten Betriebssystem - activeSearch = true; - - rowSorterMyImages.setRowFilter(RowFilter.regexFilter(comboBox.getSelectedItem().toString(), 2)); - + rowSorterMyImages.setRowFilter(RowFilter.regexFilter(comboBox.getSelectedItem() + .toString(), 2)); + } else { - - - activeSearch = false; - /* - String username = person.verantwortlicher.getName() + " " - + person.verantwortlicher.getVorname(); - */ rowSorterMyImages.setRowFilter(null); - + } } @@ -337,7 +286,7 @@ public class SearchEditImage_GUI extends JInternalFrame { public void mouseClicked(MouseEvent arg0) { // oeffnet das Hauuetmenue GuiManager.show(new MainMenue_GUI()); - + } }); lblHauptmen.setForeground(Color.BLUE); @@ -367,25 +316,23 @@ public class SearchEditImage_GUI extends JInternalFrame { // oeffnet den Downloader // check if user is in correct tab - /* if (tabbedPane.getSelectedIndex() == 0) { */ // check if a row is selected if (tablemyImages.getSelectedRow() != -1) { String imageid = modelMyImages.getValueAt( - tablemyImages.convertRowIndexToModel(tablemyImages - .getSelectedRow()), 6).toString(); + tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()), 6) + .toString(); - Image.image.setImageId(imageid); + Image.ImageId = imageid; String imageversion = modelMyImages.getValueAt( - tablemyImages.convertRowIndexToModel(tablemyImages - .getSelectedRow()), 7).toString(); + tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()), 7) + .toString(); - Image.image.setVersion(imageversion); + Image.Version = imageversion; GuiManager.show(new FTPEditDownloader_GUI()); } else { - JOptionPane.showMessageDialog(c, - "Bitte wählen Sie ein Image für den Download aus", + JOptionPane.showMessageDialog(c, "Bitte wählen Sie ein Image für den Download aus", "Message", JOptionPane.INFORMATION_MESSAGE); } } @@ -398,40 +345,41 @@ public class SearchEditImage_GUI extends JInternalFrame { contentPanel.add(scrollPaneMyImage); tablemyImages = new JTable(); - tablemyImages.getSelectionModel().addListSelectionListener( - new ListSelectionListener() - { - public void valueChanged(ListSelectionEvent e) - { - - //tablemyImages.clearSelection(); - //tablemyImages.setRowSelectionInterval(e.getLastIndex(), e.getLastIndex()); - - if (tablemyImages.getSelectedRow() != -1) - { - //zeige die ganzen Details an - String imageid = modelMyImages.getValueAt(tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()),6).toString(); - String version = modelMyImages.getValueAt(tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()),7).toString(); - - //write the values into the information pane on the right hand side - writeImageData(imageid, version); - - //fill the itemOwnder model with information from selected item - setItemOwnerInformation(imageid); - } - } - }); - + tablemyImages.getSelectionModel().addListSelectionListener(new ListSelectionListener() { + public void valueChanged(ListSelectionEvent e) { + + //tablemyImages.clearSelection(); + //tablemyImages.setRowSelectionInterval(e.getLastIndex(), e.getLastIndex()); + + if (tablemyImages.getSelectedRow() != -1) { + //zeige die ganzen Details an + String imageid = modelMyImages.getValueAt( + tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()), 6) + .toString(); + String version = modelMyImages.getValueAt( + tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()), 7) + .toString(); + + //write the values into the information pane on the right hand side + writeImageData(imageid, version); + + //fill the itemOwnder model with information from selected item + setItemOwnerInformation(imageid); + } + } + }); + tablemyImages.addMouseListener(new MouseAdapter() { @Override public void mouseReleased(MouseEvent e) { tablemyImages.clearSelection(); //just one row is selectable - tablemyImages.setRowSelectionInterval(tablemyImages.rowAtPoint(e.getPoint()), tablemyImages.rowAtPoint(e.getPoint())); + tablemyImages.setRowSelectionInterval(tablemyImages.rowAtPoint(e.getPoint()), + tablemyImages.rowAtPoint(e.getPoint())); } }); - + tablemyImages.setModel(modelMyImages); tablemyImages.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION); tablemyImages.getColumnModel().getColumn(1).sizeWidthToFit(); @@ -439,13 +387,12 @@ public class SearchEditImage_GUI extends JInternalFrame { tablemyImages.getColumnModel().getColumn(3).sizeWidthToFit(); tablemyImages.getColumnModel().getColumn(4).sizeWidthToFit(); tablemyImages.getColumnModel().getColumn(5).sizeWidthToFit(); - + rowSorterMyImages.setRowFilter(rf); tablemyImages.setRowSorter(rowSorterMyImages); - scrollPaneMyImage.setViewportView(tablemyImages); - + lblTotalResults = new JLabel("Anzahl:"); lblTotalResults.setBounds(10, 512, 131, 20); contentPanel.add(lblTotalResults); @@ -465,7 +412,6 @@ public class SearchEditImage_GUI extends JInternalFrame { }); okButton.setActionCommand("OK"); buttonPane.add(okButton); - //getRootPane().setDefaultButton(okButton); } { JButton cancelButton = new JButton("Weiter"); @@ -476,26 +422,20 @@ public class SearchEditImage_GUI extends JInternalFrame { // if (tabbedPane.getSelectedIndex() == 0) { // check if a row is selected if (tablemyImages.getSelectedRow() != -1) { - String imageid = modelMyImages - .getValueAt( - tablemyImages - .convertRowIndexToModel(tablemyImages - .getSelectedRow()), - 6).toString(); - - Image.image.setImageId(imageid); - String imageversion = modelMyImages - .getValueAt( - tablemyImages - .convertRowIndexToModel(tablemyImages - .getSelectedRow()), - 7).toString(); - - Image.image.setVersion(imageversion); + String imageid = modelMyImages.getValueAt( + tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()), 6) + .toString(); + + Image.ImageId = imageid; + String imageversion = modelMyImages.getValueAt( + tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()), 7) + .toString(); + + Image.Version = imageversion; GuiManager.show(new EditImageAllgemein_GUI()); } - - }// end actionPerformed + + }// end actionPerformed }); cancelButton.setActionCommand("Cancel"); buttonPane.add(cancelButton); @@ -572,8 +512,7 @@ public class SearchEditImage_GUI extends JInternalFrame { labelLizenzSoftware.setBounds(10, 383, 296, 14); panel.add(labelLizenzSoftware); - JLabel lblLizenzpflichtigeSoftware = new JLabel( - "Lizenzpflichtige Software:"); + JLabel lblLizenzpflichtigeSoftware = new JLabel("Lizenzpflichtige Software:"); lblLizenzpflichtigeSoftware.setBounds(10, 367, 130, 14); panel.add(lblLizenzpflichtigeSoftware); @@ -635,68 +574,38 @@ public class SearchEditImage_GUI extends JInternalFrame { textAreadesc.setFont(new Font("Tahoma", Font.PLAIN, 11)); textAreadesc.setBackground(SystemColor.menu); scrollPane.setViewportView(textAreadesc); - + } // Initiale Beffuelung eines Table models public DefaultTableModel initTableModel(DefaultTableModel model) { - //LOGGER.debug("trying to init table first time... in: searcheditimage_gui"); - List images; try { - + // Hole eine Liste der passenden Images, - if(person.verantwortlicher.getRole()=="Admin"){ + if (person.verantwortlicher.getRole() == "Admin") { //get complete list - images = ThriftManager.getSatClient().getImageList(person.verantwortlicher.getUserID(),SessionData.authToken); + images = ThriftManager.getSatClient().getImageList(person.verantwortlicher.getUserID(), + SessionData.authToken); } else { //only get permitted list - images = ThriftManager.getSatClient().getImageListPermissionWrite(person.verantwortlicher.getUserID(),SessionData.authToken); + images = ThriftManager.getSatClient().getImageListPermissionWrite( + person.verantwortlicher.getUserID(), SessionData.authToken); } - Iterator i = images.iterator(); - SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss"); - int x = 0; - - while (i.hasNext()) { - // erzeuge Objekte fuer die Tabelle - //LOGGER.debug("Image last updated on: " - // + images.get(x).updateTime); - //LOGGER.debug("Image name: " + images.get(x).getImageName()); - - Object[] obj = { images.get(x).getImageName(), - images.get(x).getLicenseRestriction(), - images.get(x).getOsName(), - images.get(x).getLectureName(), - images.get(x).getUserData(), - out.format(in.parse(images.get(x).updateTime)), - images.get(x).id, images.get(x).getVersion(), - images.get(x).getIsTemplate(), - images.get(x).getDescription(), - byteToGigabyte((Long.parseLong(images.get(x).getImageSize())), false) - }; - // Fuege diese Objekte der Tabelle hinzu - - model.addRow(obj); - //LOGGER.info("Counting model.getRowCount(): "+model.getRowCount()); - x++; - i.next(); - } + TableFiller.fillModelWithImageList(model, images); //show number if rows in GUI - lblTotalResults.setText(lblTotalResults.getText()+" "+model.getRowCount()); + lblTotalResults.setText(lblTotalResults.getText() + " " + model.getRowCount()); return model; - } catch (TException | ParseException e1) { + } catch (TException e1) { e1.printStackTrace(); - JOptionPane.showMessageDialog(c, - e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message", + JOptionPane.showMessageDialog(c, e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } return model; } - private void resetImageInfo() { //reset the detailed information on the right hand side when changing search string @@ -713,19 +622,19 @@ public class SearchEditImage_GUI extends JInternalFrame { labelInternet.setText(""); labelRam.setText(""); labelCPU.setText(""); - + } public void writeImageData(String id, String version) { try { SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss"); - Map res = ThriftManager.getSatClient().getImageData(id, version,SessionData.authToken); + Map res = ThriftManager.getSatClient().getImageData(id, version, + SessionData.authToken); labelName.setText(res.get("name")); labelOS.setText(res.get("os")); labelUpdate.setText(out.format(in.parse(res.get("lastupdate")))); - labelVerantwortlicher.setText(res.get("owner") + " (" - + res.get("mail") + ")"); + labelVerantwortlicher.setText(res.get("owner") + " (" + res.get("mail") + ")"); labelWeitereVerantwortliche.setText("Noch nicht Verfügbar"); if (res.get("template").equals("true")) { labelVorlage.setText("Ja"); @@ -748,49 +657,39 @@ public class SearchEditImage_GUI extends JInternalFrame { labelVersion.setText(res.get("version")); textAreadesc.setText(res.get("desc")); res.clear(); - - List contacts = ThriftManager.getSatClient().getAdditionalImageContacts(id,SessionData.authToken); + + List contacts = ThriftManager.getSatClient().getAdditionalImageContacts(id, + SessionData.authToken); labelWeitereVerantwortliche.setText(""); - for (int i = 0; i < contacts.size(); i++) - { - labelWeitereVerantwortliche.setText(labelWeitereVerantwortliche.getText().trim()+(contacts.get(i))); + for (int i = 0; i < contacts.size(); i++) { + labelWeitereVerantwortliche.setText(labelWeitereVerantwortliche.getText().trim() + + (contacts.get(i))); } labelWeitereVerantwortliche.setToolTipText(labelWeitereVerantwortliche.getText().trim()); - - + } catch (TException | ParseException e1) { e1.printStackTrace(); } }//end writeImageData - - - public void setItemOwnerInformation(String imageid){ + + public void setItemOwnerInformation(String imageid) { Map map = new HashMap(); - + try { //get values from server and set them in model - map=ThriftManager.getSatClient().getItemOwner(imageid,SessionData.authToken); - + map = ThriftManager.getSatClient().getItemOwner(imageid, SessionData.authToken); + ItemOwner.itemOwner.setUserID(map.get("userID")); ItemOwner.itemOwner.setUsername(map.get("loginName")); ItemOwner.itemOwner.setNachname(map.get("Nachname")); ItemOwner.itemOwner.setVorname(map.get("Vorname")); ItemOwner.itemOwner.setEmail(map.get("mail")); ItemOwner.itemOwner.setHochschule(map.get("institution")); - - + } catch (TException e) { e.printStackTrace(); } - + }//end setItemInformation - - - public static String byteToGigabyte(long bytes, boolean si) { - int unit = si ? 1000 : 1024; - if (bytes < unit) return bytes + " B"; - int exp = (int) (Math.log(bytes) / Math.log(unit)); - String pre = (si ? "kMGTPE" : "KMGTPE").charAt(exp-1) + (si ? "" : "i"); - return String.format("%.1f %sB", bytes / Math.pow(unit, exp), pre); - }//end byteToGigabyte + }// end class diff --git a/dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java b/dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java index d3b6fcc9..be3ca527 100644 --- a/dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java @@ -1,5 +1,6 @@ package gui.image; +import gui.helper.TableFiller; import gui.intro.MainMenue_GUI; import java.awt.Color; @@ -16,7 +17,6 @@ import java.awt.event.MouseEvent; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; -import java.util.Iterator; import java.util.List; import java.util.Map; @@ -26,7 +26,6 @@ import javax.swing.JInternalFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; -import javax.swing.JRadioButton; import javax.swing.JScrollPane; import javax.swing.JSeparator; import javax.swing.JTabbedPane; @@ -36,8 +35,6 @@ import javax.swing.JTextField; import javax.swing.JTextPane; import javax.swing.ListSelectionModel; import javax.swing.RowFilter; -import javax.swing.UIManager; -import javax.swing.UnsupportedLookAndFeelException; import javax.swing.border.EmptyBorder; import javax.swing.border.TitledBorder; import javax.swing.event.InternalFrameAdapter; @@ -61,97 +58,72 @@ import util.GuiManager; public class SearchImage_GUI extends JInternalFrame { private final JPanel contentPanel = new JPanel(); - JLabel labelName; - JLabel labelUpdate; - JLabel labelVerantwortlicher; - JLabel labelWeitereVerantwortliche; - JLabel labelVorlage; - JLabel labelLizenzSoftware; - JLabel labelInternet; - JLabel labelRam; - JLabel labelCPU; - JLabel labelID; - JLabel labelVersion; - JTextArea textAreadesc; + private JLabel labelName; + private JLabel labelUpdate; + private JLabel labelVerantwortlicher; + private JLabel labelWeitereVerantwortliche; + private JLabel labelVorlage; + private JLabel labelLizenzSoftware; + private JLabel labelInternet; + private JLabel labelRam; + private JLabel labelCPU; + private JLabel labelID; + private JLabel labelVersion; + private JTextArea textAreadesc; private JLabel labelOS; - String[] result; - JRadioButton rdbtnInternetJa; - JRadioButton rdbtnInternetNein; - JComboBox comboBox; - JTable tableAllImages; - JTable tablemyImages; - JTable tablePublicVorlagen; + private JComboBox comboBox; + private JTable tableAllImages; + private JTable tablemyImages; + private JTable tablePublicVorlagen; private JTextField textFieldName; - JTabbedPane tabbedPane; - JButton btnDownload; - boolean activeSearch = false; - Component c = null; - String[] titles = { "Name", "Lizenzpflichtig", "OS", "Veranstaltung", - "Verantwortlicher", "Letztes Update", "ID", "Version", "Template", "Beschreibung", "Größe" }; // Angezeigt - // werden - // aber - // nur - // Name - // (0), - // OS - // (2), - // Verantwortlicher - // (4), - // Letztes - // Update - // (5) - public static final String HELP_MESSAGE = "
" + - "Suchen Sie Images und laden Sie sie direkt herunter.
" + - "Sie können die Volltextsuche nutzen und nach Betriebssystemen filtern.
" + - "Die Volltextsuche sucht in den Feldern Name und Beschreibung." + - "
"; - - - final DefaultTableModel modelAll = new DefaultTableModel(titles, 0) { + private JTabbedPane tabbedPane; + private JButton btnDownload; + private Component c = null; + // Angezeigt werden aber nur Name (0), OS (2), Verantwortlicher (4), Letztes Update (5) + private String[] titles = { "Name", "Lizenzpflichtig", "OS", "Veranstaltung", "Verantwortlicher", + "Letztes Update", "ID", "Version", "Template", "Beschreibung", "Größe" }; + public static final String HELP_MESSAGE = "
" + + "Suchen Sie Images und laden Sie sie direkt herunter.
" + + "Sie können die Volltextsuche nutzen und nach Betriebssystemen filtern.
" + + "Die Volltextsuche sucht in den Feldern Name und Beschreibung." + "
"; + + private final DefaultTableModel modelAll = new DefaultTableModel(titles, 0) { public boolean isCellEditable(int rowIndex, int mColIndex) { return false; } }; - final DefaultTableModel modelMyImages = new DefaultTableModel(titles, 0) { + private final DefaultTableModel modelMyImages = new DefaultTableModel(titles, 0) { public boolean isCellEditable(int rowIndex, int mColIndex) { return false; } }; - final DefaultTableModel modelPublicVorlagen = new DefaultTableModel(titles, - 0) { + private final DefaultTableModel modelPublicVorlagen = new DefaultTableModel(titles, 0) { public boolean isCellEditable(int rowIndex, int mColIndex) { return false; } }; - - final TableRowSorter rowSorterAll = new TableRowSorter( - modelAll); - final TableRowSorter rowSorterMyImages = new TableRowSorter( - modelMyImages); - final TableRowSorter rowSorterPublicVorlagen = new TableRowSorter( + + private final TableRowSorter rowSorterAll = new TableRowSorter(modelAll); + private final TableRowSorter rowSorterMyImages = new TableRowSorter(modelMyImages); + private final TableRowSorter rowSorterPublicVorlagen = new TableRowSorter( modelPublicVorlagen); - - - - - RowFilter orFilter = null; - List> orFilters = new ArrayList<>(); - + + RowFilter orFilter = null; + List> orFilters = new ArrayList<>(); + //needed for templates, filter for name OR desc AND temp_flag --> (name || desc) && (temp_flag) - RowFilter andFilter = null; - List> andFilters = new ArrayList<>(); + RowFilter andFilter = null; + List> andFilters = new ArrayList<>(); //the final filter which handles the search in the templates - RowFilter templateFilter = null; + RowFilter templateFilter = null; ArrayList> finalFilters = new ArrayList<>(); - - - + /** * Create the dialog. */ - public SearchImage_GUI() { - + public SearchImage_GUI() { + addInternalFrameListener(new InternalFrameAdapter() { @Override public void internalFrameActivated(InternalFrameEvent arg0) { @@ -182,8 +154,8 @@ public class SearchImage_GUI extends JInternalFrame { tablemyImages.getColumnModel().getColumn(7).setMaxWidth(0); tablemyImages.getColumnModel().getColumn(9).setWidth(0); tablemyImages.getColumnModel().getColumn(9).setMinWidth(0); - tablemyImages.getColumnModel().getColumn(9).setMaxWidth(0); - + tablemyImages.getColumnModel().getColumn(9).setMaxWidth(0); + tablemyImages.getTableHeader().setReorderingAllowed(false); tablemyImages.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); tablemyImages.addMouseListener(new MouseAdapter() { @@ -192,7 +164,8 @@ public class SearchImage_GUI extends JInternalFrame { public void mouseReleased(MouseEvent e) { tablemyImages.clearSelection(); //just one row is selectable - tablemyImages.setRowSelectionInterval(tablemyImages.rowAtPoint(e.getPoint()), tablemyImages.rowAtPoint(e.getPoint())); + tablemyImages.setRowSelectionInterval(tablemyImages.rowAtPoint(e.getPoint()), + tablemyImages.rowAtPoint(e.getPoint())); } }); @@ -213,8 +186,8 @@ public class SearchImage_GUI extends JInternalFrame { tablePublicVorlagen.getColumnModel().getColumn(7).setMaxWidth(0); tablePublicVorlagen.getColumnModel().getColumn(9).setWidth(0); tablePublicVorlagen.getColumnModel().getColumn(9).setMinWidth(0); - tablePublicVorlagen.getColumnModel().getColumn(9).setMaxWidth(0); - + tablePublicVorlagen.getColumnModel().getColumn(9).setMaxWidth(0); + tablePublicVorlagen.getTableHeader().setReorderingAllowed(false); tablePublicVorlagen.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); tablePublicVorlagen.addMouseListener(new MouseAdapter() { @@ -223,7 +196,9 @@ public class SearchImage_GUI extends JInternalFrame { public void mouseReleased(MouseEvent e) { tablePublicVorlagen.clearSelection(); //just one row is selectable - tablePublicVorlagen.setRowSelectionInterval(tablePublicVorlagen.rowAtPoint(e.getPoint()), tablePublicVorlagen.rowAtPoint(e.getPoint())); + tablePublicVorlagen.setRowSelectionInterval( + tablePublicVorlagen.rowAtPoint(e.getPoint()), + tablePublicVorlagen.rowAtPoint(e.getPoint())); } }); @@ -245,7 +220,7 @@ public class SearchImage_GUI extends JInternalFrame { tableAllImages.getColumnModel().getColumn(9).setWidth(0); tableAllImages.getColumnModel().getColumn(9).setMinWidth(0); tableAllImages.getColumnModel().getColumn(9).setMaxWidth(0); - + tableAllImages.getTableHeader().setReorderingAllowed(false); tableAllImages.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); tableAllImages.addMouseListener(new MouseAdapter() { @@ -254,10 +229,11 @@ public class SearchImage_GUI extends JInternalFrame { public void mouseReleased(MouseEvent e) { tableAllImages.clearSelection(); //just one row is selectable - tableAllImages.setRowSelectionInterval(tableAllImages.rowAtPoint(e.getPoint()), tableAllImages.rowAtPoint(e.getPoint())); + tableAllImages.setRowSelectionInterval(tableAllImages.rowAtPoint(e.getPoint()), + tableAllImages.rowAtPoint(e.getPoint())); } }); - + textFieldName.requestFocusInWindow(); } }); @@ -265,16 +241,8 @@ public class SearchImage_GUI extends JInternalFrame { // Verhindert das Vergroessern Des Fensters setResizable(false); - try { - // Setzt das Look & Feel auf System - UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); - } catch (ClassNotFoundException | InstantiationException - | IllegalAccessException | UnsupportedLookAndFeelException e) { - - e.printStackTrace(); - } // Setzt den Fenstertitel - setTitle("bwLehrpool Suite - Image suchen - "+person.verantwortlicher.getUserID()); + setTitle("bwLehrpool Suite - Image suchen - " + person.verantwortlicher.getUserID()); // Zentriert das Fenster in die Bildmitte setBounds(0, 0, 918, 722); @@ -310,8 +278,8 @@ public class SearchImage_GUI extends JInternalFrame { JPanel panel_1 = new JPanel(); panel_1.setBackground(SystemColor.menu); - panel_1.setBorder(new TitledBorder(null, "Filterfunktionen", - TitledBorder.LEADING, TitledBorder.TOP, null, null)); + panel_1.setBorder(new TitledBorder(null, "Filterfunktionen", TitledBorder.LEADING, TitledBorder.TOP, + null, null)); panel_1.setBounds(10, 49, 557, 98); contentPanel.add(panel_1); panel_1.setLayout(null); @@ -330,62 +298,58 @@ public class SearchImage_GUI extends JInternalFrame { @Override public void keyReleased(KeyEvent e) { // Textfield eingabe auslesen - String stext = textFieldName.getText().trim().trim(); - + String stext = textFieldName.getText().trim(); + // Wenn Textfield nicht leer - if (stext != "") - { - activeSearch = true; + if (!stext.isEmpty()) { // Filtere nach der Eingabe - - orFilters.clear(); - andFilters.clear(); - finalFilters.clear(); - - orFilters.add(RowFilter.regexFilter("(?i)"+stext, 0)); //case insensitive - orFilters.add(RowFilter.regexFilter("(?i)"+stext, 9)); //case insensitive - + + orFilters.clear(); + andFilters.clear(); + finalFilters.clear(); + + orFilters.add(RowFilter.regexFilter("(?i)" + stext, 0)); //case insensitive + orFilters.add(RowFilter.regexFilter("(?i)" + stext, 9)); //case insensitive + orFilter = RowFilter.orFilter(orFilters); - + rowSorterAll.setRowFilter(orFilter); rowSorterMyImages.setRowFilter(orFilter); andFilters.add(RowFilter.regexFilter("1", 8)); andFilter = RowFilter.andFilter(andFilters); - + finalFilters.add(andFilter); finalFilters.add(orFilter); templateFilter = RowFilter.andFilter(finalFilters); rowSorterPublicVorlagen.setRowFilter(templateFilter); //füttere finalFilter mit andFilter und orFilter - - } - else - { //refresh list - activeSearch = false; - String username = person.verantwortlicher.getName() + " " + person.verantwortlicher.getVorname(); - + + } else { //refresh list + String username = person.verantwortlicher.getName() + " " + + person.verantwortlicher.getVorname(); + orFilters.clear(); andFilters.clear(); orFilters.add(RowFilter.regexFilter(username, 4)); //case insensitive, filter for anything orFilter = RowFilter.andFilter(orFilters); - + rowSorterMyImages.setRowFilter(orFilter); rowSorterAll.setRowFilter(orFilter); - + //in addition, templates can only be shown when they really are templates! orFilters.clear(); - orFilters.add(RowFilter.regexFilter("(?i)"+stext, 0)); //case insensitive - orFilters.add(RowFilter.regexFilter("(?i)"+stext, 9)); //case insensitive + orFilters.add(RowFilter.regexFilter("(?i)" + stext, 0)); //case insensitive + orFilters.add(RowFilter.regexFilter("(?i)" + stext, 9)); //case insensitive orFilters.add(RowFilter.regexFilter("1", 8)); orFilter = RowFilter.orFilter(orFilters); rowSorterPublicVorlagen.setRowFilter(orFilter); - + } - + tablemyImages.clearSelection(); tableAllImages.clearSelection(); tablePublicVorlagen.clearSelection(); - + resetImageInfo(); } }); @@ -406,30 +370,22 @@ public class SearchImage_GUI extends JInternalFrame { comboBox.addItem(list.get(i)); } } catch (TException e2) { - + e2.printStackTrace(); - JOptionPane.showMessageDialog(c, - e2.getCause() + "\n" + e2.getStackTrace(), "Debug-Message", + JOptionPane.showMessageDialog(c, e2.getCause() + "\n" + e2.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } // Registriert Auswahlaenderungen der Box comboBox.addActionListener(new ActionListener() { - public void actionPerformed(ActionEvent arg0) - { + public void actionPerformed(ActionEvent arg0) { // Prueft das die Auswahl nicht leer ist if (comboBox.getSelectedItem().toString() != "") { - activeSearch = true; rowSorterAll.setRowFilter(RowFilter.regexFilter(comboBox.getSelectedItem().toString(), 2)); - rowSorterMyImages.setRowFilter(RowFilter.regexFilter(comboBox.getSelectedItem().toString(), 2)); - rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(comboBox.getSelectedItem().toString(), 2)); - } - else - { - activeSearch = false; - /* - String username = person.verantwortlicher.getName() + " " - + person.verantwortlicher.getVorname(); - */ + rowSorterMyImages.setRowFilter(RowFilter.regexFilter(comboBox.getSelectedItem() + .toString(), 2)); + rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter(comboBox.getSelectedItem() + .toString(), 2)); + } else { rowSorterMyImages.setRowFilter(null); rowSorterPublicVorlagen.setRowFilter(null); rowSorterAll.setRowFilter(null); @@ -470,35 +426,27 @@ public class SearchImage_GUI extends JInternalFrame { contentPanel.add(lblNewLabel_1); tabbedPane = new JTabbedPane(JTabbedPane.TOP); - + tabbedPane.setBounds(10, 158, 557, 339); contentPanel.add(tabbedPane); JScrollPane scrollPaneAllImages = new JScrollPane(); tableAllImages = new JTable(); - tableAllImages.getSelectionModel().addListSelectionListener( - new ListSelectionListener() { - public void valueChanged(ListSelectionEvent e) { - - - - if(tableAllImages.getSelectedRow() != -1) - { - String imageid = modelAll.getValueAt( - tableAllImages - .convertRowIndexToModel(tableAllImages - .getSelectedRow()), 6) - .toString(); - String version = modelAll.getValueAt( - tableAllImages - .convertRowIndexToModel(tableAllImages - .getSelectedRow()), 7) - .toString(); - writeImageData(imageid, version); + tableAllImages.getSelectionModel().addListSelectionListener(new ListSelectionListener() { + public void valueChanged(ListSelectionEvent e) { + + if (tableAllImages.getSelectedRow() != -1) { + String imageid = modelAll.getValueAt( + tableAllImages.convertRowIndexToModel(tableAllImages.getSelectedRow()), 6) + .toString(); + String version = modelAll.getValueAt( + tableAllImages.convertRowIndexToModel(tableAllImages.getSelectedRow()), 7) + .toString(); + writeImageData(imageid, version); - } - } - }); + } + } + }); tableAllImages.setModel(modelAll); tableAllImages.getColumnModel().getColumn(1).sizeWidthToFit(); tableAllImages.getColumnModel().getColumn(2).sizeWidthToFit(); @@ -508,34 +456,27 @@ public class SearchImage_GUI extends JInternalFrame { JScrollPane scrollPaneMyImage = new JScrollPane(); tablemyImages = new JTable(); - tablemyImages.getSelectionModel().addListSelectionListener( - new ListSelectionListener() { - public void valueChanged(ListSelectionEvent e) - { - if (tablemyImages.getSelectedRow() != -1) { - String imageid = modelMyImages.getValueAt( - tablemyImages - .convertRowIndexToModel(tablemyImages - .getSelectedRow()), 6) - .toString(); - String version = modelMyImages.getValueAt( - tablemyImages - .convertRowIndexToModel(tablemyImages - .getSelectedRow()), 7) - .toString(); - writeImageData(imageid, version); - } - } - - - }); + tablemyImages.getSelectionModel().addListSelectionListener(new ListSelectionListener() { + public void valueChanged(ListSelectionEvent e) { + if (tablemyImages.getSelectedRow() != -1) { + String imageid = modelMyImages.getValueAt( + tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()), 6) + .toString(); + String version = modelMyImages.getValueAt( + tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()), 7) + .toString(); + writeImageData(imageid, version); + } + } + + }); tablemyImages.setModel(modelMyImages); tablemyImages.getColumnModel().getColumn(1).sizeWidthToFit(); tablemyImages.getColumnModel().getColumn(2).sizeWidthToFit(); tablemyImages.getColumnModel().getColumn(3).sizeWidthToFit(); tablemyImages.getColumnModel().getColumn(4).sizeWidthToFit(); tablemyImages.getColumnModel().getColumn(5).sizeWidthToFit(); - + tablemyImages.setRowSorter(rowSorterMyImages); scrollPaneMyImage.setViewportView(tablemyImages); @@ -543,42 +484,33 @@ public class SearchImage_GUI extends JInternalFrame { JScrollPane scrollPanePublicVorlagen = new JScrollPane(); tablePublicVorlagen = new JTable(); - tablePublicVorlagen.getSelectionModel().addListSelectionListener( - new ListSelectionListener() { - public void valueChanged(ListSelectionEvent e) { - - if(tablePublicVorlagen.getSelectedRow() != -1) - { - String imageid = modelPublicVorlagen - .getValueAt( - tablePublicVorlagen - .convertRowIndexToModel(tablePublicVorlagen - .getSelectedRow()), 6) - .toString(); - String version = modelPublicVorlagen - .getValueAt( - tablePublicVorlagen - .convertRowIndexToModel(tablePublicVorlagen - .getSelectedRow()), 7) - .toString(); - writeImageData(imageid, version); - - } - } - - - }); + tablePublicVorlagen.getSelectionModel().addListSelectionListener(new ListSelectionListener() { + public void valueChanged(ListSelectionEvent e) { + + if (tablePublicVorlagen.getSelectedRow() != -1) { + String imageid = modelPublicVorlagen.getValueAt( + tablePublicVorlagen.convertRowIndexToModel(tablePublicVorlagen.getSelectedRow()), + 6).toString(); + String version = modelPublicVorlagen.getValueAt( + tablePublicVorlagen.convertRowIndexToModel(tablePublicVorlagen.getSelectedRow()), + 7).toString(); + writeImageData(imageid, version); + + } + } + + }); tablePublicVorlagen.setModel(modelPublicVorlagen); tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit(); tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit(); tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit(); tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit(); tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit(); - + tablePublicVorlagen.setRowSorter(rowSorterPublicVorlagen); - + scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen); - + tabbedPane.addTab("Vorlagen", null, scrollPanePublicVorlagen, null); tableAllImages.setRowSorter(rowSorterAll); @@ -610,19 +542,15 @@ public class SearchImage_GUI extends JInternalFrame { if (tabbedPane.getSelectedIndex() == 0) { if (tablemyImages.getSelectedRow() != -1) { String imageid = modelMyImages.getValueAt( - tablemyImages - .convertRowIndexToModel(tablemyImages - .getSelectedRow()), 6) + tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()), 6) .toString(); - Image.image.setImageId(imageid); + Image.ImageId = imageid; String imageversion = modelMyImages.getValueAt( - tablemyImages - .convertRowIndexToModel(tablemyImages - .getSelectedRow()), 7) + tablemyImages.convertRowIndexToModel(tablemyImages.getSelectedRow()), 7) .toString(); - Image.image.setVersion(imageversion); + Image.Version = imageversion; GuiManager.show(new FTPSearchDownloader_GUI()); } @@ -631,80 +559,51 @@ public class SearchImage_GUI extends JInternalFrame { // Vorlagen Images // - if (tablePublicVorlagen.getSelectedRow() != -1 - // && modelPublicVorlagen - // .getValueAt( - // tablePublicVorlagen - // .convertRowIndexToModel(tablePublicVorlagen - // .getSelectedRow()), - // 4).equals(username) == true - ) { - String imageid = modelPublicVorlagen - .getValueAt( - tablePublicVorlagen - .convertRowIndexToModel(tablePublicVorlagen - .getSelectedRow()), 6) - .toString(); + if (tablePublicVorlagen.getSelectedRow() != -1) { + String imageid = modelPublicVorlagen.getValueAt( + tablePublicVorlagen.convertRowIndexToModel(tablePublicVorlagen + .getSelectedRow()), 6).toString(); - Image.image.setImageId(imageid); - String imageversion = modelPublicVorlagen - .getValueAt( - tablePublicVorlagen - .convertRowIndexToModel(tablePublicVorlagen - .getSelectedRow()), 7) - .toString(); + Image.ImageId = imageid; + String imageversion = modelPublicVorlagen.getValueAt( + tablePublicVorlagen.convertRowIndexToModel(tablePublicVorlagen + .getSelectedRow()), 7).toString(); - Image.image.setVersion(imageversion); + Image.Version = imageversion; GuiManager.show(new FTPSearchDownloader_GUI()); } } else if (tabbedPane.getSelectedIndex() == 2) { // // Alle Images // - /** - * if (tableAllImages.getSelectedRow() != -1 && modelAll - * .getValueAt( tableAllImages - * .convertRowIndexToModel(tableAllImages - * .getSelectedRow()), 4).equals(username) == true) { - **/ if (tableAllImages.getSelectedRow() != -1) { // nur eigene Images downloadbar if (modelAll.getValueAt( - tableAllImages - .convertRowIndexToModel(tableAllImages - .getSelectedRow()), 4).equals( - username) == true + tableAllImages.convertRowIndexToModel(tableAllImages.getSelectedRow()), 4) + .equals(username) == true || modelAll .getValueAt( - tableAllImages - .convertRowIndexToModel(tableAllImages - .getSelectedRow()), - 8).equals("true") == true || person.verantwortlicher.getRole().equals("Admin")) { + tableAllImages.convertRowIndexToModel(tableAllImages + .getSelectedRow()), 8).equals("true") == true + || person.verantwortlicher.getRole().equals("Admin")) { String imageid = modelAll .getValueAt( - tableAllImages - .convertRowIndexToModel(tableAllImages - .getSelectedRow()), - 6).toString(); + tableAllImages.convertRowIndexToModel(tableAllImages + .getSelectedRow()), 6).toString(); - Image.image.setImageId(imageid); + Image.ImageId = imageid; String imageversion = modelAll .getValueAt( - tableAllImages - .convertRowIndexToModel(tableAllImages - .getSelectedRow()), - 7).toString(); + tableAllImages.convertRowIndexToModel(tableAllImages + .getSelectedRow()), 7).toString(); - Image.image.setVersion(imageversion); + Image.Version = imageversion; GuiManager.show(new FTPSearchDownloader_GUI()); } else { - JOptionPane - .showMessageDialog( - c, - "Sie haben keine Berechtigung fremde Images herunterzuladen.", - "Message", - JOptionPane.INFORMATION_MESSAGE); + JOptionPane.showMessageDialog(c, + "Sie haben keine Berechtigung fremde Images herunterzuladen.", "Message", + JOptionPane.INFORMATION_MESSAGE); } } @@ -713,17 +612,13 @@ public class SearchImage_GUI extends JInternalFrame { // // nichts markiert // - JOptionPane - .showMessageDialog( - c, - "Bitte wählen Sie ein Image für den Download aus", - "Message", JOptionPane.INFORMATION_MESSAGE); + JOptionPane.showMessageDialog(c, "Bitte wählen Sie ein Image für den Download aus", + "Message", JOptionPane.INFORMATION_MESSAGE); } } }); btnDownload.setBounds(449, 508, 118, 23); contentPanel.add(btnDownload); - { JPanel buttonPane = new JPanel(); @@ -741,7 +636,6 @@ public class SearchImage_GUI extends JInternalFrame { }); okButton.setActionCommand("OK"); buttonPane.add(okButton); - //getRootPane().setDefaultButton(okButton); //causes the main menue to open and the search gui to close when pressing enter in search bar } } @@ -814,8 +708,7 @@ public class SearchImage_GUI extends JInternalFrame { labelLizenzSoftware.setBounds(10, 383, 296, 14); panel.add(labelLizenzSoftware); - JLabel lblLizenzpflichtigeSoftware = new JLabel( - "Lizenzpflichtige Software:"); + JLabel lblLizenzpflichtigeSoftware = new JLabel("Lizenzpflichtige Software:"); lblLizenzpflichtigeSoftware.setBounds(10, 367, 130, 14); panel.add(lblLizenzpflichtigeSoftware); @@ -884,157 +777,70 @@ public class SearchImage_GUI extends JInternalFrame { public DefaultTableModel initTableModel(DefaultTableModel model) { List images; try { - + // Hole eine Liste der Images - if(person.verantwortlicher.getRole()=="Admin"){ + if (person.verantwortlicher.getRole().equals("Admin")) { //get complete list - images = ThriftManager.getSatClient().getImageList(person.verantwortlicher.getUserID(),SessionData.authToken); + images = ThriftManager.getSatClient().getImageList(person.verantwortlicher.getUserID(), + SessionData.authToken); } else { - images = ThriftManager.getSatClient().getImageListPermissionRead(person.verantwortlicher.getUserID(),SessionData.authToken); + images = ThriftManager.getSatClient().getImageListPermissionRead( + person.verantwortlicher.getUserID(), SessionData.authToken); } + TableFiller.fillModelWithImageList(model, images); - Iterator i = images.iterator(); - SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss"); - int x = 0; - - while (i.hasNext()) { - // erzeuge Objekte fuer die Tabelle - Object[] obj = { images.get(x).getImageName(), - images.get(x).getLicenseRestriction(), - images.get(x).getOsName(), - images.get(x).getLectureName(), - images.get(x).getUserData(), - out.format(in.parse(images.get(x).updateTime)), - images.get(x).id, images.get(x).getVersion(), - images.get(x).getIsTemplate(), - images.get(x).getDescription(), - byteToGigabyte((Long.parseLong(images.get(x).getImageSize())), false) - }; - //System.out.println("filling templates..."+images.get(x).getIsTemplate()); - // Fuege diese Objekte der Tabelle hinzu - model.addRow(obj); - //System.out.println(model.getValueAt(x, 9)); - x++; - i.next(); - - } - //show number of rows in GUI - tabbedPane.setTitleAt(0, tabbedPane.getTitleAt(0)+" ("+model.getRowCount()+") "); + tabbedPane.setTitleAt(0, tabbedPane.getTitleAt(0) + " (" + model.getRowCount() + ") "); return model; - } catch (TException | ParseException e1) { - + } catch (TException e1) { + e1.printStackTrace(); - JOptionPane.showMessageDialog(c, - e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message", + JOptionPane.showMessageDialog(c, e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } return model; } - + public DefaultTableModel initTableModelAll(DefaultTableModel model) { - List images; try { // Hole eine Liste der Images - images = ThriftManager.getSatClient().getImageList(person.verantwortlicher.getUserID(),SessionData.authToken); - - Iterator i = images.iterator(); - SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss"); - int x = 0; - - while (i.hasNext()) { - // erzeuge Objekte fuer die Tabelle - Object[] obj = { images.get(x).getImageName(), - images.get(x).getLicenseRestriction(), - images.get(x).getOsName(), - images.get(x).getLectureName(), - images.get(x).getUserData(), - out.format(in.parse(images.get(x).updateTime)), - images.get(x).id, images.get(x).getVersion(), - images.get(x).getIsTemplate(), - images.get(x).getDescription(), - byteToGigabyte((Long.parseLong(images.get(x).getImageSize())), false) //filesize made readable - - }; - //System.out.println(images.get(x).getImageSize()+" "+images.get(x).getImageName()); - //System.out.println("filling templates..."+images.get(x).getIsTemplate()); - // Fuege diese Objekte der Tabelle hinzu - model.addRow(obj); - //System.out.println(model.getValueAt(x, 9)); - x++; - i.next(); - - } + List images = ThriftManager.getSatClient().getImageList( + person.verantwortlicher.getUserID(), SessionData.authToken); + TableFiller.fillModelWithImageList(model, images); //show number of rows in GUI - tabbedPane.setTitleAt(2, tabbedPane.getTitleAt(2)+" ("+model.getRowCount()+") "); + tabbedPane.setTitleAt(2, tabbedPane.getTitleAt(2) + " (" + model.getRowCount() + ") "); return model; - } catch (TException | ParseException e1) { - + } catch (TException e1) { + e1.printStackTrace(); - JOptionPane.showMessageDialog(c, - e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message", + JOptionPane.showMessageDialog(c, e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } return model; } - - + // Initiale Beffuelung eines Table models - public DefaultTableModel initTableModelTemplates(DefaultTableModel model) { - List images; - try { - // Hole eine Liste der Images - images = ThriftManager.getSatClient().getImageListAllTemplates(SessionData.authToken); - - Iterator i = images.iterator(); - SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss"); - int x = 0; - - while (i.hasNext()) { - // erzeuge Objekte fuer die Tabelle - Object[] obj = { images.get(x).getImageName(), - images.get(x).getLicenseRestriction(), - images.get(x).getOsName(), - images.get(x).getImageName(), - images.get(x).getUserData(), - out.format(in.parse(images.get(x).updateTime)), - images.get(x).id, images.get(x).getVersion(), - images.get(x).getIsTemplate(), - images.get(x).getDescription(), - byteToGigabyte((Long.parseLong(images.get(x).getImageSize())), false) - }; - // Fuege diese Objekte der Tabelle hinzu - - model.addRow(obj); - x++; - i.next(); + public DefaultTableModel initTableModelTemplates(DefaultTableModel model) { + try { + // Hole eine Liste der Images + List images = ThriftManager.getSatClient() + .getImageListAllTemplates(SessionData.authToken); + TableFiller.fillModelWithImageList(model, images); + //show number of rows in GUI + tabbedPane.setTitleAt(1, tabbedPane.getTitleAt(1) + " (" + model.getRowCount() + ") "); - } - //show number of rows in GUI - tabbedPane.setTitleAt(1, tabbedPane.getTitleAt(1)+" ("+model.getRowCount()+") "); - - return model; - } catch (TException | ParseException e1) { - - e1.printStackTrace(); - JOptionPane.showMessageDialog(c, - e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message", - JOptionPane.ERROR_MESSAGE); - } return model; - }// end initTableModelTemplates - - - - - - - + } catch (TException e1) { + + e1.printStackTrace(); + JOptionPane.showMessageDialog(c, e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message", + JOptionPane.ERROR_MESSAGE); + } + return model; + }// end initTableModelTemplates + private void resetImageInfo() { //reset the detailed information on the right hand side when changing search string labelID.setText(""); @@ -1051,12 +857,13 @@ public class SearchImage_GUI extends JInternalFrame { labelRam.setText(""); labelCPU.setText(""); } - + public void writeImageData(String id, String version) { try { SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss"); - Map res = ThriftManager.getSatClient().getImageData(id, version,SessionData.authToken); + Map res = ThriftManager.getSatClient().getImageData(id, version, + SessionData.authToken); labelName.setText(res.get("name")); labelOS.setText(res.get("os")); labelUpdate.setText(out.format(in.parse(res.get("lastupdate")))); @@ -1082,35 +889,23 @@ public class SearchImage_GUI extends JInternalFrame { labelID.setText(res.get("id")); labelVersion.setText(res.get("version")); textAreadesc.setText(res.get("desc")); - - List contacts = ThriftManager.getSatClient().getAdditionalImageContacts(id,SessionData.authToken); + + List contacts = ThriftManager.getSatClient().getAdditionalImageContacts(id, + SessionData.authToken); labelWeitereVerantwortliche.setText(""); - for (int i = 0; i < contacts.size(); i++) - { - labelWeitereVerantwortliche.setText(labelWeitereVerantwortliche.getText().trim()+(contacts.get(i))); + for (int i = 0; i < contacts.size(); i++) { + labelWeitereVerantwortliche.setText(labelWeitereVerantwortliche.getText().trim() + + (contacts.get(i))); } labelWeitereVerantwortliche.setToolTipText(labelWeitereVerantwortliche.getText().trim()); - - if(person.verantwortlicher.getRole().equals("Student") && res.get("license").equals("1")) - { + + if (person.verantwortlicher.getRole().equals("Student") && res.get("license").equals("1")) { btnDownload.setEnabled(false); - } - else - { + } else { btnDownload.setEnabled(true); } - } catch (TException | ParseException e1) { - e1.printStackTrace(); } } - - public static String byteToGigabyte(long bytes, boolean si) { - int unit = si ? 1000 : 1024; - if (bytes < unit) return bytes + " B"; - int exp = (int) (Math.log(bytes) / Math.log(unit)); - String pre = (si ? "kMGTPE" : "KMGTPE").charAt(exp-1) + (si ? "" : "i"); - return String.format("%.1f %sB", bytes / Math.pow(unit, exp), pre); - } } -- cgit v1.2.3-55-g7522