diff options
| author | Simon Rettberg | 2015-09-30 16:20:10 +0200 |
|---|---|---|
| committer | Simon Rettberg | 2015-09-30 16:20:10 +0200 |
| commit | b277c41f9c55f7f12f80788f4027ddfd5baa6e4f (patch) | |
| tree | bedb6ed1aa2c8de3ff41924ba13732e6b3354e6e /dozentenmodulserver/src/main/java | |
| parent | [server] Fix: Update usage stats for lectures that link to a VM without VMX t... (diff) | |
| download | tutor-module-b277c41f9c55f7f12f80788f4027ddfd5baa6e4f.tar.gz tutor-module-b277c41f9c55f7f12f80788f4027ddfd5baa6e4f.tar.xz tutor-module-b277c41f9c55f7f12f80788f4027ddfd5baa6e4f.zip | |
[server] Remove two temporary hacks
Diffstat (limited to 'dozentenmodulserver/src/main/java')
| -rw-r--r-- | dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/permissions/User.java | 12 | ||||
| -rw-r--r-- | dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/thrift/SessionManager.java | 7 |
2 files changed, 8 insertions, 11 deletions
diff --git a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/permissions/User.java b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/permissions/User.java index b712c065..6c252ace 100644 --- a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/permissions/User.java +++ b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/permissions/User.java @@ -65,16 +65,12 @@ public class User { return null; // User locally known, use user-specific permission return AuthorizationError.ACCOUNT_SUSPENDED; } - // User not locally known - refresh organization cache first - LocalOrganization local = LocalData.getLocalOrganization(user.organizationId); - if (local == null && OrganizationList.find(user.organizationId) != null) { - Util.sleep(1000); // Since writing to DB is async.. (yeah I know) - local = LocalData.getLocalOrganization(user.organizationId); - } // User unknown, check per-organization login permission - if (local == null) + LocalOrganization local = LocalData.getLocalOrganization(user.organizationId); + if (local == null && OrganizationList.find(user.organizationId) == null) return AuthorizationError.INVALID_ORGANIZATION; - if (local.canLogin) + // Organization known an allowed to login + if (local != null && local.canLogin) return null; // Special case: If user is not allowed to login, check if there are no allowed // organizations yet. If so, automatically allow the organization of this user. diff --git a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/thrift/SessionManager.java b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/thrift/SessionManager.java index ddaa729a..02412f08 100644 --- a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/thrift/SessionManager.java +++ b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/thrift/SessionManager.java @@ -156,9 +156,10 @@ public class SessionManager { throw new TInvocationException(); } LOGGER.info("Got user " + ui.userId + " for token " + token); - // TODO XXX HACK: Remove this once master server supplies role - if (ui.role == null) - ui.role = Role.TUTOR; + if (ui.role == null) { + // Fail-safe: No role supplied, assume student + ui.role = Role.STUDENT; + } // Valid reply, check if user is allowed to communicate with this satellite server AuthorizationError authError = User.canLogin(ui); if (authError != null) { |
