Author: dimuthul
Date: Sun Dec 9 06:59:33 2007
New Revision: 10735
Log:
Adding reset functionality to SimplePoolManager
Modified:
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/pool/SimplePoolManager.java
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/readwrite/DefaultRealm.java
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/readwrite/DefaultRealmConfig.java
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/readwrite/DefaultUserStoreAdmin.java
trunk/commons/usermanager/modules/core/src/test/java/org/wso2/usermanager/acl/realm/AuthorizingRealmTest.java
trunk/commons/usermanager/modules/core/src/test/java/org/wso2/usermanager/readwrite/DefaultRealmTest.java
Modified:
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/pool/SimplePoolManager.java
==============================================================================
---
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/pool/SimplePoolManager.java
(original)
+++
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/pool/SimplePoolManager.java
Sun Dec 9 06:59:33 2007
@@ -28,19 +28,18 @@
}
public static synchronized SimplePoolManager getInstance() {
- clients++;
return instance;
}
public static synchronized boolean resetPool() {
- boolean success = false;
- if(clients < 1){
- instance.deletePool();
- success = true;
+ if(instance != null){
+ instance.deletePool();
+ instance = null;
}
- return success;
+ return true;
}
+
public void freeConnection(Connection con) {
pool.freeConnection(con);
}
Modified:
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/readwrite/DefaultRealm.java
==============================================================================
---
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/readwrite/DefaultRealm.java
(original)
+++
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/readwrite/DefaultRealm.java
Sun Dec 9 06:59:33 2007
@@ -66,6 +66,12 @@
return;
}
this.config = (DefaultRealmConfig) configBean;
+
+ if(config.getResetPoolManager()){
+ if(!SimplePoolManager.resetPool()){
+ throw new UserManagerException("unableToResetPool");
+ }
+ }
if (config.getDataSource() != null) {
SimplePoolManager.createInstance(config.getDataSource(), config
Modified:
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/readwrite/DefaultRealmConfig.java
==============================================================================
---
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/readwrite/DefaultRealmConfig.java
(original)
+++
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/readwrite/DefaultRealmConfig.java
Sun Dec 9 06:59:33 2007
@@ -38,7 +38,8 @@
private int maxConnectionsCount = 5;
-
+ private boolean resetPoolManager = false;
+
public DefaultRealmConfig() {
}
@@ -107,7 +108,13 @@
this.maxConnectionsCount = maxConnectionsCount;
}
-
-
-
+ public boolean getResetPoolManager() {
+ return resetPoolManager;
+ }
+
+ public void setResetPoolManager(boolean resetPoolManager) {
+ this.resetPoolManager = resetPoolManager;
+ }
+
+
}
Modified:
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/readwrite/DefaultUserStoreAdmin.java
==============================================================================
---
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/readwrite/DefaultUserStoreAdmin.java
(original)
+++
trunk/commons/usermanager/modules/core/src/main/java/org/wso2/usermanager/readwrite/DefaultUserStoreAdmin.java
Sun Dec 9 06:59:33 2007
@@ -20,8 +20,7 @@
private static Log log = LogFactory.getLog(DefaultUserStoreAdmin.class);
- protected DefaultRealmConfig config = null;
-
+
public DefaultUserStoreAdmin(DefaultRealmConfig config) {
super(config);
@@ -41,6 +40,9 @@
try {
PreparedStatement addUserStmt = dbConnection
.prepareStatement(DefaultRealmConstants.ADD_USER);
+
+
+
addUserStmt.setString(1, userName);
MessageDigest dgst = MessageDigest.getInstance("MD5");
dgst.update(((String) credential).getBytes());
Modified:
trunk/commons/usermanager/modules/core/src/test/java/org/wso2/usermanager/acl/realm/AuthorizingRealmTest.java
==============================================================================
---
trunk/commons/usermanager/modules/core/src/test/java/org/wso2/usermanager/acl/realm/AuthorizingRealmTest.java
(original)
+++
trunk/commons/usermanager/modules/core/src/test/java/org/wso2/usermanager/acl/realm/AuthorizingRealmTest.java
Sun Dec 9 06:59:33 2007
@@ -12,6 +12,7 @@
import org.wso2.usermanager.UserManagerException;
import org.wso2.usermanager.UserStoreAdmin;
import org.wso2.usermanager.UserStoreReader;
+import org.wso2.usermanager.pool.SimplePoolManager;
import org.wso2.usermanager.readwrite.DefaultDatabaseUtil;
import org.wso2.usermanager.readwrite.DefaultRealm;
import org.wso2.usermanager.readwrite.DefaultRealmConfig;
@@ -20,7 +21,7 @@
Realm realm = null;
- String connectionURL = "jdbc:derby:target/acl/UserDatabase";
+ String connectionURL = "jdbc:derby:target/ACLDatabase";
protected void setUp() throws Exception {
super.setUp();
@@ -104,8 +105,10 @@
admin.addRole("abc2");
aclAdmin.authorizeRole("abc2", "picture", "comment");
TestCase.assertTrue(aclAdmin.isRoleAuthorized("abc2", "picture",
"comment"));
-
+ SimplePoolManager.resetPool();
}
+
+
}
Modified:
trunk/commons/usermanager/modules/core/src/test/java/org/wso2/usermanager/readwrite/DefaultRealmTest.java
==============================================================================
---
trunk/commons/usermanager/modules/core/src/test/java/org/wso2/usermanager/readwrite/DefaultRealmTest.java
(original)
+++
trunk/commons/usermanager/modules/core/src/test/java/org/wso2/usermanager/readwrite/DefaultRealmTest.java
Sun Dec 9 06:59:33 2007
@@ -39,15 +39,16 @@
DefaultRealmConfig config = null;
- String connectionURL = "jdbc:derby:target/UserDatabase";
+ String connURL = "jdbc:derby:target/UserDatabase";
+
protected void setUp() throws Exception {
super.setUp();
Class clazz = Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
Driver driver = (Driver) clazz.newInstance();
Properties props = new Properties();
Connection dbConnection = driver.connect(
- connectionURL + ";create=true", props);
+ connURL + ";create=true", props);
DefaultDatabaseUtil.createDatabase(dbConnection);
@@ -56,7 +57,8 @@
realm = new DefaultRealm();
config = (DefaultRealmConfig) realm.getRealmConfiguration();
- config.setConnectionURL(connectionURL);
+ config.setConnectionURL(connURL);
+ config.setResetPoolManager(true);
realm.init(config);
}
@@ -73,7 +75,7 @@
UserStoreAdmin admin = realm.getUserStoreAdmin();
Authenticator authen = realm.getAuthenticator();
UserStoreReader reader = realm.getUserStoreReader();
- System.out.println("DefaultRealmTest"+connectionURL);
+
// add
admin.addUser("dimuthu", "credential");
admin.addUser("vajira", "credential");
_______________________________________________
Commons-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/commons-dev