package fi.arcusys.koku.web; import static fi.arcusys.koku.util.Constants.JSON_LOGIN_STATUS; import static fi.arcusys.koku.util.Constants.PORTAL_MODE_KUNPO; import static fi.arcusys.koku.util.Constants.PORTAL_MODE_LOORA; import static fi.arcusys.koku.util.Constants.RESPONSE; import static fi.arcusys.koku.util.Constants.TOKEN_STATUS_INVALID; import static fi.arcusys.koku.util.Properties.PORTAL_MODE; import net.sf.json.JSONObject; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.ui.ModelMap; import fi.arcusys.koku.util.PortalRole; public class AbstractController { private static final Logger LOG = LoggerFactory.getLogger(AbstractController.class); /** * Resolves which portalRole portal has * * @return PortalRole */ protected PortalRole getPortalRole() { if (PORTAL_MODE.contains(PORTAL_MODE_KUNPO)) { return PortalRole.CITIZEN; } else if (PORTAL_MODE.contains(PORTAL_MODE_LOORA)) { return PortalRole.EMPLOYEE; } else { throw new IllegalArgumentException("PortalMode not supported: "+ PORTAL_MODE); } } protected String authenticationFailed(ModelMap modelMap, String username){ LOG.error("Strong authentication required! User '"+username+"' is not Vetuma authenticated!"); JSONObject jsonModel = new JSONObject(); jsonModel.put(JSON_LOGIN_STATUS, TOKEN_STATUS_INVALID); modelMap.addAttribute(RESPONSE, jsonModel); return AjaxViewResolver.AJAX_PREFIX; } }