From 13505318b1d71de2fa599e53d8d113144f4a0dfd Mon Sep 17 00:00:00 2001 From: Björn Hagemeister Date: Wed, 8 Oct 2014 14:54:52 +0200 Subject: Implemented publishUser(sessionId, UserInfo) in ApiServer. Plus added method for inserting user into user database with given UserInfo. --- .../java/org/openslx/imagemaster/server/ApiServer.java | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'src/main/java/org/openslx/imagemaster/server/ApiServer.java') diff --git a/src/main/java/org/openslx/imagemaster/server/ApiServer.java b/src/main/java/org/openslx/imagemaster/server/ApiServer.java index 1323ec6..ada6a21 100644 --- a/src/main/java/org/openslx/imagemaster/server/ApiServer.java +++ b/src/main/java/org/openslx/imagemaster/server/ApiServer.java @@ -164,10 +164,18 @@ public class ApiServer return ( ServerSessionManager.getSession( serverSessionId ) != null ); } - public static boolean publishUser( String serverSessionId, UserInfo user ) + public static boolean publishUser( String serverSessionId, UserInfo user ) throws AuthorizationException { - // TODO - return false; + // Check session. + if (SessionManager.getSessionFromSessionId( serverSessionId ) == null) { + throw new AuthorizationException( AuthorizationError.NOT_AUTHENTICATED, "Session ID not valid" ); + } + if (DbUser.forLogin( user.userId ) == null) { + // User not known by server. Insert into server database. + return DbUser.insertOrUpdate( user ); + } + // Else user is already known by server. Do nothing. + return true; } public static List findUser( String sessionId, String organizationId, String searchTerm ) throws AuthorizationException -- cgit v1.2.3-55-g7522