public void init(FilterConfig filterConfig) throws ServletException { this.filterConfig = filterConfig; configProperties = getConfigProperties(filterConfig); autoReload = getAutoReload(); logger.config("Auto reloading " + (autoReload ? "enabled" : "disabled")); synchronized (configLock) { deployNewFilter(setup()); } initialized = true; }
public void init(FilterConfig filterConfig) throws ServletException { this.filterConfig = filterConfig; configProperties = getConfigProperties(filterConfig); autoReload = getAutoReload(); logger.config("Auto reloading " + (autoReload ? "enabled" : "disabled")); synchronized (configLock) { deployNewFilter(setup()); } initialized = true; }
protected void reloadIfNecessary() throws ServletException { // TODO: Allow finer grained control of reload strategies: // - don't check file timestamp on every single request (once per N seconds). // - periodically check in background, instead of blocking request threads. if (autoReload && reloadRequired()) { synchronized (configLock) { // Double check lock for performance (works in JDK5+, with volatile items). if (reloadRequired()) { deployNewFilter(setup()); } } } }
protected void reloadIfNecessary() throws ServletException { // TODO: Allow finer grained control of reload strategies: // - don't check file timestamp on every single request (once per N seconds). // - periodically check in background, instead of blocking request threads. if (autoReload && reloadRequired()) { synchronized (configLock) { // Double check lock for performance (works in JDK5+, with volatile items). if (reloadRequired()) { deployNewFilter(setup()); } } } }