diff options
| author | Jonathan Bauer | 2015-09-09 17:41:14 +0200 |
|---|---|---|
| committer | Jonathan Bauer | 2015-09-09 17:41:14 +0200 |
| commit | 13dcbae97eb2e7b2e64bf02d81e315c51311fb7c (patch) | |
| tree | c3e062a35bd49018c2d2ad3428436e24c5abe4ba /dozentenmodul/src/main/java | |
| parent | [client] reworked def/custom permissions handling in ImageDetailsWindow (diff) | |
| parent | [client] Use new authentication RPC to master (diff) | |
| download | tutor-module-13dcbae97eb2e7b2e64bf02d81e315c51311fb7c.tar.gz tutor-module-13dcbae97eb2e7b2e64bf02d81e315c51311fb7c.tar.xz tutor-module-13dcbae97eb2e7b2e64bf02d81e315c51311fb7c.zip | |
Merge branch 'v1.1' of stp:openslx-ng/tutor-module into v1.1
Diffstat (limited to 'dozentenmodul/src/main/java')
3 files changed, 23 insertions, 15 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/authentication/TestAccountAuthenticator.java b/dozentenmodul/src/main/java/org/openslx/dozmod/authentication/TestAccountAuthenticator.java index 5d254d85..5adeb394 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/authentication/TestAccountAuthenticator.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/authentication/TestAccountAuthenticator.java @@ -1,13 +1,8 @@ package org.openslx.dozmod.authentication; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - import org.apache.log4j.Logger; import org.apache.thrift.TException; -import org.openslx.bwlp.thrift.iface.Satellite; -import org.openslx.bwlp.thrift.iface.SessionData; +import org.openslx.bwlp.thrift.iface.ClientSessionData; import org.openslx.bwlp.thrift.iface.TAuthorizationException; import org.openslx.dozmod.authentication.ShibbolethEcp.ReturnCode; import org.openslx.thrifthelper.ThriftManager; @@ -27,16 +22,13 @@ public class TestAccountAuthenticator implements Authenticator { public void login(String username, String password, AuthenticatorCallback callback) throws TAuthorizationException, TException { - SessionData authResult = null; - authResult = ThriftManager.getMasterClient().authenticate(username, password); + ClientSessionData authResult = null; + authResult = ThriftManager.getMasterClient().localAccountLogin(username, password); // handle answer from server if (authResult != null && authResult.authToken != null) { LOGGER.info(authResult); - List<Satellite> sats = new ArrayList<>(); - // TODO: Handle cert fingerprint - sats.add(new Satellite(Arrays.asList(new String[] { authResult.serverAddress }), "default", null)); - AuthenticationData data = new AuthenticationData(authResult.authToken, authResult.sessionId, sats); + AuthenticationData data = new AuthenticationData(authResult.authToken, authResult.sessionId, authResult.satellites); callback.postLogin(ReturnCode.NO_ERROR, data, null); } else { // it should then show a corresponding error message! diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/thrift/ThriftActions.java b/dozentenmodul/src/main/java/org/openslx/dozmod/thrift/ThriftActions.java index f8932a15..a624fc1a 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/thrift/ThriftActions.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/thrift/ThriftActions.java @@ -23,6 +23,7 @@ import org.openslx.bwlp.thrift.iface.LecturePermissions; import org.openslx.bwlp.thrift.iface.LectureRead; import org.openslx.bwlp.thrift.iface.LectureSummary; import org.openslx.bwlp.thrift.iface.LectureWrite; +import org.openslx.bwlp.thrift.iface.Satellite; import org.openslx.bwlp.thrift.iface.SatelliteServer.Client; import org.openslx.bwlp.thrift.iface.TAuthorizationException; import org.openslx.bwlp.thrift.iface.TInvocationException; @@ -96,8 +97,23 @@ public class ThriftActions { masterToken = session.masterToken; } else { // after login - // TODO sat adress selection popup!! - address = "132.230.8.113"; + if (data.satellites == null || data.satellites.isEmpty()) { + // TODO: Ask for manual IP address entry + Gui.asyncMessageBox( + "Login erfolgreich, aber für die gewählte Einrichtung ist kein Satellit registriert", + MessageType.ERROR, LOGGER, null); + return false; + } + // TODO: Show list if > 1 + Satellite sat = data.satellites.get(0); + if (sat.addressList == null || sat.addressList.isEmpty()) { + // TODO: Ask for manual IP address entry + Gui.asyncMessageBox( + "Login erfolgreich, aber für den Satelliten ist keine IP-Adresse hinterlegt", + MessageType.ERROR, LOGGER, null); + return false; + } + address = sat.addressList.get(0); satToken = data.satelliteToken; masterToken = data.masterToken; } diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java b/dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java index acf6fd3a..36c64fdf 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java @@ -38,7 +38,7 @@ public class VmWrapper { machineDescription.length); } // Append disk & NAT - if (!vmwareConfig.addEthernetNat() || !vmwareConfig.addHddTemplate(diskFile.getName())) { + if (!vmwareConfig.addDefaultNat() || !vmwareConfig.addHddTemplate(diskFile.getName())) { throw new MetaDataMissingException(); } // The guestOS should be in the vmx, but the user could have changed it by editing |
