@@ -210,15 +210,19 @@ public static void gatherUserRoles(HttpServletRequest request) throws BaseExcept
210
210
return ;
211
211
}
212
212
213
- // Obtain an instance of the User Retrieval object
214
- UserRetrieval usrMgr = ActionsHelper .createUserRetrieval (request );
215
- // Get External User object for the currently logged in user
216
- ExternalUser extUser = usrMgr .retrieveUser (getLoggedInUserId (request ));
217
- // Place handle of the user into session as attribute
218
- request .getSession ().setAttribute ("userHandle" , extUser .getHandle ());
219
- request .getSession ().setAttribute ("userFirstName" , extUser .getFirstName ());
220
- request .getSession ().setAttribute ("userLastName" , extUser .getLastName ());
221
- request .getSession ().setAttribute ("userEmail" , extUser .getEmail ());
213
+ // If this function is called the first time after the user has logged in,
214
+ // obtain and store in the session the handle of the user
215
+ if (request .getSession ().getAttribute ("userHandle" ) == null ) {
216
+ // Obtain an instance of the User Retrieval object
217
+ UserRetrieval usrMgr = ActionsHelper .createUserRetrieval (request );
218
+ // Get External User object for the currently logged in user
219
+ ExternalUser extUser = usrMgr .retrieveUser (getLoggedInUserId (request ));
220
+ // Place handle of the user into session as attribute
221
+ request .getSession ().setAttribute ("userHandle" , extUser .getHandle ());
222
+ request .getSession ().setAttribute ("userFirstName" , extUser .getFirstName ());
223
+ request .getSession ().setAttribute ("userLastName" , extUser .getLastName ());
224
+ request .getSession ().setAttribute ("userEmail" , extUser .getEmail ());
225
+ }
222
226
223
227
// Perform search for resources
224
228
Resource [] resources = ActionsHelper .searchUserResources (getLoggedInUserId (request ), null );
0 commit comments