package org.jblooming.waf.settings; import org.jblooming.security.Permission; import javax.servlet.jsp.PageContext; import javax.servlet.http.HttpServletRequest; import java.util.Map; /** * A platform application configuration. * * @see org.jblooming.waf.settings.PlatformConfiguration */ public interface Application { public final static String PLATFORM_APP_NAME = "Platform"; String getName(); String getRootFolder(); boolean isLoginCookieEnabled(); void configurePersistence(PlatformConfiguration pc) throws Exception; void configureFreeAccess(PlatformConfiguration pc); void configureNeedingPersistence(PlatformConfiguration pc); void configureNeedingPageContext(PageContext pageContext); Map<String,Permission> getPermissions(); Class getDefaultScreenClass(); void configBeforePerform(HttpServletRequest request); void applicationDestroy(); String getVersion(); }