Browse Source

SEC-1132: More refactoring to remove cycles ad reduce complexity metrics

Luke Taylor 16 năm trước cách đây
mục cha
commit
6d655aa514
100 tập tin đã thay đổi với 525 bổ sung527 xóa
  1. 1 1
      config/src/main/java/org/springframework/security/config/ConcurrentSessionsBeanDefinitionParser.java
  2. 1 1
      config/src/main/java/org/springframework/security/config/EntryPointInjectionBeanPostProcessor.java
  3. 5 5
      config/src/main/java/org/springframework/security/config/FilterChainProxyPostProcessor.java
  4. 3 3
      config/src/main/java/org/springframework/security/config/FilterInvocationSecurityMetadataSourceBeanDefinitionParser.java
  5. 1 1
      config/src/main/java/org/springframework/security/config/FormLoginBeanDefinitionParser.java
  6. 16 16
      config/src/main/java/org/springframework/security/config/HttpSecurityBeanDefinitionParser.java
  7. 1 1
      config/src/main/java/org/springframework/security/config/LdapUserServiceBeanDefinitionParser.java
  8. 2 2
      config/src/main/java/org/springframework/security/config/LogoutBeanDefinitionParser.java
  9. 1 1
      config/src/main/java/org/springframework/security/config/SessionRegistryInjectionBeanPostProcessor.java
  10. 2 2
      config/src/test/java/org/springframework/security/config/FilterInvocationSecurityMetadataSourceBeanDefinitionParserTests.java
  11. 12 12
      config/src/test/java/org/springframework/security/config/HttpSecurityBeanDefinitionParserTests.java
  12. 1 1
      config/src/test/java/org/springframework/security/config/LdapUserServiceBeanDefinitionParserTests.java
  13. 0 1
      core/src/main/java/org/springframework/security/core/token/KeyBasedPersistenceTokenService.java
  14. 1 1
      core/src/main/java/org/springframework/security/core/token/Sha512DigestUtils.java
  15. 4 4
      itest/context/src/test/resources/filter-chain-performance-app-context.xml
  16. 1 2
      ldap/src/main/java/org/springframework/security/ldap/authentication/AbstractLdapAuthenticator.java
  17. 2 3
      ldap/src/main/java/org/springframework/security/ldap/authentication/LdapAuthenticationProvider.java
  18. 3 3
      ldap/src/main/java/org/springframework/security/ldap/authentication/LdapAuthenticator.java
  19. 1 1
      ldap/src/main/java/org/springframework/security/ldap/authentication/PasswordComparisonAuthenticator.java
  20. 1 1
      ldap/src/main/java/org/springframework/security/ldap/authentication/SpringSecurityAuthenticationSource.java
  21. 2 2
      ldap/src/main/java/org/springframework/security/ldap/authentication/UserDetailsServiceLdapAuthoritiesPopulator.java
  22. 0 5
      ldap/src/main/java/org/springframework/security/ldap/populator/package.html
  23. 0 1
      ldap/src/main/java/org/springframework/security/ldap/search/FilterBasedLdapUserSearch.java
  24. 1 1
      ldap/src/main/java/org/springframework/security/ldap/search/LdapUserSearch.java
  25. 1 2
      ldap/src/main/java/org/springframework/security/ldap/userdetails/DefaultLdapAuthoritiesPopulator.java
  26. 1 1
      ldap/src/main/java/org/springframework/security/ldap/userdetails/LdapAuthoritiesPopulator.java
  27. 1 2
      ldap/src/main/java/org/springframework/security/ldap/userdetails/LdapUserDetailsService.java
  28. 1 0
      ldap/src/test/java/org/springframework/security/ldap/SpringSecurityAuthenticationSourceTests.java
  29. 1 2
      ldap/src/test/java/org/springframework/security/ldap/authentication/LdapAuthenticationProviderTests.java
  30. 1 1
      ldap/src/test/java/org/springframework/security/ldap/authentication/MockUserSearch.java
  31. 1 1
      ldap/src/test/java/org/springframework/security/ldap/populator/DefaultLdapAuthoritiesPopulatorTests.java
  32. 1 0
      ldap/src/test/java/org/springframework/security/ldap/populator/UserDetailsServiceLdapAuthoritiesPopulatorTests.java
  33. 0 1
      ldap/src/test/java/org/springframework/security/ldap/userdetails/LdapUserDetailsServiceTests.java
  34. 1 1
      samples/ldap/src/main/webapp/WEB-INF/applicationContext-security.xml
  35. 4 4
      samples/preauth/src/main/webapp/WEB-INF/applicationContext-security.xml
  36. 1 0
      web/src/main/java/org/springframework/security/web/AuthenticationEntryPoint.java
  37. 1 1
      web/src/main/java/org/springframework/security/web/FilterChainProxy.java
  38. 1 1
      web/src/main/java/org/springframework/security/web/access/AccessDeniedHandler.java
  39. 1 1
      web/src/main/java/org/springframework/security/web/access/AccessDeniedHandlerImpl.java
  40. 8 3
      web/src/main/java/org/springframework/security/web/access/ExceptionTranslationFilter.java
  41. 1 1
      web/src/main/java/org/springframework/security/web/access/WebInvocationPrivilegeEvaluator.java
  42. 1 1
      web/src/main/java/org/springframework/security/web/access/channel/AbstractRetryEntryPoint.java
  43. 1 1
      web/src/main/java/org/springframework/security/web/access/channel/ChannelDecisionManager.java
  44. 1 1
      web/src/main/java/org/springframework/security/web/access/channel/ChannelDecisionManagerImpl.java
  45. 1 1
      web/src/main/java/org/springframework/security/web/access/channel/ChannelEntryPoint.java
  46. 2 2
      web/src/main/java/org/springframework/security/web/access/channel/ChannelProcessingFilter.java
  47. 1 1
      web/src/main/java/org/springframework/security/web/access/channel/ChannelProcessor.java
  48. 1 1
      web/src/main/java/org/springframework/security/web/access/channel/InsecureChannelProcessor.java
  49. 1 1
      web/src/main/java/org/springframework/security/web/access/channel/RetryWithHttpEntryPoint.java
  50. 1 1
      web/src/main/java/org/springframework/security/web/access/channel/RetryWithHttpsEntryPoint.java
  51. 1 1
      web/src/main/java/org/springframework/security/web/access/channel/SecureChannelProcessor.java
  52. 0 0
      web/src/main/java/org/springframework/security/web/access/channel/package.html
  53. 1 1
      web/src/main/java/org/springframework/security/web/access/expression/DefaultWebSecurityExpressionHandler.java
  54. 3 3
      web/src/main/java/org/springframework/security/web/access/expression/ExpressionBasedFilterInvocationSecurityMetadataSource.java
  55. 1 1
      web/src/main/java/org/springframework/security/web/access/expression/WebExpressionConfigAttribute.java
  56. 1 1
      web/src/main/java/org/springframework/security/web/access/expression/WebExpressionVoter.java
  57. 1 1
      web/src/main/java/org/springframework/security/web/access/expression/WebSecurityExpressionHandler.java
  58. 1 1
      web/src/main/java/org/springframework/security/web/access/expression/WebSecurityExpressionRoot.java
  59. 1 1
      web/src/main/java/org/springframework/security/web/access/intercept/DefaultFilterInvocationSecurityMetadataSource.java
  60. 1 1
      web/src/main/java/org/springframework/security/web/access/intercept/FilterInvocationSecurityMetadataSource.java
  61. 1 1
      web/src/main/java/org/springframework/security/web/access/intercept/FilterSecurityInterceptor.java
  62. 1 1
      web/src/main/java/org/springframework/security/web/access/intercept/RequestKey.java
  63. 0 0
      web/src/main/java/org/springframework/security/web/access/intercept/package.html
  64. 2 3
      web/src/main/java/org/springframework/security/web/authentication/AbstractAuthenticationTargetUrlRequestHandler.java
  65. 1 1
      web/src/main/java/org/springframework/security/web/authentication/AbstractProcessingFilter.java
  66. 2 2
      web/src/main/java/org/springframework/security/web/authentication/AuthenticationProcessingFilter.java
  67. 1 1
      web/src/main/java/org/springframework/security/web/authentication/AuthenticationProcessingFilterEntryPoint.java
  68. 1 1
      web/src/main/java/org/springframework/security/web/authentication/SavedRequestAwareAuthenticationSuccessHandler.java
  69. 0 1
      web/src/main/java/org/springframework/security/web/authentication/SimpleUrlAuthenticationSuccessHandler.java
  70. 4 4
      web/src/main/java/org/springframework/security/web/authentication/concurrent/ConcurrentSessionFilter.java
  71. 1 1
      web/src/main/java/org/springframework/security/web/authentication/logout/LogoutFilter.java
  72. 1 1
      web/src/main/java/org/springframework/security/web/authentication/logout/LogoutHandler.java
  73. 1 1
      web/src/main/java/org/springframework/security/web/authentication/logout/LogoutSuccessHandler.java
  74. 1 1
      web/src/main/java/org/springframework/security/web/authentication/logout/SecurityContextLogoutHandler.java
  75. 2 2
      web/src/main/java/org/springframework/security/web/authentication/logout/SimpleUrlLogoutSuccessHandler.java
  76. 1 1
      web/src/main/java/org/springframework/security/web/authentication/preauth/PreAuthenticatedProcessingFilterEntryPoint.java
  77. 1 1
      web/src/main/java/org/springframework/security/web/authentication/rememberme/AbstractRememberMeServices.java
  78. 3 1
      web/src/main/java/org/springframework/security/web/authentication/ui/DefaultLoginPageGeneratingFilter.java
  79. 0 6
      web/src/main/java/org/springframework/security/web/concurrent/package.html
  80. 2 0
      web/src/main/java/org/springframework/security/web/context/package.html
  81. 1 1
      web/src/main/java/org/springframework/security/web/savedrequest/SavedRequest.java
  82. 3 2
      web/src/main/java/org/springframework/security/web/session/SessionFixationProtectionFilter.java
  83. 1 1
      web/src/main/java/org/springframework/security/web/session/SessionUtils.java
  84. 1 1
      web/src/main/java/org/springframework/security/web/util/RedirectUtils.java
  85. 348 348
      web/src/main/java/org/springframework/security/web/wrapper/SavedRequestAwareWrapper.java
  86. 3 3
      web/src/test/java/org/springframework/security/web/access/ExceptionTranslationFilterTests.java
  87. 4 2
      web/src/test/java/org/springframework/security/web/access/WebInvocationPrivilegeEvaluatorTests.java
  88. 3 3
      web/src/test/java/org/springframework/security/web/access/channel/ChannelDecisionManagerImplTests.java
  89. 4 4
      web/src/test/java/org/springframework/security/web/access/channel/ChannelProcessingFilterTests.java
  90. 2 2
      web/src/test/java/org/springframework/security/web/access/channel/InsecureChannelProcessorTests.java
  91. 2 2
      web/src/test/java/org/springframework/security/web/access/channel/RetryWithHttpEntryPointTests.java
  92. 2 2
      web/src/test/java/org/springframework/security/web/access/channel/RetryWithHttpsEntryPointTests.java
  93. 2 2
      web/src/test/java/org/springframework/security/web/access/channel/SecureChannelProcessorTests.java
  94. 2 1
      web/src/test/java/org/springframework/security/web/access/expression/WebSecurityExpressionRootTests.java
  95. 3 3
      web/src/test/java/org/springframework/security/web/access/intercept/DefaultFilterInvocationSecurityMetadataSourceTests.java
  96. 1 1
      web/src/test/java/org/springframework/security/web/access/intercept/FilterInvocationTests.java
  97. 3 1
      web/src/test/java/org/springframework/security/web/access/intercept/FilterSecurityInterceptorTests.java
  98. 2 2
      web/src/test/java/org/springframework/security/web/access/intercept/RequestKeyTests.java
  99. 2 2
      web/src/test/java/org/springframework/security/web/authentication/ConcurrentSessionFilterTests.java
  100. 1 0
      web/src/test/java/org/springframework/security/web/authentication/DefaultLoginPageGeneratingFilterTests.java

+ 1 - 1
config/src/main/java/org/springframework/security/config/ConcurrentSessionsBeanDefinitionParser.java

@@ -12,7 +12,7 @@ import org.springframework.beans.factory.xml.ParserContext;
 import org.springframework.security.authentication.ProviderManager;
 import org.springframework.security.authentication.concurrent.ConcurrentSessionControllerImpl;
 import org.springframework.security.authentication.concurrent.SessionRegistryImpl;
-import org.springframework.security.web.concurrent.ConcurrentSessionFilter;
+import org.springframework.security.web.authentication.concurrent.ConcurrentSessionFilter;
 import org.springframework.util.StringUtils;
 import org.w3c.dom.Element;
 

+ 1 - 1
config/src/main/java/org/springframework/security/config/EntryPointInjectionBeanPostProcessor.java

@@ -10,7 +10,7 @@ import org.springframework.beans.factory.BeanFactoryAware;
 import org.springframework.beans.factory.config.BeanPostProcessor;
 import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
 import org.springframework.security.web.AuthenticationEntryPoint;
-import org.springframework.security.web.ExceptionTranslationFilter;
+import org.springframework.security.web.access.ExceptionTranslationFilter;
 import org.springframework.util.Assert;
 
 /**

+ 5 - 5
config/src/main/java/org/springframework/security/config/FilterChainProxyPostProcessor.java

@@ -19,17 +19,17 @@ import org.springframework.core.Ordered;
 import org.springframework.security.access.ConfigAttribute;
 import org.springframework.security.authentication.AnonymousAuthenticationToken;
 import org.springframework.security.config.ConfigUtils.FilterChainList;
-import org.springframework.security.web.ExceptionTranslationFilter;
 import org.springframework.security.web.FilterChainProxy;
-import org.springframework.security.web.SessionFixationProtectionFilter;
+import org.springframework.security.web.access.ExceptionTranslationFilter;
+import org.springframework.security.web.access.intercept.DefaultFilterInvocationSecurityMetadataSource;
+import org.springframework.security.web.access.intercept.FilterSecurityInterceptor;
 import org.springframework.security.web.authentication.AnonymousProcessingFilter;
 import org.springframework.security.web.authentication.AuthenticationProcessingFilter;
 import org.springframework.security.web.authentication.AuthenticationProcessingFilterEntryPoint;
-import org.springframework.security.web.authentication.DefaultLoginPageGeneratingFilter;
+import org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter;
 import org.springframework.security.web.authentication.www.BasicProcessingFilter;
 import org.springframework.security.web.context.SecurityContextPersistenceFilter;
-import org.springframework.security.web.intercept.DefaultFilterInvocationSecurityMetadataSource;
-import org.springframework.security.web.intercept.FilterSecurityInterceptor;
+import org.springframework.security.web.session.SessionFixationProtectionFilter;
 import org.springframework.security.web.wrapper.SecurityContextHolderAwareRequestFilter;
 
 /**

+ 3 - 3
config/src/main/java/org/springframework/security/config/FilterInvocationSecurityMetadataSourceBeanDefinitionParser.java

@@ -7,8 +7,8 @@ import org.springframework.beans.factory.support.BeanDefinitionBuilder;
 import org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser;
 import org.springframework.beans.factory.xml.ParserContext;
 import org.springframework.security.access.ConfigAttribute;
-import org.springframework.security.web.intercept.FilterInvocationSecurityMetadataSource;
-import org.springframework.security.web.intercept.RequestKey;
+import org.springframework.security.web.access.intercept.FilterInvocationSecurityMetadataSource;
+import org.springframework.security.web.access.intercept.RequestKey;
 import org.springframework.security.web.util.AntUrlPathMatcher;
 import org.springframework.security.web.util.UrlMatcher;
 import org.springframework.util.StringUtils;
@@ -24,7 +24,7 @@ import org.w3c.dom.Element;
 public class FilterInvocationSecurityMetadataSourceBeanDefinitionParser extends AbstractSingleBeanDefinitionParser {
 
     protected String getBeanClassName(Element element) {
-        return "org.springframework.security.web.intercept.DefaultFilterInvocationSecurityMetadataSource";
+        return "org.springframework.security.web.access.intercept.DefaultFilterInvocationSecurityMetadataSource";
     }
 
     protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) {

+ 1 - 1
config/src/main/java/org/springframework/security/config/FormLoginBeanDefinitionParser.java

@@ -8,9 +8,9 @@ import org.springframework.beans.factory.support.RootBeanDefinition;
 import org.springframework.beans.factory.xml.BeanDefinitionParser;
 import org.springframework.beans.factory.xml.ParserContext;
 import org.springframework.security.web.authentication.AuthenticationProcessingFilterEntryPoint;
-import org.springframework.security.web.authentication.DefaultLoginPageGeneratingFilter;
 import org.springframework.security.web.authentication.SavedRequestAwareAuthenticationSuccessHandler;
 import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler;
+import org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter;
 import org.springframework.util.StringUtils;
 
 import org.w3c.dom.Element;

+ 16 - 16
config/src/main/java/org/springframework/security/config/HttpSecurityBeanDefinitionParser.java

@@ -23,23 +23,23 @@ import org.springframework.security.access.SecurityConfig;
 import org.springframework.security.access.vote.AccessDecisionVoter;
 import org.springframework.security.access.vote.AuthenticatedVoter;
 import org.springframework.security.access.vote.RoleVoter;
-import org.springframework.security.web.AccessDeniedHandlerImpl;
-import org.springframework.security.web.ExceptionTranslationFilter;
 import org.springframework.security.web.FilterChainProxy;
-import org.springframework.security.web.SessionFixationProtectionFilter;
-import org.springframework.security.web.authentication.DefaultLoginPageGeneratingFilter;
+import org.springframework.security.web.access.AccessDeniedHandlerImpl;
+import org.springframework.security.web.access.ExceptionTranslationFilter;
+import org.springframework.security.web.access.channel.ChannelDecisionManagerImpl;
+import org.springframework.security.web.access.channel.ChannelProcessingFilter;
+import org.springframework.security.web.access.channel.InsecureChannelProcessor;
+import org.springframework.security.web.access.channel.RetryWithHttpEntryPoint;
+import org.springframework.security.web.access.channel.RetryWithHttpsEntryPoint;
+import org.springframework.security.web.access.channel.SecureChannelProcessor;
+import org.springframework.security.web.access.expression.WebExpressionVoter;
+import org.springframework.security.web.access.intercept.DefaultFilterInvocationSecurityMetadataSource;
+import org.springframework.security.web.access.intercept.FilterSecurityInterceptor;
+import org.springframework.security.web.access.intercept.RequestKey;
+import org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter;
 import org.springframework.security.web.context.HttpSessionSecurityContextRepository;
 import org.springframework.security.web.context.SecurityContextPersistenceFilter;
-import org.springframework.security.web.expression.WebExpressionVoter;
-import org.springframework.security.web.intercept.DefaultFilterInvocationSecurityMetadataSource;
-import org.springframework.security.web.intercept.FilterSecurityInterceptor;
-import org.springframework.security.web.intercept.RequestKey;
-import org.springframework.security.web.securechannel.ChannelDecisionManagerImpl;
-import org.springframework.security.web.securechannel.ChannelProcessingFilter;
-import org.springframework.security.web.securechannel.InsecureChannelProcessor;
-import org.springframework.security.web.securechannel.RetryWithHttpEntryPoint;
-import org.springframework.security.web.securechannel.RetryWithHttpsEntryPoint;
-import org.springframework.security.web.securechannel.SecureChannelProcessor;
+import org.springframework.security.web.session.SessionFixationProtectionFilter;
 import org.springframework.security.web.util.AntUrlPathMatcher;
 import org.springframework.security.web.util.RegexUrlPathMatcher;
 import org.springframework.security.web.util.UrlMatcher;
@@ -112,8 +112,8 @@ public class HttpSecurityBeanDefinitionParser implements BeanDefinitionParser {
     static final String OPEN_ID_AUTHENTICATION_PROVIDER_CLASS = "org.springframework.security.openid.OpenIDAuthenticationProvider";
     static final String AUTHENTICATION_PROCESSING_FILTER_CLASS = "org.springframework.security.web.authentication.AuthenticationProcessingFilter";
 
-    static final String EXPRESSION_FIMDS_CLASS = "org.springframework.security.web.expression.ExpressionBasedFilterInvocationSecurityMetadataSource";
-    static final String EXPRESSION_HANDLER_CLASS = "org.springframework.security.web.expression.DefaultWebSecurityExpressionHandler";
+    static final String EXPRESSION_FIMDS_CLASS = "org.springframework.security.web.access.expression.ExpressionBasedFilterInvocationSecurityMetadataSource";
+    static final String EXPRESSION_HANDLER_CLASS = "org.springframework.security.web.access.expression.DefaultWebSecurityExpressionHandler";
     private static final String EXPRESSION_HANDLER_ID = "_webExpressionHandler";
 
     @SuppressWarnings("unchecked")

+ 1 - 1
config/src/main/java/org/springframework/security/config/LdapUserServiceBeanDefinitionParser.java

@@ -36,7 +36,7 @@ public class LdapUserServiceBeanDefinitionParser extends AbstractUserDetailsServ
     public static final String PERSON_MAPPER_CLASS = "org.springframework.security.ldap.userdetails.PersonContextMapper";
     public static final String INET_ORG_PERSON_MAPPER_CLASS = "org.springframework.security.ldap.userdetails.InetOrgPersonContextMapper";
     public static final String LDAP_USER_MAPPER_CLASS = "org.springframework.security.ldap.userdetails.LdapUserDetailsMapper";
-    public static final String LDAP_AUTHORITIES_POPULATOR_CLASS = "org.springframework.security.ldap.populator.DefaultLdapAuthoritiesPopulator";
+    public static final String LDAP_AUTHORITIES_POPULATOR_CLASS = "org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator";
 
     protected String getBeanClassName(Element element) {
         return "org.springframework.security.ldap.userdetails.LdapUserDetailsService";

+ 2 - 2
config/src/main/java/org/springframework/security/config/LogoutBeanDefinitionParser.java

@@ -6,8 +6,8 @@ import org.springframework.beans.factory.support.BeanDefinitionBuilder;
 import org.springframework.beans.factory.support.ManagedList;
 import org.springframework.beans.factory.xml.BeanDefinitionParser;
 import org.springframework.beans.factory.xml.ParserContext;
-import org.springframework.security.web.logout.LogoutFilter;
-import org.springframework.security.web.logout.SecurityContextLogoutHandler;
+import org.springframework.security.web.authentication.logout.LogoutFilter;
+import org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler;
 import org.springframework.util.StringUtils;
 import org.w3c.dom.Element;
 

+ 1 - 1
config/src/main/java/org/springframework/security/config/SessionRegistryInjectionBeanPostProcessor.java

@@ -11,8 +11,8 @@ import org.springframework.beans.factory.config.BeanPostProcessor;
 import org.springframework.security.authentication.concurrent.ConcurrentSessionController;
 import org.springframework.security.authentication.concurrent.ConcurrentSessionControllerImpl;
 import org.springframework.security.authentication.concurrent.SessionRegistry;
-import org.springframework.security.web.SessionFixationProtectionFilter;
 import org.springframework.security.web.authentication.AbstractProcessingFilter;
+import org.springframework.security.web.session.SessionFixationProtectionFilter;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;

+ 2 - 2
config/src/test/java/org/springframework/security/config/FilterInvocationSecurityMetadataSourceBeanDefinitionParserTests.java

@@ -15,7 +15,7 @@ import org.springframework.security.access.ConfigAttribute;
 import org.springframework.security.access.SecurityConfig;
 import org.springframework.security.config.util.InMemoryXmlApplicationContext;
 import org.springframework.security.web.FilterInvocation;
-import org.springframework.security.web.intercept.DefaultFilterInvocationSecurityMetadataSource;
+import org.springframework.security.web.access.intercept.DefaultFilterInvocationSecurityMetadataSource;
 import org.w3c.dom.Element;
 
 /**
@@ -59,7 +59,7 @@ public class FilterInvocationSecurityMetadataSourceBeanDefinitionParserTests {
     public void parsingWithinFilterSecurityInterceptorIsSuccessful() {
         setContext(
                 "<http auto-config='true'/>" +
-                "<b:bean id='fsi' class='org.springframework.security.web.intercept.FilterSecurityInterceptor' autowire='byType'>" +
+                "<b:bean id='fsi' class='org.springframework.security.web.access.intercept.FilterSecurityInterceptor' autowire='byType'>" +
                 "   <b:property name='securityMetadataSource'>" +
                 "       <filter-invocation-definition-source>" +
                 "           <intercept-url pattern='/secure/extreme/**' access='ROLE_SUPERVISOR'/>" +

+ 12 - 12
config/src/test/java/org/springframework/security/config/HttpSecurityBeanDefinitionParserTests.java

@@ -33,35 +33,35 @@ import org.springframework.security.core.context.SecurityContextHolder;
 import org.springframework.security.openid.OpenIDAuthenticationProcessingFilter;
 import org.springframework.security.openid.OpenIDAuthenticationProvider;
 import org.springframework.security.util.FieldUtils;
-import org.springframework.security.web.AccessDeniedHandlerImpl;
-import org.springframework.security.web.ExceptionTranslationFilter;
 import org.springframework.security.web.FilterChainProxy;
 import org.springframework.security.web.FilterInvocation;
 import org.springframework.security.web.PortMapperImpl;
-import org.springframework.security.web.SessionFixationProtectionFilter;
+import org.springframework.security.web.access.AccessDeniedHandlerImpl;
+import org.springframework.security.web.access.ExceptionTranslationFilter;
+import org.springframework.security.web.access.channel.ChannelProcessingFilter;
+import org.springframework.security.web.access.expression.DefaultWebSecurityExpressionHandler;
+import org.springframework.security.web.access.expression.ExpressionBasedFilterInvocationSecurityMetadataSource;
+import org.springframework.security.web.access.intercept.FilterInvocationSecurityMetadataSource;
+import org.springframework.security.web.access.intercept.FilterSecurityInterceptor;
 import org.springframework.security.web.authentication.AnonymousProcessingFilter;
 import org.springframework.security.web.authentication.AuthenticationFailureHandler;
 import org.springframework.security.web.authentication.AuthenticationProcessingFilter;
 import org.springframework.security.web.authentication.AuthenticationSuccessHandler;
-import org.springframework.security.web.authentication.DefaultLoginPageGeneratingFilter;
 import org.springframework.security.web.authentication.SavedRequestAwareAuthenticationSuccessHandler;
 import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler;
 import org.springframework.security.web.authentication.WebAuthenticationDetails;
+import org.springframework.security.web.authentication.concurrent.ConcurrentSessionFilter;
+import org.springframework.security.web.authentication.logout.LogoutFilter;
+import org.springframework.security.web.authentication.logout.LogoutHandler;
 import org.springframework.security.web.authentication.preauth.x509.X509PreAuthenticatedProcessingFilter;
 import org.springframework.security.web.authentication.rememberme.InMemoryTokenRepositoryImpl;
 import org.springframework.security.web.authentication.rememberme.PersistentTokenBasedRememberMeServices;
 import org.springframework.security.web.authentication.rememberme.TokenBasedRememberMeServices;
+import org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter;
 import org.springframework.security.web.authentication.www.BasicProcessingFilter;
-import org.springframework.security.web.concurrent.ConcurrentSessionFilter;
 import org.springframework.security.web.context.HttpSessionSecurityContextRepository;
 import org.springframework.security.web.context.SecurityContextPersistenceFilter;
-import org.springframework.security.web.expression.DefaultWebSecurityExpressionHandler;
-import org.springframework.security.web.expression.ExpressionBasedFilterInvocationSecurityMetadataSource;
-import org.springframework.security.web.intercept.FilterInvocationSecurityMetadataSource;
-import org.springframework.security.web.intercept.FilterSecurityInterceptor;
-import org.springframework.security.web.logout.LogoutFilter;
-import org.springframework.security.web.logout.LogoutHandler;
-import org.springframework.security.web.securechannel.ChannelProcessingFilter;
+import org.springframework.security.web.session.SessionFixationProtectionFilter;
 import org.springframework.security.web.wrapper.SecurityContextHolderAwareRequestFilter;
 import org.springframework.util.ReflectionUtils;
 

+ 1 - 1
config/src/test/java/org/springframework/security/config/LdapUserServiceBeanDefinitionParserTests.java

@@ -13,8 +13,8 @@ import org.springframework.security.core.authority.AuthorityUtils;
 import org.springframework.security.core.authority.GrantedAuthorityImpl;
 import org.springframework.security.core.userdetails.UserDetails;
 import org.springframework.security.core.userdetails.UserDetailsService;
-import org.springframework.security.ldap.populator.DefaultLdapAuthoritiesPopulator;
 import org.springframework.security.ldap.search.FilterBasedLdapUserSearch;
+import org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator;
 import org.springframework.security.ldap.userdetails.InetOrgPerson;
 import org.springframework.security.ldap.userdetails.InetOrgPersonContextMapper;
 import org.springframework.security.ldap.userdetails.LdapUserDetailsMapper;

+ 0 - 1
core/src/main/java/org/springframework/security/core/token/KeyBasedPersistenceTokenService.java

@@ -7,7 +7,6 @@ import java.util.Date;
 import org.apache.commons.codec.binary.Base64;
 import org.apache.commons.codec.binary.Hex;
 import org.springframework.beans.factory.InitializingBean;
-import org.springframework.security.util.Sha512DigestUtils;
 import org.springframework.util.Assert;
 import org.springframework.util.StringUtils;
 

+ 1 - 1
core/src/main/java/org/springframework/security/util/Sha512DigestUtils.java → core/src/main/java/org/springframework/security/core/token/Sha512DigestUtils.java

@@ -1,4 +1,4 @@
-package org.springframework.security.util;
+package org.springframework.security.core.token;
 
 import java.security.MessageDigest;
 import java.security.NoSuchAlgorithmException;

+ 4 - 4
itest/context/src/test/resources/filter-chain-performance-app-context.xml

@@ -57,16 +57,16 @@
     <bean id="preAuthenticatedProcessingFilterEntryPoint"
             class="org.springframework.security.web.authentication.preauth.PreAuthenticatedProcessingFilterEntryPoint"/>
 
-    <bean id="logoutFilter" class="org.springframework.security.web.logout.LogoutFilter">
+    <bean id="logoutFilter" class="org.springframework.security.web.authentication.logout.LogoutFilter">
         <constructor-arg value="/"/>
         <constructor-arg>
             <list>
-                <bean class="org.springframework.security.web.logout.SecurityContextLogoutHandler"/>
+                <bean class="org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler"/>
             </list>
         </constructor-arg>
     </bean>
 
-    <bean id="etf" class="org.springframework.security.web.ExceptionTranslationFilter">
+    <bean id="etf" class="org.springframework.security.web.access.ExceptionTranslationFilter">
         <property name="authenticationEntryPoint" ref="preAuthenticatedProcessingFilterEntryPoint"/>
     </bean>
 
@@ -88,7 +88,7 @@
         </property>
     </bean>
 
-    <bean id="fsi" class="org.springframework.security.web.intercept.FilterSecurityInterceptor">
+    <bean id="fsi" class="org.springframework.security.web.access.intercept.FilterSecurityInterceptor">
         <property name="authenticationManager" ref="authenticationManager"/>
         <property name="accessDecisionManager" ref="accessDecisionManager"/>
         <property name="securityMetadataSource">

+ 1 - 2
ldap/src/main/java/org/springframework/security/ldap/authentication/AbstractLdapAuthenticator.java

@@ -16,8 +16,7 @@
 package org.springframework.security.ldap.authentication;
 
 import org.springframework.security.core.SpringSecurityMessageSource;
-import org.springframework.security.ldap.LdapAuthenticator;
-import org.springframework.security.ldap.LdapUserSearch;
+import org.springframework.security.ldap.search.LdapUserSearch;
 import org.springframework.beans.factory.InitializingBean;
 import org.springframework.context.MessageSource;
 import org.springframework.context.MessageSourceAware;

+ 2 - 3
ldap/src/main/java/org/springframework/security/ldap/authentication/LdapAuthenticationProvider.java

@@ -28,9 +28,8 @@ import org.springframework.security.core.SpringSecurityMessageSource;
 import org.springframework.security.core.authority.AuthorityUtils;
 import org.springframework.security.core.userdetails.UserDetails;
 import org.springframework.security.core.userdetails.UsernameNotFoundException;
-import org.springframework.security.ldap.LdapAuthenticator;
-import org.springframework.security.ldap.LdapAuthoritiesPopulator;
-import org.springframework.security.ldap.populator.DefaultLdapAuthoritiesPopulator;
+import org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator;
+import org.springframework.security.ldap.userdetails.LdapAuthoritiesPopulator;
 import org.springframework.security.ldap.userdetails.LdapUserDetailsMapper;
 import org.springframework.security.ldap.userdetails.UserDetailsContextMapper;
 import org.springframework.context.MessageSource;

+ 3 - 3
ldap/src/main/java/org/springframework/security/ldap/LdapAuthenticator.java → ldap/src/main/java/org/springframework/security/ldap/authentication/LdapAuthenticator.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.ldap;
+package org.springframework.security.ldap.authentication;
 
 import org.springframework.security.core.Authentication;
 import org.springframework.ldap.core.DirContextOperations;
@@ -28,8 +28,8 @@ import org.springframework.ldap.core.DirContextOperations;
  * @author Luke Taylor
  * @version $Id$
  *
- * @see org.springframework.security.ldap.populator.DefaultLdapAuthoritiesPopulator
- * @see org.springframework.security.ldap.populator.UserDetailsServiceLdapAuthoritiesPopulator
+ * @see org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator
+ * @see org.springframework.security.ldap.authentication.UserDetailsServiceLdapAuthoritiesPopulator
  */
 public interface LdapAuthenticator {
     //~ Methods ========================================================================================================

+ 1 - 1
ldap/src/main/java/org/springframework/security/ldap/authentication/PasswordComparisonAuthenticator.java

@@ -32,7 +32,7 @@ import org.springframework.util.Assert;
 
 
 /**
- * An {@link org.springframework.security.ldap.LdapAuthenticator LdapAuthenticator} which compares the login
+ * An {@link org.springframework.security.ldap.authentication.LdapAuthenticator LdapAuthenticator} which compares the login
  * password with the value stored in the directory using a remote LDAP "compare" operation.
  *
  * <p>

+ 1 - 1
ldap/src/main/java/org/springframework/security/ldap/SpringSecurityAuthenticationSource.java → ldap/src/main/java/org/springframework/security/ldap/authentication/SpringSecurityAuthenticationSource.java

@@ -1,4 +1,4 @@
-package org.springframework.security.ldap;
+package org.springframework.security.ldap.authentication;
 
 import org.springframework.security.authentication.AnonymousAuthenticationToken;
 import org.springframework.security.core.Authentication;

+ 2 - 2
ldap/src/main/java/org/springframework/security/ldap/populator/UserDetailsServiceLdapAuthoritiesPopulator.java → ldap/src/main/java/org/springframework/security/ldap/authentication/UserDetailsServiceLdapAuthoritiesPopulator.java

@@ -1,10 +1,10 @@
-package org.springframework.security.ldap.populator;
+package org.springframework.security.ldap.authentication;
 
 import java.util.List;
 
 import org.springframework.security.core.GrantedAuthority;
 import org.springframework.security.core.userdetails.UserDetailsService;
-import org.springframework.security.ldap.LdapAuthoritiesPopulator;
+import org.springframework.security.ldap.userdetails.LdapAuthoritiesPopulator;
 import org.springframework.ldap.core.DirContextOperations;
 import org.springframework.util.Assert;
 

+ 0 - 5
ldap/src/main/java/org/springframework/security/ldap/populator/package.html

@@ -1,5 +0,0 @@
-<html>
-<body>
-LdapAuthoritiesPopulator implementations.
-</body>
-</html>

+ 0 - 1
ldap/src/main/java/org/springframework/security/ldap/search/FilterBasedLdapUserSearch.java

@@ -17,7 +17,6 @@ package org.springframework.security.ldap.search;
 
 import org.springframework.security.core.userdetails.UsernameNotFoundException;
 import org.springframework.security.ldap.SpringSecurityLdapTemplate;
-import org.springframework.security.ldap.LdapUserSearch;
 
 
 import org.apache.commons.logging.Log;

+ 1 - 1
ldap/src/main/java/org/springframework/security/ldap/LdapUserSearch.java → ldap/src/main/java/org/springframework/security/ldap/search/LdapUserSearch.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.ldap;
+package org.springframework.security.ldap.search;
 
 import org.springframework.ldap.core.DirContextOperations;
 import org.springframework.security.core.userdetails.UsernameNotFoundException;

+ 1 - 2
ldap/src/main/java/org/springframework/security/ldap/populator/DefaultLdapAuthoritiesPopulator.java → ldap/src/main/java/org/springframework/security/ldap/userdetails/DefaultLdapAuthoritiesPopulator.java

@@ -13,12 +13,11 @@
  * limitations under the License.
  */
 
-package org.springframework.security.ldap.populator;
+package org.springframework.security.ldap.userdetails;
 
 import org.springframework.security.core.GrantedAuthority;
 import org.springframework.security.core.authority.GrantedAuthorityImpl;
 import org.springframework.security.ldap.SpringSecurityLdapTemplate;
-import org.springframework.security.ldap.LdapAuthoritiesPopulator;
 import org.springframework.ldap.core.ContextSource;
 import org.springframework.ldap.core.DirContextOperations;
 import org.springframework.ldap.core.LdapTemplate;

+ 1 - 1
ldap/src/main/java/org/springframework/security/ldap/LdapAuthoritiesPopulator.java → ldap/src/main/java/org/springframework/security/ldap/userdetails/LdapAuthoritiesPopulator.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.ldap;
+package org.springframework.security.ldap.userdetails;
 
 import java.util.List;
 

+ 1 - 2
ldap/src/main/java/org/springframework/security/ldap/userdetails/LdapUserDetailsService.java

@@ -4,8 +4,7 @@ import org.springframework.ldap.core.DirContextOperations;
 import org.springframework.security.core.userdetails.UserDetails;
 import org.springframework.security.core.userdetails.UserDetailsService;
 import org.springframework.security.core.userdetails.UsernameNotFoundException;
-import org.springframework.security.ldap.LdapAuthoritiesPopulator;
-import org.springframework.security.ldap.LdapUserSearch;
+import org.springframework.security.ldap.search.LdapUserSearch;
 import org.springframework.util.Assert;
 
 /**

+ 1 - 0
ldap/src/test/java/org/springframework/security/ldap/SpringSecurityAuthenticationSourceTests.java

@@ -4,6 +4,7 @@ import org.springframework.security.authentication.AnonymousAuthenticationToken;
 import org.springframework.security.authentication.TestingAuthenticationToken;
 import org.springframework.security.core.authority.AuthorityUtils;
 import org.springframework.security.core.context.SecurityContextHolder;
+import org.springframework.security.ldap.authentication.SpringSecurityAuthenticationSource;
 import org.springframework.security.ldap.userdetails.LdapUserDetailsImpl;
 import org.springframework.ldap.core.AuthenticationSource;
 import org.springframework.ldap.core.DistinguishedName;

+ 1 - 2
ldap/src/test/java/org/springframework/security/ldap/authentication/LdapAuthenticationProviderTests.java

@@ -34,8 +34,7 @@ import org.springframework.security.core.GrantedAuthority;
 import org.springframework.security.core.authority.AuthorityUtils;
 import org.springframework.security.core.userdetails.UserDetails;
 import org.springframework.security.core.userdetails.UsernameNotFoundException;
-import org.springframework.security.ldap.LdapAuthenticator;
-import org.springframework.security.ldap.LdapAuthoritiesPopulator;
+import org.springframework.security.ldap.userdetails.LdapAuthoritiesPopulator;
 import org.springframework.security.ldap.userdetails.LdapUserDetailsMapper;
 
 

+ 1 - 1
ldap/src/test/java/org/springframework/security/ldap/authentication/MockUserSearch.java

@@ -15,7 +15,7 @@
 
 package org.springframework.security.ldap.authentication;
 
-import org.springframework.security.ldap.LdapUserSearch;
+import org.springframework.security.ldap.search.LdapUserSearch;
 
 import org.springframework.ldap.core.DirContextOperations;
 

+ 1 - 1
ldap/src/test/java/org/springframework/security/ldap/populator/DefaultLdapAuthoritiesPopulatorTests.java

@@ -18,7 +18,7 @@ package org.springframework.security.ldap.populator;
 
 import org.springframework.security.core.GrantedAuthority;
 import org.springframework.security.ldap.AbstractLdapIntegrationTests;
-import org.springframework.security.ldap.populator.DefaultLdapAuthoritiesPopulator;
+import org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator;
 
 import org.springframework.ldap.core.DirContextAdapter;
 import org.springframework.ldap.core.DistinguishedName;

+ 1 - 0
ldap/src/test/java/org/springframework/security/ldap/populator/UserDetailsServiceLdapAuthoritiesPopulatorTests.java

@@ -11,6 +11,7 @@ import org.springframework.security.core.GrantedAuthority;
 import org.springframework.security.core.authority.AuthorityUtils;
 import org.springframework.security.core.userdetails.UserDetails;
 import org.springframework.security.core.userdetails.UserDetailsService;
+import org.springframework.security.ldap.authentication.UserDetailsServiceLdapAuthoritiesPopulator;
 
 /**
  * @author Luke Taylor

+ 0 - 1
ldap/src/test/java/org/springframework/security/ldap/userdetails/LdapUserDetailsServiceTests.java

@@ -13,7 +13,6 @@ import org.springframework.ldap.core.DistinguishedName;
 import org.springframework.security.core.GrantedAuthority;
 import org.springframework.security.core.authority.AuthorityUtils;
 import org.springframework.security.core.userdetails.UserDetails;
-import org.springframework.security.ldap.LdapAuthoritiesPopulator;
 import org.springframework.security.ldap.authentication.MockUserSearch;
 import org.springframework.security.ldap.userdetails.LdapUserDetailsMapper;
 import org.springframework.security.ldap.userdetails.LdapUserDetailsService;

+ 1 - 1
samples/ldap/src/main/webapp/WEB-INF/applicationContext-security.xml

@@ -48,7 +48,7 @@
             </bean>
         </constructor-arg>
         <constructor-arg>
-            <bean class="org.springframework.security.ldap.populator.DefaultLdapAuthoritiesPopulator">
+            <bean class="org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator">
                 <constructor-arg ref="contextSource" />
                 <constructor-arg value="ou=groups" />
                 <property name="groupSearchFilter" value="(member={0})"/>

+ 4 - 4
samples/preauth/src/main/webapp/WEB-INF/applicationContext-security.xml

@@ -38,11 +38,11 @@
     <bean id="preAuthenticatedProcessingFilterEntryPoint"
             class="org.springframework.security.web.authentication.preauth.PreAuthenticatedProcessingFilterEntryPoint"/>
 
-    <bean id="logoutFilter" class="org.springframework.security.web.logout.LogoutFilter">
+    <bean id="logoutFilter" class="org.springframework.security.web.authentication.logout.LogoutFilter">
         <constructor-arg value="/"/>
         <constructor-arg>
             <list>
-                <bean class="org.springframework.security.web.logout.SecurityContextLogoutHandler"/>
+                <bean class="org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler"/>
             </list>
         </constructor-arg>
     </bean>
@@ -69,7 +69,7 @@
 
     <bean id="servletContext" class="org.springframework.web.context.support.ServletContextFactoryBean"/>
 
-    <bean id="etf" class="org.springframework.security.web.ExceptionTranslationFilter">
+    <bean id="etf" class="org.springframework.security.web.access.ExceptionTranslationFilter">
         <property name="authenticationEntryPoint" ref="preAuthenticatedProcessingFilterEntryPoint"/>
     </bean>
 
@@ -82,7 +82,7 @@
         </property>
     </bean>
 
-    <bean id="fsi" class="org.springframework.security.web.intercept.FilterSecurityInterceptor">
+    <bean id="fsi" class="org.springframework.security.web.access.intercept.FilterSecurityInterceptor">
         <property name="authenticationManager" ref="authenticationManager"/>
         <property name="accessDecisionManager" ref="httpRequestAccessDecisionManager"/>
         <property name="securityMetadataSource">

+ 1 - 0
web/src/main/java/org/springframework/security/web/AuthenticationEntryPoint.java

@@ -16,6 +16,7 @@
 package org.springframework.security.web;
 
 import org.springframework.security.core.AuthenticationException;
+import org.springframework.security.web.access.ExceptionTranslationFilter;
 
 import java.io.IOException;
 

+ 1 - 1
web/src/main/java/org/springframework/security/web/FilterChainProxy.java

@@ -34,7 +34,7 @@ import javax.servlet.ServletResponse;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.springframework.beans.factory.InitializingBean;
-import org.springframework.security.web.intercept.FilterInvocationSecurityMetadataSource;
+import org.springframework.security.web.access.intercept.FilterInvocationSecurityMetadataSource;
 import org.springframework.security.web.util.AntUrlPathMatcher;
 import org.springframework.security.web.util.UrlMatcher;
 import org.springframework.util.Assert;

+ 1 - 1
web/src/main/java/org/springframework/security/web/AccessDeniedHandler.java → web/src/main/java/org/springframework/security/web/access/AccessDeniedHandler.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web;
+package org.springframework.security.web.access;
 
 import org.springframework.security.access.AccessDeniedException;
 

+ 1 - 1
web/src/main/java/org/springframework/security/web/AccessDeniedHandlerImpl.java → web/src/main/java/org/springframework/security/web/access/AccessDeniedHandlerImpl.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web;
+package org.springframework.security.web.access;
 
 import java.io.IOException;
 

+ 8 - 3
web/src/main/java/org/springframework/security/web/ExceptionTranslationFilter.java → web/src/main/java/org/springframework/security/web/access/ExceptionTranslationFilter.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web;
+package org.springframework.security.web.access;
 
 import java.io.IOException;
 
@@ -29,6 +29,11 @@ import org.springframework.security.authentication.AuthenticationTrustResolverIm
 import org.springframework.security.authentication.InsufficientAuthenticationException;
 import org.springframework.security.core.AuthenticationException;
 import org.springframework.security.core.context.SecurityContextHolder;
+import org.springframework.security.web.AuthenticationEntryPoint;
+import org.springframework.security.web.FilterChainOrder;
+import org.springframework.security.web.PortResolver;
+import org.springframework.security.web.PortResolverImpl;
+import org.springframework.security.web.SpringSecurityFilter;
 import org.springframework.security.web.savedrequest.SavedRequest;
 import org.springframework.security.web.util.ThrowableAnalyzer;
 import org.springframework.security.web.util.ThrowableCauseExtractor;
@@ -47,8 +52,8 @@ import org.springframework.util.Assert;
  * <p>
  * If an {@link AccessDeniedException} is detected, the filter will determine whether or not the user is an anonymous
  * user. If they are an anonymous user, the <code>authenticationEntryPoint</code> will be launched. If they are not
- * an anonymous user, the filter will delegate to the {@link org.springframework.security.web.AccessDeniedHandler}.
- * By default the filter will use {@link org.springframework.security.web.AccessDeniedHandlerImpl}.
+ * an anonymous user, the filter will delegate to the {@link org.springframework.security.web.access.AccessDeniedHandler}.
+ * By default the filter will use {@link org.springframework.security.web.access.AccessDeniedHandlerImpl}.
  * <p>
  * To use this filter, it is necessary to specify the following properties:
  * <ul>

+ 1 - 1
web/src/main/java/org/springframework/security/web/intercept/WebInvocationPrivilegeEvaluator.java → web/src/main/java/org/springframework/security/web/access/WebInvocationPrivilegeEvaluator.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.intercept;
+package org.springframework.security.web.access;
 
 import java.io.IOException;
 import java.util.List;

+ 1 - 1
web/src/main/java/org/springframework/security/web/securechannel/AbstractRetryEntryPoint.java → web/src/main/java/org/springframework/security/web/access/channel/AbstractRetryEntryPoint.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 import org.springframework.security.web.PortMapper;
 import org.springframework.security.web.PortMapperImpl;

+ 1 - 1
web/src/main/java/org/springframework/security/web/securechannel/ChannelDecisionManager.java → web/src/main/java/org/springframework/security/web/access/channel/ChannelDecisionManager.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 import org.springframework.security.access.ConfigAttribute;
 import org.springframework.security.web.FilterInvocation;

+ 1 - 1
web/src/main/java/org/springframework/security/web/securechannel/ChannelDecisionManagerImpl.java → web/src/main/java/org/springframework/security/web/access/channel/ChannelDecisionManagerImpl.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 
 import org.springframework.security.access.ConfigAttribute;

+ 1 - 1
web/src/main/java/org/springframework/security/web/securechannel/ChannelEntryPoint.java → web/src/main/java/org/springframework/security/web/access/channel/ChannelEntryPoint.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 import java.io.IOException;
 

+ 2 - 2
web/src/main/java/org/springframework/security/web/securechannel/ChannelProcessingFilter.java → web/src/main/java/org/springframework/security/web/access/channel/ChannelProcessingFilter.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 import java.io.IOException;
 import java.util.Collection;
@@ -31,7 +31,7 @@ import org.springframework.security.access.ConfigAttribute;
 import org.springframework.security.web.FilterChainOrder;
 import org.springframework.security.web.FilterInvocation;
 import org.springframework.security.web.SpringSecurityFilter;
-import org.springframework.security.web.intercept.FilterInvocationSecurityMetadataSource;
+import org.springframework.security.web.access.intercept.FilterInvocationSecurityMetadataSource;
 import org.springframework.util.Assert;
 
 

+ 1 - 1
web/src/main/java/org/springframework/security/web/securechannel/ChannelProcessor.java → web/src/main/java/org/springframework/security/web/access/channel/ChannelProcessor.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 import org.springframework.security.access.ConfigAttribute;
 import org.springframework.security.web.FilterInvocation;

+ 1 - 1
web/src/main/java/org/springframework/security/web/securechannel/InsecureChannelProcessor.java → web/src/main/java/org/springframework/security/web/access/channel/InsecureChannelProcessor.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 import java.io.IOException;
 import java.util.List;

+ 1 - 1
web/src/main/java/org/springframework/security/web/securechannel/RetryWithHttpEntryPoint.java → web/src/main/java/org/springframework/security/web/access/channel/RetryWithHttpEntryPoint.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 
 /**

+ 1 - 1
web/src/main/java/org/springframework/security/web/securechannel/RetryWithHttpsEntryPoint.java → web/src/main/java/org/springframework/security/web/access/channel/RetryWithHttpsEntryPoint.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 /**
  * Commences a secure channel by retrying the original request using HTTPS.

+ 1 - 1
web/src/main/java/org/springframework/security/web/securechannel/SecureChannelProcessor.java → web/src/main/java/org/springframework/security/web/access/channel/SecureChannelProcessor.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 import java.io.IOException;
 import java.util.List;

+ 0 - 0
web/src/main/java/org/springframework/security/web/securechannel/package.html → web/src/main/java/org/springframework/security/web/access/channel/package.html


+ 1 - 1
web/src/main/java/org/springframework/security/web/expression/DefaultWebSecurityExpressionHandler.java → web/src/main/java/org/springframework/security/web/access/expression/DefaultWebSecurityExpressionHandler.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web.expression;
+package org.springframework.security.web.access.expression;
 
 import org.springframework.expression.EvaluationContext;
 import org.springframework.expression.ExpressionParser;

+ 3 - 3
web/src/main/java/org/springframework/security/web/expression/ExpressionBasedFilterInvocationSecurityMetadataSource.java → web/src/main/java/org/springframework/security/web/access/expression/ExpressionBasedFilterInvocationSecurityMetadataSource.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web.expression;
+package org.springframework.security.web.access.expression;
 
 import java.util.ArrayList;
 import java.util.LinkedHashMap;
@@ -10,8 +10,8 @@ import org.apache.commons.logging.LogFactory;
 import org.springframework.expression.ExpressionParser;
 import org.springframework.expression.ParseException;
 import org.springframework.security.access.ConfigAttribute;
-import org.springframework.security.web.intercept.DefaultFilterInvocationSecurityMetadataSource;
-import org.springframework.security.web.intercept.RequestKey;
+import org.springframework.security.web.access.intercept.DefaultFilterInvocationSecurityMetadataSource;
+import org.springframework.security.web.access.intercept.RequestKey;
 import org.springframework.security.web.util.UrlMatcher;
 import org.springframework.util.Assert;
 

+ 1 - 1
web/src/main/java/org/springframework/security/web/expression/WebExpressionConfigAttribute.java → web/src/main/java/org/springframework/security/web/access/expression/WebExpressionConfigAttribute.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web.expression;
+package org.springframework.security.web.access.expression;
 
 import org.springframework.expression.Expression;
 import org.springframework.security.access.ConfigAttribute;

+ 1 - 1
web/src/main/java/org/springframework/security/web/expression/WebExpressionVoter.java → web/src/main/java/org/springframework/security/web/access/expression/WebExpressionVoter.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web.expression;
+package org.springframework.security.web.access.expression;
 
 import java.util.List;
 

+ 1 - 1
web/src/main/java/org/springframework/security/web/expression/WebSecurityExpressionHandler.java → web/src/main/java/org/springframework/security/web/access/expression/WebSecurityExpressionHandler.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web.expression;
+package org.springframework.security.web.access.expression;
 
 import org.springframework.expression.EvaluationContext;
 import org.springframework.expression.ExpressionParser;

+ 1 - 1
web/src/main/java/org/springframework/security/web/expression/WebSecurityExpressionRoot.java → web/src/main/java/org/springframework/security/web/access/expression/WebSecurityExpressionRoot.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web.expression;
+package org.springframework.security.web.access.expression;
 
 import java.net.InetAddress;
 import java.net.UnknownHostException;

+ 1 - 1
web/src/main/java/org/springframework/security/web/intercept/DefaultFilterInvocationSecurityMetadataSource.java → web/src/main/java/org/springframework/security/web/access/intercept/DefaultFilterInvocationSecurityMetadataSource.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.intercept;
+package org.springframework.security.web.access.intercept;
 
 import java.util.Arrays;
 import java.util.Collection;

+ 1 - 1
web/src/main/java/org/springframework/security/web/intercept/FilterInvocationSecurityMetadataSource.java → web/src/main/java/org/springframework/security/web/access/intercept/FilterInvocationSecurityMetadataSource.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.intercept;
+package org.springframework.security.web.access.intercept;
 
 import org.springframework.security.access.intercept.SecurityMetadataSource;
 import org.springframework.security.web.FilterInvocation;

+ 1 - 1
web/src/main/java/org/springframework/security/web/intercept/FilterSecurityInterceptor.java → web/src/main/java/org/springframework/security/web/access/intercept/FilterSecurityInterceptor.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.intercept;
+package org.springframework.security.web.access.intercept;
 
 import org.springframework.security.access.intercept.AbstractSecurityInterceptor;
 import org.springframework.security.access.intercept.InterceptorStatusToken;

+ 1 - 1
web/src/main/java/org/springframework/security/web/intercept/RequestKey.java → web/src/main/java/org/springframework/security/web/access/intercept/RequestKey.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web.intercept;
+package org.springframework.security.web.access.intercept;
 
 /**
  * @author Luke Taylor

+ 0 - 0
web/src/main/java/org/springframework/security/web/intercept/package.html → web/src/main/java/org/springframework/security/web/access/intercept/package.html


+ 2 - 3
web/src/main/java/org/springframework/security/web/AbstractAuthenticationTargetUrlRequestHandler.java → web/src/main/java/org/springframework/security/web/authentication/AbstractAuthenticationTargetUrlRequestHandler.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web;
+package org.springframework.security.web.authentication;
 
 import java.io.IOException;
 import java.io.UnsupportedEncodingException;
@@ -11,8 +11,7 @@ import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.springframework.security.core.Authentication;
-import org.springframework.security.web.authentication.AuthenticationSuccessHandler;
-import org.springframework.security.web.logout.LogoutHandler;
+import org.springframework.security.web.authentication.logout.LogoutHandler;
 import org.springframework.security.web.util.RedirectUtils;
 import org.springframework.security.web.util.UrlUtils;
 import org.springframework.util.Assert;

+ 1 - 1
web/src/main/java/org/springframework/security/web/authentication/AbstractProcessingFilter.java

@@ -38,7 +38,7 @@ import org.springframework.security.core.AuthenticationException;
 import org.springframework.security.core.SpringSecurityMessageSource;
 import org.springframework.security.core.context.SecurityContextHolder;
 import org.springframework.security.web.SpringSecurityFilter;
-import org.springframework.security.web.util.SessionUtils;
+import org.springframework.security.web.session.SessionUtils;
 import org.springframework.security.web.util.UrlUtils;
 import org.springframework.util.Assert;
 

+ 2 - 2
web/src/main/java/org/springframework/security/web/authentication/AuthenticationProcessingFilter.java

@@ -172,11 +172,11 @@ public class AuthenticationProcessingFilter extends AbstractProcessingFilter {
         return FilterChainOrder.AUTHENTICATION_PROCESSING_FILTER;
     }
 
-    String getUsernameParameter() {
+    public final String getUsernameParameter() {
         return usernameParameter;
     }
 
-    String getPasswordParameter() {
+    public final String getPasswordParameter() {
         return passwordParameter;
     }
 }

+ 1 - 1
web/src/main/java/org/springframework/security/web/authentication/AuthenticationProcessingFilterEntryPoint.java

@@ -19,11 +19,11 @@ package org.springframework.security.web.authentication;
 
 import org.springframework.security.core.AuthenticationException;
 import org.springframework.security.web.AuthenticationEntryPoint;
-import org.springframework.security.web.ExceptionTranslationFilter;
 import org.springframework.security.web.PortMapper;
 import org.springframework.security.web.PortMapperImpl;
 import org.springframework.security.web.PortResolver;
 import org.springframework.security.web.PortResolverImpl;
+import org.springframework.security.web.access.ExceptionTranslationFilter;
 import org.springframework.security.web.util.RedirectUrlBuilder;
 import org.springframework.security.web.util.UrlUtils;
 

+ 1 - 1
web/src/main/java/org/springframework/security/web/authentication/SavedRequestAwareAuthenticationSuccessHandler.java

@@ -8,7 +8,7 @@ import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpSession;
 
 import org.springframework.security.core.Authentication;
-import org.springframework.security.web.ExceptionTranslationFilter;
+import org.springframework.security.web.access.ExceptionTranslationFilter;
 import org.springframework.security.web.savedrequest.SavedRequest;
 import org.springframework.security.web.util.RedirectUtils;
 import org.springframework.security.web.wrapper.SavedRequestAwareWrapper;

+ 0 - 1
web/src/main/java/org/springframework/security/web/authentication/SimpleUrlAuthenticationSuccessHandler.java

@@ -7,7 +7,6 @@ import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
 import org.springframework.security.core.Authentication;
-import org.springframework.security.web.AbstractAuthenticationTargetUrlRequestHandler;
 
 public class SimpleUrlAuthenticationSuccessHandler extends AbstractAuthenticationTargetUrlRequestHandler implements AuthenticationSuccessHandler {
 

+ 4 - 4
web/src/main/java/org/springframework/security/web/concurrent/ConcurrentSessionFilter.java → web/src/main/java/org/springframework/security/web/authentication/concurrent/ConcurrentSessionFilter.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.concurrent;
+package org.springframework.security.web.authentication.concurrent;
 
 import org.springframework.security.authentication.concurrent.SessionInformation;
 import org.springframework.security.authentication.concurrent.SessionRegistry;
@@ -21,8 +21,8 @@ import org.springframework.security.core.Authentication;
 import org.springframework.security.core.context.SecurityContextHolder;
 import org.springframework.security.web.FilterChainOrder;
 import org.springframework.security.web.SpringSecurityFilter;
-import org.springframework.security.web.logout.LogoutHandler;
-import org.springframework.security.web.logout.SecurityContextLogoutHandler;
+import org.springframework.security.web.authentication.logout.LogoutHandler;
+import org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler;
 import org.springframework.security.web.util.UrlUtils;
 import org.springframework.beans.factory.InitializingBean;
 import org.springframework.util.Assert;
@@ -44,7 +44,7 @@ import java.io.IOException;
  * {@link org.springframework.security.authentication.concurrent.SessionInformation} from the <code>SessionRegistry</code>
  * for each request and checks if the session has been marked as expired.
  * If it has been marked as expired, the configured logout handlers will be called (as happens with
- * {@link org.springframework.security.web.logout.LogoutFilter}), typically to invalidate the session.
+ * {@link org.springframework.security.web.authentication.logout.LogoutFilter}), typically to invalidate the session.
  * A redirect to the expiredURL specified will be performed, and the session invalidation will cause an
  * {@link org.springframework.security.web.session.HttpSessionDestroyedEvent} to be published via the
  * {@link org.springframework.security.web.session.HttpSessionEventPublisher} registered in <code>web.xml</code>.</p>

+ 1 - 1
web/src/main/java/org/springframework/security/web/logout/LogoutFilter.java → web/src/main/java/org/springframework/security/web/authentication/logout/LogoutFilter.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.logout;
+package org.springframework.security.web.authentication.logout;
 
 import java.io.IOException;
 import java.util.Arrays;

+ 1 - 1
web/src/main/java/org/springframework/security/web/logout/LogoutHandler.java → web/src/main/java/org/springframework/security/web/authentication/logout/LogoutHandler.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.logout;
+package org.springframework.security.web.authentication.logout;
 
 import org.springframework.security.core.Authentication;
 

+ 1 - 1
web/src/main/java/org/springframework/security/web/logout/LogoutSuccessHandler.java → web/src/main/java/org/springframework/security/web/authentication/logout/LogoutSuccessHandler.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web.logout;
+package org.springframework.security.web.authentication.logout;
 
 import java.io.IOException;
 

+ 1 - 1
web/src/main/java/org/springframework/security/web/logout/SecurityContextLogoutHandler.java → web/src/main/java/org/springframework/security/web/authentication/logout/SecurityContextLogoutHandler.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.logout;
+package org.springframework.security.web.authentication.logout;
 
 
 import org.springframework.security.core.Authentication;

+ 2 - 2
web/src/main/java/org/springframework/security/web/logout/SimpleUrlLogoutSuccessHandler.java → web/src/main/java/org/springframework/security/web/authentication/logout/SimpleUrlLogoutSuccessHandler.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web.logout;
+package org.springframework.security.web.authentication.logout;
 
 import java.io.IOException;
 
@@ -7,7 +7,7 @@ import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
 import org.springframework.security.core.Authentication;
-import org.springframework.security.web.AbstractAuthenticationTargetUrlRequestHandler;
+import org.springframework.security.web.authentication.AbstractAuthenticationTargetUrlRequestHandler;
 
 /**
  * Handles the navigation on logout by delegating to the {@link AbstractAuthenticationTargetUrlRequestHandler}

+ 1 - 1
web/src/main/java/org/springframework/security/web/authentication/preauth/PreAuthenticatedProcessingFilterEntryPoint.java

@@ -31,7 +31,7 @@ import org.springframework.core.Ordered;
  * This code is based on
  * {@link org.springframework.security.ui.x509.X509ProcessingFilterEntryPoint}.
  *
- * @see org.springframework.security.web.ExceptionTranslationFilter
+ * @see org.springframework.security.web.access.ExceptionTranslationFilter
  *
  * @author Luke Taylor
  * @author Ruud Senden

+ 1 - 1
web/src/main/java/org/springframework/security/web/authentication/rememberme/AbstractRememberMeServices.java

@@ -17,7 +17,7 @@ import org.springframework.security.core.userdetails.UserDetailsService;
 import org.springframework.security.core.userdetails.UsernameNotFoundException;
 import org.springframework.security.web.authentication.RememberMeServices;
 import org.springframework.security.web.authentication.WebAuthenticationDetailsSource;
-import org.springframework.security.web.logout.LogoutHandler;
+import org.springframework.security.web.authentication.logout.LogoutHandler;
 import org.springframework.util.Assert;
 import org.springframework.util.StringUtils;
 

+ 3 - 1
web/src/main/java/org/springframework/security/web/authentication/DefaultLoginPageGeneratingFilter.java → web/src/main/java/org/springframework/security/web/authentication/ui/DefaultLoginPageGeneratingFilter.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web.authentication;
+package org.springframework.security.web.authentication.ui;
 
 import java.io.IOException;
 
@@ -12,6 +12,8 @@ import org.springframework.beans.BeanWrapperImpl;
 import org.springframework.security.core.AuthenticationException;
 import org.springframework.security.web.FilterChainOrder;
 import org.springframework.security.web.SpringSecurityFilter;
+import org.springframework.security.web.authentication.AbstractProcessingFilter;
+import org.springframework.security.web.authentication.AuthenticationProcessingFilter;
 import org.springframework.security.web.authentication.rememberme.AbstractRememberMeServices;
 
 /**

+ 0 - 6
web/src/main/java/org/springframework/security/web/concurrent/package.html

@@ -1,6 +0,0 @@
-<html>
-<body>
-Concurrent session control and registration classes.
-</body>
-</html>
-

+ 2 - 0
web/src/main/java/org/springframework/security/web/context/package.html

@@ -0,0 +1,2 @@
+Classes which are responsible for maintaining the security context
+between HTTP requests.

+ 1 - 1
web/src/main/java/org/springframework/security/web/savedrequest/SavedRequest.java

@@ -37,7 +37,7 @@ import java.util.TreeMap;
  * Represents central information from a <code>HttpServletRequest</code>.<p>This class is used by {@link
  * org.springframework.security.web.authentication.AbstractProcessingFilter} and {@link org.springframework.security.web.wrapper.SavedRequestAwareWrapper} to
  * reproduce the request after successful authentication. An instance of this class is stored at the time of an
- * authentication exception by {@link org.springframework.security.web.ExceptionTranslationFilter}.</p>
+ * authentication exception by {@link org.springframework.security.web.access.ExceptionTranslationFilter}.</p>
  * <p><em>IMPLEMENTATION NOTE</em>: It is assumed that this object is accessed only from the context of a single
  * thread, so no synchronization around internal collection classes is performed.</p>
  * <p>This class is based on code in Apache Tomcat.</p>

+ 3 - 2
web/src/main/java/org/springframework/security/web/SessionFixationProtectionFilter.java → web/src/main/java/org/springframework/security/web/session/SessionFixationProtectionFilter.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web;
+package org.springframework.security.web.session;
 
 import java.io.IOException;
 
@@ -14,8 +14,9 @@ import org.springframework.security.authentication.concurrent.SessionRegistry;
 import org.springframework.security.core.Authentication;
 import org.springframework.security.core.context.SecurityContext;
 import org.springframework.security.core.context.SecurityContextHolder;
+import org.springframework.security.web.FilterChainOrder;
+import org.springframework.security.web.SpringSecurityFilter;
 import org.springframework.security.web.context.HttpSessionSecurityContextRepository;
-import org.springframework.security.web.util.SessionUtils;
 
 /**
  * Detects that a user has been authenticated since the start of the request and starts a new session.

+ 1 - 1
web/src/main/java/org/springframework/security/web/util/SessionUtils.java → web/src/main/java/org/springframework/security/web/session/SessionUtils.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web.util;
+package org.springframework.security.web.session;
 
 import java.util.Enumeration;
 import java.util.HashMap;

+ 1 - 1
web/src/main/java/org/springframework/security/web/util/RedirectUtils.java

@@ -1,7 +1,7 @@
 package org.springframework.security.web.util;
 
 import org.springframework.security.web.authentication.AbstractProcessingFilter;
-import org.springframework.security.web.logout.LogoutFilter;
+import org.springframework.security.web.authentication.logout.LogoutFilter;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;

+ 348 - 348
web/src/main/java/org/springframework/security/web/wrapper/SavedRequestAwareWrapper.java

@@ -1,348 +1,348 @@
-/* Copyright 2004, 2005, 2006 Acegi Technology Pty Limited
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.springframework.security.web.wrapper;
-
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-import java.util.Set;
-import java.util.TimeZone;
-
-import javax.servlet.http.Cookie;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpSession;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.springframework.security.web.PortResolver;
-import org.springframework.security.web.savedrequest.Enumerator;
-import org.springframework.security.web.savedrequest.FastHttpDateFormat;
-import org.springframework.security.web.savedrequest.SavedRequest;
-
-
-/**
- * Provides request parameters, headers and cookies from either an original request or a saved request.
- *
- * <p>Note that not all request parameters in the original request are emulated by this wrapper.
- * Nevertheless, the important data from the original request is emulated and this should prove
- * adequate for most purposes (in particular standard HTTP GET and POST operations).</p>
- *
- * <p>Added into a request by {@link org.springframework.security.web.wrapper.SecurityContextHolderAwareRequestFilter}.</p>
- *
- *
- * @see SecurityContextHolderAwareRequestFilter
- *
- * @author Andrey Grebnev
- * @author Ben Alex
- * @version $Id$
- */
-public class SavedRequestAwareWrapper extends SecurityContextHolderAwareRequestWrapper {
-    //~ Static fields/initializers =====================================================================================
-
-    protected static final Log logger = LogFactory.getLog(SavedRequestAwareWrapper.class);
-    protected static final TimeZone GMT_ZONE = TimeZone.getTimeZone("GMT");
-
-    /** The default Locale if none are specified. */
-    protected static Locale defaultLocale = Locale.getDefault();
-
-    //~ Instance fields ================================================================================================
-
-    protected SavedRequest savedRequest = null;
-
-    /**
-     * The set of SimpleDateFormat formats to use in getDateHeader(). Notice that because SimpleDateFormat is
-     * not thread-safe, we can't declare formats[] as a static variable.
-     */
-    protected SimpleDateFormat[] formats = new SimpleDateFormat[3];
-
-    //~ Constructors ===================================================================================================
-
-    public SavedRequestAwareWrapper(HttpServletRequest request, PortResolver portResolver, String rolePrefix) {
-        super(request, portResolver, rolePrefix);
-
-        HttpSession session = request.getSession(false);
-
-        if (session == null) {
-            if (logger.isDebugEnabled()) {
-                logger.debug("Wrapper not replaced; no session available for SavedRequest extraction");
-            }
-
-            return;
-        }
-
-        SavedRequest saved = (SavedRequest) session.getAttribute(SavedRequest.SPRING_SECURITY_SAVED_REQUEST_KEY);
-
-        if ((saved != null) && saved.doesRequestMatch(request, portResolver)) {
-            if (logger.isDebugEnabled()) {
-                logger.debug("Wrapper replaced; SavedRequest was: " + saved);
-            }
-
-            savedRequest = saved;
-            session.removeAttribute(SavedRequest.SPRING_SECURITY_SAVED_REQUEST_KEY);
-
-            formats[0] = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.US);
-            formats[1] = new SimpleDateFormat("EEEEEE, dd-MMM-yy HH:mm:ss zzz", Locale.US);
-            formats[2] = new SimpleDateFormat("EEE MMMM d HH:mm:ss yyyy", Locale.US);
-
-            formats[0].setTimeZone(GMT_ZONE);
-            formats[1].setTimeZone(GMT_ZONE);
-            formats[2].setTimeZone(GMT_ZONE);
-        } else {
-            if (logger.isDebugEnabled()) {
-                logger.debug("Wrapper not replaced; SavedRequest was: " + saved);
-            }
-        }
-    }
-
-    //~ Methods ========================================================================================================
-
-    @Override
-    public Cookie[] getCookies() {
-        if (savedRequest == null) {
-            return super.getCookies();
-        } else {
-            List<Cookie> cookies = savedRequest.getCookies();
-
-            return cookies.toArray(new Cookie[cookies.size()]);
-        }
-    }
-
-    @Override
-    public long getDateHeader(String name) {
-        if (savedRequest == null) {
-            return super.getDateHeader(name);
-        } else {
-            String value = getHeader(name);
-
-            if (value == null) {
-                return -1L;
-            }
-
-            // Attempt to convert the date header in a variety of formats
-            long result = FastHttpDateFormat.parseDate(value, formats);
-
-            if (result != -1L) {
-                return result;
-            }
-
-            throw new IllegalArgumentException(value);
-        }
-    }
-
-    @Override
-    public String getHeader(String name) {
-        if (savedRequest == null) {
-            return super.getHeader(name);
-        } else {
-            String header = null;
-            Iterator<String> iterator = savedRequest.getHeaderValues(name);
-
-            while (iterator.hasNext()) {
-                header = iterator.next();
-
-                break;
-            }
-
-            return header;
-        }
-    }
-
-    @Override
-    @SuppressWarnings("unchecked")
-    public Enumeration getHeaderNames() {
-        if (savedRequest == null) {
-            return super.getHeaderNames();
-        } else {
-            return new Enumerator<String>(savedRequest.getHeaderNames());
-        }
-    }
-
-    @Override
-    @SuppressWarnings("unchecked")
-    public Enumeration getHeaders(String name) {
-        if (savedRequest == null) {
-            return super.getHeaders(name);
-        } else {
-            return new Enumerator<String>(savedRequest.getHeaderValues(name));
-        }
-    }
-
-    @Override
-    public int getIntHeader(String name) {
-        if (savedRequest == null) {
-            return super.getIntHeader(name);
-        } else {
-            String value = getHeader(name);
-
-            if (value == null) {
-                return -1;
-            } else {
-                return Integer.parseInt(value);
-            }
-        }
-    }
-
-    @Override
-    public Locale getLocale() {
-        if (savedRequest == null) {
-            return super.getLocale();
-        } else {
-            Locale locale = null;
-            Iterator<Locale> iterator = savedRequest.getLocales();
-
-            while (iterator.hasNext()) {
-                locale = (Locale) iterator.next();
-
-                break;
-            }
-
-            if (locale == null) {
-                return defaultLocale;
-            } else {
-                return locale;
-            }
-        }
-    }
-
-    @Override
-    @SuppressWarnings("unchecked")
-    public Enumeration getLocales() {
-        if (savedRequest == null) {
-            return super.getLocales();
-        }
-
-        Iterator<Locale> iterator = savedRequest.getLocales();
-
-        if (iterator.hasNext()) {
-            return new Enumerator<Locale>(iterator);
-        }
-        // Fall back to default locale
-        ArrayList<Locale> results = new ArrayList<Locale>(1);
-        results.add(defaultLocale);
-
-        return new Enumerator<Locale>(results.iterator());
-    }
-
-    @Override
-    public String getMethod() {
-        if (savedRequest == null) {
-            return super.getMethod();
-        } else {
-            return savedRequest.getMethod();
-        }
-    }
-
-    /**
-     * If the parameter is available from the wrapped request then either
-     * <ol>
-     * <li>There is no saved request (it a normal request)</li>
-     * <li>There is a saved request, but the request has been forwarded/included to a URL with parameters, either
-     * supplementing or overriding the saved request values.</li>
-     * </ol>
-     * In both cases the value from the wrapped request should be used.
-     * <p>
-     * If the value from the wrapped request is null, an attempt will be made to retrieve the parameter
-     * from the SavedRequest, if available..
-     */
-    @Override
-    public String getParameter(String name) {
-        String value = super.getParameter(name);
-
-        if (value != null || savedRequest == null) {
-            return value;
-        }
-
-        String[] values = savedRequest.getParameterValues(name);
-        if (values == null || values.length == 0) {
-            return null;
-        }
-
-        return values[0];
-    }
-
-    @Override
-    @SuppressWarnings("unchecked")
-    public Map getParameterMap() {
-        if (savedRequest == null) {
-            return super.getParameterMap();
-        }
-
-        Set<String> names = getCombinedParameterNames();
-        Map<String, String[]> parameterMap = new HashMap<String, String[]>(names.size());
-
-        for (String name : names) {
-            parameterMap.put(name, getParameterValues(name));
-        }
-
-        return parameterMap;
-    }
-
-    @SuppressWarnings("unchecked")
-    private Set<String> getCombinedParameterNames() {
-        Set<String> names = new HashSet<String>();
-        names.addAll(super.getParameterMap().keySet());
-
-        if (savedRequest != null) {
-            names.addAll(savedRequest.getParameterMap().keySet());
-        }
-
-        return names;
-    }
-
-    @Override
-    @SuppressWarnings("unchecked")
-    public Enumeration getParameterNames() {
-        return new Enumerator(getCombinedParameterNames());
-    }
-
-    @Override
-    public String[] getParameterValues(String name) {
-        if (savedRequest == null) {
-            return super.getParameterValues(name);
-        }
-
-        String[] savedRequestParams = savedRequest.getParameterValues(name);
-        String[] wrappedRequestParams = super.getParameterValues(name);
-
-        if (savedRequestParams == null) {
-            return wrappedRequestParams;
-        }
-
-        if (wrappedRequestParams == null) {
-            return savedRequestParams;
-        }
-
-        // We have parameters in both saved and wrapped requests so have to merge them
-        List<String> wrappedParamsList = Arrays.asList(wrappedRequestParams);
-        List<String> combinedParams = new ArrayList<String>(wrappedParamsList);
-
-        // We want to add all parameters of the saved request *apart from* duplicates of those already added
-        for (int i = 0; i < savedRequestParams.length; i++) {
-            if (!wrappedParamsList.contains(savedRequestParams[i])) {
-                combinedParams.add(savedRequestParams[i]);
-            }
-        }
-
-        return combinedParams.toArray(new String[combinedParams.size()]);
-    }
-}
+/* Copyright 2004, 2005, 2006 Acegi Technology Pty Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.springframework.security.web.wrapper;
+
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Set;
+import java.util.TimeZone;
+
+import javax.servlet.http.Cookie;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpSession;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.springframework.security.web.PortResolver;
+import org.springframework.security.web.savedrequest.Enumerator;
+import org.springframework.security.web.savedrequest.FastHttpDateFormat;
+import org.springframework.security.web.savedrequest.SavedRequest;
+
+
+/**
+ * Provides request parameters, headers and cookies from either an original request or a saved request.
+ *
+ * <p>Note that not all request parameters in the original request are emulated by this wrapper.
+ * Nevertheless, the important data from the original request is emulated and this should prove
+ * adequate for most purposes (in particular standard HTTP GET and POST operations).</p>
+ *
+ * <p>Added into a request by {@link org.springframework.security.web.wrapper.SecurityContextHolderAwareRequestFilter}.</p>
+ *
+ *
+ * @see SecurityContextHolderAwareRequestFilter
+ *
+ * @author Andrey Grebnev
+ * @author Ben Alex
+ * @version $Id$
+ */
+public class SavedRequestAwareWrapper extends SecurityContextHolderAwareRequestWrapper {
+    //~ Static fields/initializers =====================================================================================
+
+    protected static final Log logger = LogFactory.getLog(SavedRequestAwareWrapper.class);
+    protected static final TimeZone GMT_ZONE = TimeZone.getTimeZone("GMT");
+
+    /** The default Locale if none are specified. */
+    protected static Locale defaultLocale = Locale.getDefault();
+
+    //~ Instance fields ================================================================================================
+
+    protected SavedRequest savedRequest = null;
+
+    /**
+     * The set of SimpleDateFormat formats to use in getDateHeader(). Notice that because SimpleDateFormat is
+     * not thread-safe, we can't declare formats[] as a static variable.
+     */
+    protected SimpleDateFormat[] formats = new SimpleDateFormat[3];
+
+    //~ Constructors ===================================================================================================
+
+    public SavedRequestAwareWrapper(HttpServletRequest request, PortResolver portResolver, String rolePrefix) {
+        super(request, portResolver, rolePrefix);
+
+        HttpSession session = request.getSession(false);
+
+        if (session == null) {
+            if (logger.isDebugEnabled()) {
+                logger.debug("Wrapper not replaced; no session available for SavedRequest extraction");
+            }
+
+            return;
+        }
+
+        SavedRequest saved = (SavedRequest) session.getAttribute(SavedRequest.SPRING_SECURITY_SAVED_REQUEST_KEY);
+
+        if ((saved != null) && saved.doesRequestMatch(request, portResolver)) {
+            if (logger.isDebugEnabled()) {
+                logger.debug("Wrapper replaced; SavedRequest was: " + saved);
+            }
+
+            savedRequest = saved;
+            session.removeAttribute(SavedRequest.SPRING_SECURITY_SAVED_REQUEST_KEY);
+
+            formats[0] = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.US);
+            formats[1] = new SimpleDateFormat("EEEEEE, dd-MMM-yy HH:mm:ss zzz", Locale.US);
+            formats[2] = new SimpleDateFormat("EEE MMMM d HH:mm:ss yyyy", Locale.US);
+
+            formats[0].setTimeZone(GMT_ZONE);
+            formats[1].setTimeZone(GMT_ZONE);
+            formats[2].setTimeZone(GMT_ZONE);
+        } else {
+            if (logger.isDebugEnabled()) {
+                logger.debug("Wrapper not replaced; SavedRequest was: " + saved);
+            }
+        }
+    }
+
+    //~ Methods ========================================================================================================
+
+    @Override
+    public Cookie[] getCookies() {
+        if (savedRequest == null) {
+            return super.getCookies();
+        } else {
+            List<Cookie> cookies = savedRequest.getCookies();
+
+            return cookies.toArray(new Cookie[cookies.size()]);
+        }
+    }
+
+    @Override
+    public long getDateHeader(String name) {
+        if (savedRequest == null) {
+            return super.getDateHeader(name);
+        } else {
+            String value = getHeader(name);
+
+            if (value == null) {
+                return -1L;
+            }
+
+            // Attempt to convert the date header in a variety of formats
+            long result = FastHttpDateFormat.parseDate(value, formats);
+
+            if (result != -1L) {
+                return result;
+            }
+
+            throw new IllegalArgumentException(value);
+        }
+    }
+
+    @Override
+    public String getHeader(String name) {
+        if (savedRequest == null) {
+            return super.getHeader(name);
+        } else {
+            String header = null;
+            Iterator<String> iterator = savedRequest.getHeaderValues(name);
+
+            while (iterator.hasNext()) {
+                header = iterator.next();
+
+                break;
+            }
+
+            return header;
+        }
+    }
+
+    @Override
+    @SuppressWarnings("unchecked")
+    public Enumeration getHeaderNames() {
+        if (savedRequest == null) {
+            return super.getHeaderNames();
+        } else {
+            return new Enumerator<String>(savedRequest.getHeaderNames());
+        }
+    }
+
+    @Override
+    @SuppressWarnings("unchecked")
+    public Enumeration getHeaders(String name) {
+        if (savedRequest == null) {
+            return super.getHeaders(name);
+        } else {
+            return new Enumerator<String>(savedRequest.getHeaderValues(name));
+        }
+    }
+
+    @Override
+    public int getIntHeader(String name) {
+        if (savedRequest == null) {
+            return super.getIntHeader(name);
+        } else {
+            String value = getHeader(name);
+
+            if (value == null) {
+                return -1;
+            } else {
+                return Integer.parseInt(value);
+            }
+        }
+    }
+
+    @Override
+    public Locale getLocale() {
+        if (savedRequest == null) {
+            return super.getLocale();
+        } else {
+            Locale locale = null;
+            Iterator<Locale> iterator = savedRequest.getLocales();
+
+            while (iterator.hasNext()) {
+                locale = (Locale) iterator.next();
+
+                break;
+            }
+
+            if (locale == null) {
+                return defaultLocale;
+            } else {
+                return locale;
+            }
+        }
+    }
+
+    @Override
+    @SuppressWarnings("unchecked")
+    public Enumeration getLocales() {
+        if (savedRequest == null) {
+            return super.getLocales();
+        }
+
+        Iterator<Locale> iterator = savedRequest.getLocales();
+
+        if (iterator.hasNext()) {
+            return new Enumerator<Locale>(iterator);
+        }
+        // Fall back to default locale
+        ArrayList<Locale> results = new ArrayList<Locale>(1);
+        results.add(defaultLocale);
+
+        return new Enumerator<Locale>(results.iterator());
+    }
+
+    @Override
+    public String getMethod() {
+        if (savedRequest == null) {
+            return super.getMethod();
+        } else {
+            return savedRequest.getMethod();
+        }
+    }
+
+    /**
+     * If the parameter is available from the wrapped request then either
+     * <ol>
+     * <li>There is no saved request (it a normal request)</li>
+     * <li>There is a saved request, but the request has been forwarded/included to a URL with parameters, either
+     * supplementing or overriding the saved request values.</li>
+     * </ol>
+     * In both cases the value from the wrapped request should be used.
+     * <p>
+     * If the value from the wrapped request is null, an attempt will be made to retrieve the parameter
+     * from the SavedRequest, if available..
+     */
+    @Override
+    public String getParameter(String name) {
+        String value = super.getParameter(name);
+
+        if (value != null || savedRequest == null) {
+            return value;
+        }
+
+        String[] values = savedRequest.getParameterValues(name);
+        if (values == null || values.length == 0) {
+            return null;
+        }
+
+        return values[0];
+    }
+
+    @Override
+    @SuppressWarnings("unchecked")
+    public Map getParameterMap() {
+        if (savedRequest == null) {
+            return super.getParameterMap();
+        }
+
+        Set<String> names = getCombinedParameterNames();
+        Map<String, String[]> parameterMap = new HashMap<String, String[]>(names.size());
+
+        for (String name : names) {
+            parameterMap.put(name, getParameterValues(name));
+        }
+
+        return parameterMap;
+    }
+
+    @SuppressWarnings("unchecked")
+    private Set<String> getCombinedParameterNames() {
+        Set<String> names = new HashSet<String>();
+        names.addAll(super.getParameterMap().keySet());
+
+        if (savedRequest != null) {
+            names.addAll(savedRequest.getParameterMap().keySet());
+        }
+
+        return names;
+    }
+
+    @Override
+    @SuppressWarnings("unchecked")
+    public Enumeration getParameterNames() {
+        return new Enumerator(getCombinedParameterNames());
+    }
+
+    @Override
+    public String[] getParameterValues(String name) {
+        if (savedRequest == null) {
+            return super.getParameterValues(name);
+        }
+
+        String[] savedRequestParams = savedRequest.getParameterValues(name);
+        String[] wrappedRequestParams = super.getParameterValues(name);
+
+        if (savedRequestParams == null) {
+            return wrappedRequestParams;
+        }
+
+        if (wrappedRequestParams == null) {
+            return savedRequestParams;
+        }
+
+        // We have parameters in both saved and wrapped requests so have to merge them
+        List<String> wrappedParamsList = Arrays.asList(wrappedRequestParams);
+        List<String> combinedParams = new ArrayList<String>(wrappedParamsList);
+
+        // We want to add all parameters of the saved request *apart from* duplicates of those already added
+        for (int i = 0; i < savedRequestParams.length; i++) {
+            if (!wrappedParamsList.contains(savedRequestParams[i])) {
+                combinedParams.add(savedRequestParams[i]);
+            }
+        }
+
+        return combinedParams.toArray(new String[combinedParams.size()]);
+    }
+}

+ 3 - 3
web/src/test/java/org/springframework/security/web/ExceptionTranslationFilterTests.java → web/src/test/java/org/springframework/security/web/access/ExceptionTranslationFilterTests.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web;
+package org.springframework.security.web.access;
 
 import java.io.IOException;
 
@@ -35,8 +35,8 @@ import org.springframework.security.authentication.AnonymousAuthenticationToken;
 import org.springframework.security.authentication.BadCredentialsException;
 import org.springframework.security.core.authority.AuthorityUtils;
 import org.springframework.security.core.context.SecurityContextHolder;
-import org.springframework.security.web.AccessDeniedHandlerImpl;
-import org.springframework.security.web.ExceptionTranslationFilter;
+import org.springframework.security.web.access.AccessDeniedHandlerImpl;
+import org.springframework.security.web.access.ExceptionTranslationFilter;
 import org.springframework.security.web.savedrequest.SavedRequest;
 
 /**

+ 4 - 2
web/src/test/java/org/springframework/security/web/intercept/WebInvocationPrivilegeEvaluatorTests.java → web/src/test/java/org/springframework/security/web/access/WebInvocationPrivilegeEvaluatorTests.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.intercept;
+package org.springframework.security.web.access;
 
 import static org.junit.Assert.*;
 import static org.mockito.Matchers.*;
@@ -32,10 +32,12 @@ import org.springframework.security.authentication.AuthenticationManager;
 import org.springframework.security.authentication.TestingAuthenticationToken;
 import org.springframework.security.core.Authentication;
 import org.springframework.security.core.context.SecurityContextHolder;
+import org.springframework.security.web.access.intercept.FilterInvocationSecurityMetadataSource;
+import org.springframework.security.web.access.intercept.FilterSecurityInterceptor;
 
 
 /**
- * Tests {@link org.springframework.security.web.intercept.WebInvocationPrivilegeEvaluator}.
+ * Tests {@link org.springframework.security.web.access.WebInvocationPrivilegeEvaluator}.
  *
  * @author Ben Alex
  * @version $Id$

+ 3 - 3
web/src/test/java/org/springframework/security/web/securechannel/ChannelDecisionManagerImplTests.java → web/src/test/java/org/springframework/security/web/access/channel/ChannelDecisionManagerImplTests.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 import static org.mockito.Mockito.mock;
 
@@ -32,8 +32,8 @@ import org.springframework.mock.web.MockHttpServletResponse;
 import org.springframework.security.access.ConfigAttribute;
 import org.springframework.security.access.SecurityConfig;
 import org.springframework.security.web.FilterInvocation;
-import org.springframework.security.web.securechannel.ChannelDecisionManagerImpl;
-import org.springframework.security.web.securechannel.ChannelProcessor;
+import org.springframework.security.web.access.channel.ChannelDecisionManagerImpl;
+import org.springframework.security.web.access.channel.ChannelProcessor;
 
 
 /**

+ 4 - 4
web/src/test/java/org/springframework/security/web/securechannel/ChannelProcessingFilterTests.java → web/src/test/java/org/springframework/security/web/access/channel/ChannelProcessingFilterTests.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 import static org.junit.Assert.assertTrue;
 import static org.mockito.Mockito.mock;
@@ -31,9 +31,9 @@ import org.springframework.mock.web.MockHttpServletResponse;
 import org.springframework.security.access.ConfigAttribute;
 import org.springframework.security.access.SecurityConfig;
 import org.springframework.security.web.FilterInvocation;
-import org.springframework.security.web.intercept.FilterInvocationSecurityMetadataSource;
-import org.springframework.security.web.securechannel.ChannelDecisionManager;
-import org.springframework.security.web.securechannel.ChannelProcessingFilter;
+import org.springframework.security.web.access.channel.ChannelDecisionManager;
+import org.springframework.security.web.access.channel.ChannelProcessingFilter;
+import org.springframework.security.web.access.intercept.FilterInvocationSecurityMetadataSource;
 
 
 /**

+ 2 - 2
web/src/test/java/org/springframework/security/web/securechannel/InsecureChannelProcessorTests.java → web/src/test/java/org/springframework/security/web/access/channel/InsecureChannelProcessorTests.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 import static org.mockito.Mockito.mock;
 
@@ -25,7 +25,7 @@ import org.springframework.mock.web.MockHttpServletRequest;
 import org.springframework.mock.web.MockHttpServletResponse;
 import org.springframework.security.access.SecurityConfig;
 import org.springframework.security.web.FilterInvocation;
-import org.springframework.security.web.securechannel.InsecureChannelProcessor;
+import org.springframework.security.web.access.channel.InsecureChannelProcessor;
 
 
 /**

+ 2 - 2
web/src/test/java/org/springframework/security/web/securechannel/RetryWithHttpEntryPointTests.java → web/src/test/java/org/springframework/security/web/access/channel/RetryWithHttpEntryPointTests.java

@@ -13,14 +13,14 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 import junit.framework.TestCase;
 
 import org.springframework.security.MockPortResolver;
 
 import org.springframework.security.web.PortMapperImpl;
-import org.springframework.security.web.securechannel.RetryWithHttpEntryPoint;
+import org.springframework.security.web.access.channel.RetryWithHttpEntryPoint;
 
 import org.springframework.mock.web.MockHttpServletRequest;
 import org.springframework.mock.web.MockHttpServletResponse;

+ 2 - 2
web/src/test/java/org/springframework/security/web/securechannel/RetryWithHttpsEntryPointTests.java → web/src/test/java/org/springframework/security/web/access/channel/RetryWithHttpsEntryPointTests.java

@@ -13,14 +13,14 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 import junit.framework.TestCase;
 
 import org.springframework.security.MockPortResolver;
 
 import org.springframework.security.web.PortMapperImpl;
-import org.springframework.security.web.securechannel.RetryWithHttpsEntryPoint;
+import org.springframework.security.web.access.channel.RetryWithHttpsEntryPoint;
 
 import org.springframework.mock.web.MockHttpServletRequest;
 import org.springframework.mock.web.MockHttpServletResponse;

+ 2 - 2
web/src/test/java/org/springframework/security/web/securechannel/SecureChannelProcessorTests.java → web/src/test/java/org/springframework/security/web/access/channel/SecureChannelProcessorTests.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.securechannel;
+package org.springframework.security.web.access.channel;
 
 import static org.mockito.Mockito.mock;
 
@@ -25,7 +25,7 @@ import org.springframework.mock.web.MockHttpServletRequest;
 import org.springframework.mock.web.MockHttpServletResponse;
 import org.springframework.security.access.SecurityConfig;
 import org.springframework.security.web.FilterInvocation;
-import org.springframework.security.web.securechannel.SecureChannelProcessor;
+import org.springframework.security.web.access.channel.SecureChannelProcessor;
 
 
 /**

+ 2 - 1
web/src/test/java/org/springframework/security/web/expression/WebSecurityExpressionRootTests.java → web/src/test/java/org/springframework/security/web/access/expression/WebSecurityExpressionRootTests.java

@@ -1,4 +1,4 @@
-package org.springframework.security.web.expression;
+package org.springframework.security.web.access.expression;
 
 import static org.junit.Assert.*;
 import static org.mockito.Mockito.mock;
@@ -10,6 +10,7 @@ import org.junit.Test;
 import org.springframework.mock.web.MockHttpServletRequest;
 import org.springframework.security.core.Authentication;
 import org.springframework.security.web.FilterInvocation;
+import org.springframework.security.web.access.expression.WebSecurityExpressionRoot;
 
 /**
  * Tests for {@link WebSecurityExpressionRoot}.

+ 3 - 3
web/src/test/java/org/springframework/security/web/intercept/DefaultFilterInvocationSecurityMetadataSourceTests.java → web/src/test/java/org/springframework/security/web/access/intercept/DefaultFilterInvocationSecurityMetadataSourceTests.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.intercept;
+package org.springframework.security.web.access.intercept;
 
 import static org.junit.Assert.*;
 import static org.mockito.Mockito.mock;
@@ -29,8 +29,8 @@ import org.springframework.mock.web.MockHttpServletResponse;
 import org.springframework.security.access.ConfigAttribute;
 import org.springframework.security.access.SecurityConfig;
 import org.springframework.security.web.FilterInvocation;
-import org.springframework.security.web.intercept.DefaultFilterInvocationSecurityMetadataSource;
-import org.springframework.security.web.intercept.RequestKey;
+import org.springframework.security.web.access.intercept.DefaultFilterInvocationSecurityMetadataSource;
+import org.springframework.security.web.access.intercept.RequestKey;
 import org.springframework.security.web.util.AntUrlPathMatcher;
 
 /**

+ 1 - 1
web/src/test/java/org/springframework/security/web/intercept/FilterInvocationTests.java → web/src/test/java/org/springframework/security/web/access/intercept/FilterInvocationTests.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.intercept;
+package org.springframework.security.web.access.intercept;
 
 import static org.junit.Assert.assertEquals;
 import static org.mockito.Mockito.mock;

+ 3 - 1
web/src/test/java/org/springframework/security/web/intercept/FilterSecurityInterceptorTests.java → web/src/test/java/org/springframework/security/web/access/intercept/FilterSecurityInterceptorTests.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.intercept;
+package org.springframework.security.web.access.intercept;
 
 import java.util.List;
 
@@ -38,6 +38,8 @@ import org.springframework.security.authentication.TestingAuthenticationToken;
 import org.springframework.security.core.Authentication;
 import org.springframework.security.core.context.SecurityContextHolder;
 import org.springframework.security.web.FilterInvocation;
+import org.springframework.security.web.access.intercept.FilterInvocationSecurityMetadataSource;
+import org.springframework.security.web.access.intercept.FilterSecurityInterceptor;
 
 
 /**

+ 2 - 2
web/src/test/java/org/springframework/security/web/intercept/RequestKeyTests.java → web/src/test/java/org/springframework/security/web/access/intercept/RequestKeyTests.java

@@ -1,9 +1,9 @@
-package org.springframework.security.web.intercept;
+package org.springframework.security.web.access.intercept;
 
 import static org.junit.Assert.*;
 
 import org.junit.Test;
-import org.springframework.security.web.intercept.RequestKey;
+import org.springframework.security.web.access.intercept.RequestKey;
 
 /**
  * 

+ 2 - 2
web/src/test/java/org/springframework/security/web/concurrent/ConcurrentSessionFilterTests.java → web/src/test/java/org/springframework/security/web/authentication/ConcurrentSessionFilterTests.java

@@ -13,7 +13,7 @@
  * limitations under the License.
  */
 
-package org.springframework.security.web.concurrent;
+package org.springframework.security.web.authentication;
 
 import junit.framework.TestCase;
 import org.springframework.mock.web.MockFilterConfig;
@@ -22,7 +22,7 @@ import org.springframework.mock.web.MockHttpServletResponse;
 import org.springframework.mock.web.MockHttpSession;
 import org.springframework.security.authentication.concurrent.SessionRegistry;
 import org.springframework.security.authentication.concurrent.SessionRegistryImpl;
-import org.springframework.security.web.concurrent.ConcurrentSessionFilter;
+import org.springframework.security.web.authentication.concurrent.ConcurrentSessionFilter;
 
 import javax.servlet.Filter;
 import javax.servlet.FilterChain;

+ 1 - 0
web/src/test/java/org/springframework/security/web/authentication/DefaultLoginPageGeneratingFilterTests.java

@@ -17,6 +17,7 @@ import org.springframework.security.core.Authentication;
 import org.springframework.security.core.AuthenticationException;
 import org.springframework.security.core.SpringSecurityMessageSource;
 import org.springframework.security.web.FilterChainOrder;
+import org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter;
 
 /**
  *

Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác