From c0f1d4e19db031bb67d817558fdaa55fe052024c Mon Sep 17 00:00:00 2001 From: Ben Alex Date: Wed, 22 Jun 2005 08:06:28 +0000 Subject: [PATCH] Remove getters and setters from JdbcDaoImpl so IoC container cannot modify MappingSqlQuerys (thanks to David Durham for bug report). --- .../userdetails/jdbc/JdbcDaoImpl.java | 24 +++---------------- .../providers/dao/jdbc/JdbcDaoTests.java | 6 ----- doc/xdocs/changes.xml | 1 + 3 files changed, 4 insertions(+), 27 deletions(-) diff --git a/core/src/main/java/org/acegisecurity/userdetails/jdbc/JdbcDaoImpl.java b/core/src/main/java/org/acegisecurity/userdetails/jdbc/JdbcDaoImpl.java index 1e89a4d15e..14179dd7d1 100644 --- a/core/src/main/java/org/acegisecurity/userdetails/jdbc/JdbcDaoImpl.java +++ b/core/src/main/java/org/acegisecurity/userdetails/jdbc/JdbcDaoImpl.java @@ -1,4 +1,4 @@ -/* Copyright 2004 Acegi Technology Pty Limited +/* Copyright 2004, 2005 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. @@ -95,15 +95,6 @@ public class JdbcDaoImpl extends JdbcDaoSupport implements AuthenticationDao { //~ Methods ================================================================ - public void setAuthoritiesByUsernameMapping( - MappingSqlQuery authoritiesByUsernameQuery) { - this.authoritiesByUsernameMapping = authoritiesByUsernameQuery; - } - - public MappingSqlQuery getAuthoritiesByUsernameMapping() { - return authoritiesByUsernameMapping; - } - /** * Allows the default query string used to retrieve authorities based on * username to be overriden, if default table or column names need to be @@ -162,14 +153,6 @@ public class JdbcDaoImpl extends JdbcDaoSupport implements AuthenticationDao { return usernameBasedPrimaryKey; } - public void setUsersByUsernameMapping(MappingSqlQuery usersByUsernameQuery) { - this.usersByUsernameMapping = usersByUsernameQuery; - } - - public MappingSqlQuery getUsersByUsernameMapping() { - return usersByUsernameMapping; - } - /** * Allows the default query string used to retrieve users based on username * to be overriden, if default table or column names need to be changed. @@ -243,9 +226,8 @@ public class JdbcDaoImpl extends JdbcDaoSupport implements AuthenticationDao { * in a subclass */ protected void initMappingSqlQueries() { - setUsersByUsernameMapping(new UsersByUsernameMapping(getDataSource())); - setAuthoritiesByUsernameMapping(new AuthoritiesByUsernameMapping( - getDataSource())); + this.usersByUsernameMapping = new UsersByUsernameMapping(getDataSource()); + this.authoritiesByUsernameMapping = new AuthoritiesByUsernameMapping(getDataSource()); } //~ Inner Classes ========================================================== diff --git a/core/src/test/java/org/acegisecurity/providers/dao/jdbc/JdbcDaoTests.java b/core/src/test/java/org/acegisecurity/providers/dao/jdbc/JdbcDaoTests.java index 5b2bb3f695..533375fff3 100644 --- a/core/src/test/java/org/acegisecurity/providers/dao/jdbc/JdbcDaoTests.java +++ b/core/src/test/java/org/acegisecurity/providers/dao/jdbc/JdbcDaoTests.java @@ -87,12 +87,6 @@ public class JdbcDaoTests extends TestCase { dao.setUsersByUsernameQuery("SELECT USERS FROM FOO"); assertEquals("SELECT USERS FROM FOO", dao.getUsersByUsernameQuery()); - - dao.setAuthoritiesByUsernameMapping(new MockMappingSqlQuery()); - assertTrue(dao.getAuthoritiesByUsernameMapping() != null); - - dao.setUsersByUsernameMapping(new MockMappingSqlQuery()); - assertTrue(dao.getUsersByUsernameMapping() != null); } public void testLookupFailsIfUserHasNoGrantedAuthorities() diff --git a/doc/xdocs/changes.xml b/doc/xdocs/changes.xml index 2c7a89a5eb..c0fc3ef46c 100644 --- a/doc/xdocs/changes.xml +++ b/doc/xdocs/changes.xml @@ -39,6 +39,7 @@ Correct synchronization issue with FilterToBeanProxy initialization Refactor Authentication.isAuthenticated() handling to be more performance Silently catch NotSerializableException in AbstractProcessingFilter if rootCause is not Serializable + Remove getters and setters from JdbcDaoImpl so IoC container cannot modify MappingSqlQuerys Correct location of AuthenticationSimpleHttpInvokerRequestExecutor in clientContext.xml