From 4593090a00943cd9de9455f99d1deaaacc9eb2bb Mon Sep 17 00:00:00 2001 From: Musachy Barroso Date: Tue, 28 Jul 2009 00:12:12 +0000 Subject: [PATCH] WW-3196 Add post init hook, and change fields visibility to protected git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/trunk@798341 13f79535-47bb-0310-9956-ffa450edef68 --- .../dispatcher/ng/filter/StrutsExecuteFilter.java | 6 +++--- .../ng/filter/StrutsPrepareAndExecuteFilter.java | 12 ++++++++++-- .../dispatcher/ng/filter/StrutsPrepareFilter.java | 11 +++++++++-- 3 files changed, 22 insertions(+), 7 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsExecuteFilter.java b/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsExecuteFilter.java index 0cd965192..3c5d882df 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsExecuteFilter.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsExecuteFilter.java @@ -37,10 +37,10 @@ import java.io.IOException; * been executed in the current chain. */ public class StrutsExecuteFilter implements StrutsStatics, Filter { - private PrepareOperations prepare; - private ExecuteOperations execute; + protected PrepareOperations prepare; + protected ExecuteOperations execute; - private FilterConfig filterConfig; + protected FilterConfig filterConfig; public void init(FilterConfig filterConfig) throws ServletException { this.filterConfig = filterConfig; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsPrepareAndExecuteFilter.java b/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsPrepareAndExecuteFilter.java index e27164b6c..5dfc88177 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsPrepareAndExecuteFilter.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsPrepareAndExecuteFilter.java @@ -39,8 +39,8 @@ import java.util.regex.Pattern; * when you don't have another filter that needs access to action context information, such as Sitemesh. */ public class StrutsPrepareAndExecuteFilter implements StrutsStatics, Filter { - private PrepareOperations prepare; - private ExecuteOperations execute; + protected PrepareOperations prepare; + protected ExecuteOperations execute; protected List excludedPatterns = null; public void init(FilterConfig filterConfig) throws ServletException { @@ -54,12 +54,20 @@ public class StrutsPrepareAndExecuteFilter implements StrutsStatics, Filter { prepare = new PrepareOperations(filterConfig.getServletContext(), dispatcher); execute = new ExecuteOperations(filterConfig.getServletContext(), dispatcher); this.excludedPatterns = init.buildExcludedPatternsList(dispatcher); + + postInit(dispatcher, filterConfig); } finally { init.cleanup(); } } + /** + * Callback for post initialization + */ + protected void postInit(Dispatcher dispatcher, FilterConfig filterConfig) { + } + public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest) req; diff --git a/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsPrepareFilter.java b/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsPrepareFilter.java index f288fa9f0..97c44972f 100644 --- a/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsPrepareFilter.java +++ b/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsPrepareFilter.java @@ -39,8 +39,8 @@ public class StrutsPrepareFilter implements StrutsStatics, Filter { protected static final String REQUEST_EXCLUDED_FROM_ACTION_MAPPING = StrutsPrepareFilter.class.getName() + ".REQUEST_EXCLUDED_FROM_ACTION_MAPPING"; - private PrepareOperations prepare; - private List excludedPatterns = null; + protected PrepareOperations prepare; + protected List excludedPatterns = null; public void init(FilterConfig filterConfig) throws ServletException { InitOperations init = new InitOperations(); @@ -51,10 +51,17 @@ public class StrutsPrepareFilter implements StrutsStatics, Filter { prepare = new PrepareOperations(filterConfig.getServletContext(), dispatcher); this.excludedPatterns = init.buildExcludedPatternsList(dispatcher); + + postInit(dispatcher, filterConfig); } finally { init.cleanup(); } + } + /** + * Callback for post initialization + */ + protected void postInit(Dispatcher dispatcher, FilterConfig filterConfig) { } public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {