package com.nubisware.oidc.lr62; import javax.servlet.http.HttpSession; import com.liferay.portal.model.User; import com.nubisware.oidc.rest.JWTToken; public abstract class OIDCTokenProxy { protected static OIDCTokenProxy instance; public OIDCTokenProxy() { instance = this; } public static synchronized OIDCTokenProxy getInstance() { return instance != null ? instance : new IntraVMOIDCTokenProxy(); } public abstract void setOIDCToken(User user, HttpSession session, JWTToken token); public abstract void setRPTToken(User user, HttpSession session, JWTToken token); public abstract JWTToken getOIDCToken(User user, HttpSession session); public abstract JWTToken getUMAToken(User user, HttpSession session); public abstract void removeOIDCToken(User user, HttpSession session); public abstract void removeUMAToken(User user, HttpSession session); protected String generateKey(User user, HttpSession session) { return user.getScreenName() + "@" + session.getId(); } }