package com.vci.client.uif.engine.common; import java.util.HashMap; import java.util.Map; import com.vci.client.common.objects.UserObject; import com.vci.client.framework.delegate.RightManagementClientDelegate; import com.vci.client.ui.exception.VCIException; public class UserObjectMap { private static UserObjectMap _instance = null; public static UserObjectMap getInstance(){ if(_instance == null){ synchronized (UserObjectMap.class) { if(_instance == null){ _instance = new UserObjectMap(); } } } return _instance; } private Map userMap = new HashMap(); public UserObject getUserObjectByName(String userName){ UserObject userObject = null; if(userMap.containsKey(userName)){ userObject = userMap.get(userName); } else { userObject = getUserObjectFromDB(userName); if(userObject != null){ userMap.put(userName, userObject); } } return userObject; } private UserObject getUserObjectFromDB(String userName){ UserObject userObj = null; try { userObj = new RightManagementClientDelegate().getUserObjectByUserName(userName); } catch (VCIException e) { // TODO Auto-generated catch block e.printStackTrace(); } return userObj; } }