make use of new WebElement and Priority annotation

This commit is contained in:
Sebastian Sdorra
2015-02-01 19:52:53 +01:00
parent 79e1e5e972
commit 30b49490a7
19 changed files with 161 additions and 85 deletions

View File

@@ -52,11 +52,6 @@ import sonia.scm.cache.CacheManager;
import sonia.scm.cache.GuavaCacheManager;
import sonia.scm.config.ScmConfiguration;
import sonia.scm.event.ScmEventBus;
import sonia.scm.filter.AdminSecurityFilter;
import sonia.scm.filter.BaseUrlFilter;
import sonia.scm.filter.GZipFilter;
import sonia.scm.filter.MDCFilter;
import sonia.scm.filter.SecurityFilter;
import sonia.scm.group.DefaultGroupManager;
import sonia.scm.group.GroupDAO;
import sonia.scm.group.GroupManager;
@@ -119,10 +114,8 @@ import sonia.scm.util.DebugServlet;
import sonia.scm.util.ScmConfigurationUtil;
import sonia.scm.web.cgi.CGIExecutorFactory;
import sonia.scm.web.cgi.DefaultCGIExecutorFactory;
import sonia.scm.web.filter.AutoLoginFilter;
import sonia.scm.web.filter.LoggingFilter;
import sonia.scm.web.security.AdministrationContext;
import sonia.scm.web.security.ApiBasicAuthenticationFilter;
import sonia.scm.web.security.DefaultAdministrationContext;
//~--- JDK imports ------------------------------------------------------------
@@ -329,21 +322,6 @@ public class ScmServletModule extends JerseyServletModule
filter(PATTERN_ALL).through(LoggingFilter.class);
}
/*
* filter(PATTERN_PAGE,
* PATTERN_STATIC_RESOURCES).through(StaticResourceFilter.class);
*/
filter(PATTERN_ALL).through(BaseUrlFilter.class);
filter(PATTERN_ALL).through(AutoLoginFilter.class);
filterRegex(RESOURCE_REGEX).through(GZipFilter.class);
filter(PATTERN_RESTAPI,
PATTERN_DEBUG).through(ApiBasicAuthenticationFilter.class);
filter(PATTERN_RESTAPI, PATTERN_DEBUG).through(SecurityFilter.class);
filter(PATTERN_CONFIG, PATTERN_ADMIN).through(AdminSecurityFilter.class);
// added mdcs for logging
filter(PATTERN_ALL).through(MDCFilter.class);
// debug servlet
serve(PATTERN_DEBUG).with(DebugServlet.class);

View File

@@ -36,9 +36,9 @@ package sonia.scm.filter;
//~--- non-JDK imports --------------------------------------------------------
import com.google.inject.Inject;
import com.google.inject.Singleton;
import org.apache.shiro.subject.Subject;
import sonia.scm.Priority;
import sonia.scm.config.ScmConfiguration;
import sonia.scm.security.Role;
@@ -47,7 +47,8 @@ import sonia.scm.security.Role;
*
* @author Sebastian Sdorra
*/
@Singleton
@Priority(Filters.PRIORITY_AUTHORIZATION + 1)
@WebElement(value = Filters.PATTERN_RESTAPI, morePatterns = {Filters.PATTERN_DEBUG})
public class AdminSecurityFilter extends SecurityFilter
{
@@ -69,8 +70,6 @@ public class AdminSecurityFilter extends SecurityFilter
* Method description
*
*
* @param securityContext
*
* @param subject
*
* @return

View File

@@ -37,7 +37,6 @@ package sonia.scm.filter;
import com.google.common.annotations.VisibleForTesting;
import com.google.inject.Inject;
import com.google.inject.Singleton;
import sonia.scm.config.ScmConfiguration;
import sonia.scm.util.HttpUtil;
@@ -52,12 +51,14 @@ import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import sonia.scm.Priority;
/**
*
* @author Sebastian Sdorra
*/
@Singleton
@Priority(Filters.PRIORITY_BASEURL)
@WebElement(Filters.PATTERN_ALL)
public class BaseUrlFilter extends HttpFilter
{
@@ -162,6 +163,6 @@ public class BaseUrlFilter extends HttpFilter
//~--- fields ---------------------------------------------------------------
/** Field description */
private ScmConfiguration configuration;
/** scm configuration */
private final ScmConfiguration configuration;
}

View File

@@ -51,12 +51,14 @@ import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import sonia.scm.Priority;
/**
*
* @author Sebastian Sdorra
*/
@Singleton
@Priority(Filters.PRIORITY_POST_AUTHENTICATION)
@WebElement(Filters.PATTERN_ALL)
public class MDCFilter extends HttpFilter
{

View File

@@ -55,12 +55,14 @@ import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import sonia.scm.Priority;
/**
*
* @author Sebastian Sdorra
*/
@Singleton
@Priority(Filters.PRIORITY_AUTHORIZATION)
@WebElement(value = Filters.PATTERN_RESTAPI, morePatterns = {Filters.PATTERN_DEBUG})
public class SecurityFilter extends HttpFilter
{
@@ -171,6 +173,6 @@ public class SecurityFilter extends HttpFilter
//~--- fields ---------------------------------------------------------------
/** Field description */
private ScmConfiguration configuration;
/** scm configuration */
private final ScmConfiguration configuration;
}

View File

@@ -52,12 +52,16 @@ import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import sonia.scm.Priority;
import sonia.scm.filter.Filters;
import sonia.scm.filter.WebElement;
/**
*
* @author Sebastian Sdorra
*/
@Singleton
@Priority(Filters.PRIORITY_AUTHENTICATION)
@WebElement(value = Filters.PATTERN_RESTAPI, morePatterns = {Filters.PATTERN_DEBUG})
public class ApiBasicAuthenticationFilter extends BasicAuthenticationFilter
{