From 39f3824eaee58ee4d0f907904f431ec94a5ad526 Mon Sep 17 00:00:00 2001 From: Jonathan Bauer Date: Thu, 16 Oct 2014 14:02:50 +0200 Subject: [client] dont create a huge error box when thrift communication to masterserver failed --- dozentenmodul/src/main/java/gui/intro/Login_GUI.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'dozentenmodul/src/main/java/gui/intro') diff --git a/dozentenmodul/src/main/java/gui/intro/Login_GUI.java b/dozentenmodul/src/main/java/gui/intro/Login_GUI.java index 593c5e60..dcaafab5 100644 --- a/dozentenmodul/src/main/java/gui/intro/Login_GUI.java +++ b/dozentenmodul/src/main/java/gui/intro/Login_GUI.java @@ -330,7 +330,8 @@ public class Login_GUI extends JFrame { } catch (TException e) { setStatus(Color.red, "Kommunikation mit Masterserver fehlgeschlagen.", - Arrays.toString(e.getStackTrace())); + null); + LOGGER.error("Thrift-communication to the masterserver failed, see trace: ", e); return; } -- cgit v1.2.3-55-g7522 From 97b1a78689126b3fb55455dc913e5793fe79545d Mon Sep 17 00:00:00 2001 From: Nino Breuer Date: Thu, 16 Oct 2014 14:46:51 +0200 Subject: • added possibilty to test offline, if masterserver is not reachable. to be removed someday. use parameter"offline_mode" to start. Warning: Authentication skipped!!! --- dozentenmodul/src/main/java/App.java | 4 +-- .../src/main/java/gui/intro/Login_GUI.java | 33 ++++++++++++++++++++-- 2 files changed, 32 insertions(+), 5 deletions(-) (limited to 'dozentenmodul/src/main/java/gui/intro') diff --git a/dozentenmodul/src/main/java/App.java b/dozentenmodul/src/main/java/App.java index 50658d5f..4b7a24ef 100644 --- a/dozentenmodul/src/main/java/App.java +++ b/dozentenmodul/src/main/java/App.java @@ -51,7 +51,7 @@ public class App { LOGGER.info("Logger initialised."); } - public static void main(String[] args) { + public static void main(final String[] args) { // Pruefe und Erzeuge gegebenfalls Config try { @@ -70,7 +70,7 @@ public class App { public void run() { try { // Aufruf und Anzeige des Login Fensters - Login_GUI frame = new Login_GUI(); + Login_GUI frame = new Login_GUI(args); frame.setVisible(true); } catch (Exception e) { diff --git a/dozentenmodul/src/main/java/gui/intro/Login_GUI.java b/dozentenmodul/src/main/java/gui/intro/Login_GUI.java index 593c5e60..58c17cb9 100644 --- a/dozentenmodul/src/main/java/gui/intro/Login_GUI.java +++ b/dozentenmodul/src/main/java/gui/intro/Login_GUI.java @@ -68,6 +68,7 @@ public class Login_GUI extends JFrame { JCheckBox chckbxBenutzernameSpeichern; private static final String HELP_MESSAGE = ""; Component c = null; + String[] args = null; private JPanel panel; private JPanel panel_1; @@ -93,7 +94,7 @@ public class Login_GUI extends JFrame { /** * Create the frame. */ - public Login_GUI() { + public Login_GUI(String[] args) { addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { @@ -101,6 +102,7 @@ public class Login_GUI extends JFrame { } }); + this.args = args; // Fenster darf nicht vergroessert werden setResizable(false); @@ -119,7 +121,6 @@ public class Login_GUI extends JFrame { // Größe setzen und mittig ausrichten setBounds(0, 0, 785, 430); - GuiOrganizer.centerGUI(this); // Erzeugen eines Panels contentPane = new JPanel(); @@ -285,7 +286,32 @@ public class Login_GUI extends JFrame { public void performLogin(final String loginType) { LOGGER.info("Trying login of type: " + loginType); + if (loginType == LOGIN_TYPE_BWLEHRPOOL) { + + if(args[0].equals("offline_mode")) + { + SessionData.session.setServerAdress("141.79.128.102"); + System.out.println("Entering in offline_mode"); + String hochschule = "testhochschule.de"; + + person.verantwortlicher.setUsername(lblusername.getText().trim()); + person.verantwortlicher.setUserID(lblusername.getText().trim()); + person.verantwortlicher.setName("Hans"); + person.verantwortlicher.setVorname("Wurst"); + person.verantwortlicher.setEMail("hans.wurst@"+hochschule); + person.verantwortlicher.setHochschule(hochschule); + person.verantwortlicher.setRole("Dozent"); + + ThriftConnection bwthrift = new ThriftConnection(); + server.generated.Server.Client bwClient = bwthrift.getThriftConnection(); + models.Client.clientcon.setClient(bwClient); + + showMainMenu(); + + } + else + { // start the authentication process against the masterserver org.openslx.imagemaster.thrift.iface.SessionData result = null; // Connect to Master @@ -363,7 +389,8 @@ public class Login_GUI extends JFrame { // Spaeter ueber result.getRole zum Beispiel die Rolle holen person.verantwortlicher.setRole("Dozent"); } // end bwLehrpool-Login - + } + if (loginType == LOGIN_TYPE_BWIDM) { // try the shibbo login in its own SwingWorker to avoid GUI lockups SwingWorker worker = new SwingWorker(){ -- cgit v1.2.3-55-g7522 From a708675a206835452153da79a21c50dfc612f782 Mon Sep 17 00:00:00 2001 From: Jonathan Bauer Date: Thu, 16 Oct 2014 15:14:00 +0200 Subject: fix NPE if no args are given & fake user info for bwIDM tests --- dozentenmodul/src/main/java/gui/intro/Login_GUI.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'dozentenmodul/src/main/java/gui/intro') diff --git a/dozentenmodul/src/main/java/gui/intro/Login_GUI.java b/dozentenmodul/src/main/java/gui/intro/Login_GUI.java index 60b30bbd..2e1a2dc3 100644 --- a/dozentenmodul/src/main/java/gui/intro/Login_GUI.java +++ b/dozentenmodul/src/main/java/gui/intro/Login_GUI.java @@ -289,7 +289,7 @@ public class Login_GUI extends JFrame { if (loginType == LOGIN_TYPE_BWLEHRPOOL) { - if(args[0].equals("offline_mode")) + if(args.length != 0 && args[0].equals("offline_mode")) { SessionData.session.setServerAdress("141.79.128.102"); System.out.println("Entering in offline_mode"); @@ -428,6 +428,18 @@ public class Login_GUI extends JFrame { } }; worker.execute(); + + // now we fake the user information for testing purposes. + // TODO parse the response from the SP and set the correct user info + person.verantwortlicher.setUsername(lblusername.getText().trim()); + person.verantwortlicher.setUserID(lblusername.getText().trim()); + person.verantwortlicher.setName("Joe"); + person.verantwortlicher.setVorname("B"); + person.verantwortlicher.setEMail("spam@aol.com"); + person.verantwortlicher.setHochschule("fr-test.de"); + person.verantwortlicher.setRole("Dozent"); + SessionData.session.setServerAdress("132.230.8.199"); + } // always save to user's config file. -- cgit v1.2.3-55-g7522