proxool-cvs Mailing List for Proxool: Proxy JDBC Connection Pool (Page 14)
UNMAINTAINED!
Brought to you by:
billhorsman
You can subscribe to this list here.
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
(9) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(12) |
Feb
(17) |
Mar
(20) |
Apr
(22) |
May
(4) |
Jun
(3) |
Jul
(11) |
Aug
(23) |
Sep
(60) |
Oct
(41) |
Nov
(15) |
Dec
(29) |
2004 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(5) |
Jun
(29) |
Jul
(6) |
Aug
(1) |
Sep
(2) |
Oct
|
Nov
|
Dec
|
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(8) |
Jun
|
Jul
(1) |
Aug
|
Sep
(8) |
Oct
(19) |
Nov
|
Dec
|
2006 |
Jan
(17) |
Feb
|
Mar
(5) |
Apr
(1) |
May
(2) |
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(3) |
Dec
|
2007 |
Jan
(9) |
Feb
|
Mar
|
Apr
|
May
(4) |
Jun
(4) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(3) |
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(4) |
Sep
|
Oct
|
Nov
|
Dec
|
From: <bil...@us...> - 2003-04-27 22:12:01
|
Update of /cvsroot/proxool/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv1287 Modified Files: CHANGES.txt Log Message: 0.7.2 Index: CHANGES.txt =================================================================== RCS file: /cvsroot/proxool/proxool/CHANGES.txt,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** CHANGES.txt 19 Apr 2003 13:02:01 -0000 1.20 --- CHANGES.txt 27 Apr 2003 22:11:58 -0000 1.21 *************** *** 6,9 **** --- 6,19 ---- $Author$ + 0.7.2 - April 28, 2003 + + - Moved DataSourceTest into Sandbox so that the Ant test target + runs correctly. + + - Fixed a bug in ConfigurationListener that meant that if you passed + a Properties object to the Driver when asking for a connection to an + existing pool it incorrectly called ConfigurationListenerIF.definitionUpdated + when there was no change, and didn't call it when there was. + 0.7.1 - April 19, 2003 |
From: <bil...@us...> - 2003-04-27 22:11:38
|
Update of /cvsroot/proxool/proxool/src/java-test/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv1159/src/java-test/org/logicalcobwebs/proxool Modified Files: AllTests.java Log Message: temporary removal of PerformanceTest Index: AllTests.java =================================================================== RCS file: /cvsroot/proxool/proxool/src/java-test/org/logicalcobwebs/proxool/AllTests.java,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** AllTests.java 27 Apr 2003 15:46:11 -0000 1.20 --- AllTests.java 27 Apr 2003 22:11:34 -0000 1.21 *************** *** 42,46 **** suite.addTestSuite(StateListenerTest.class); suite.addTestSuite(UpdateDefinitionTest.class); ! suite.addTestSuite(PerformanceTest.class); // create a wrapper for global initialization code. --- 42,47 ---- suite.addTestSuite(StateListenerTest.class); suite.addTestSuite(UpdateDefinitionTest.class); ! // TODO Need more investigation into why this fails sometimes. ! // suite.addTestSuite(PerformanceTest.class); // create a wrapper for global initialization code. *************** *** 59,62 **** --- 60,66 ---- Revision history: $Log$ + Revision 1.21 2003/04/27 22:11:34 billhorsman + temporary removal of PerformanceTest + Revision 1.20 2003/04/27 15:46:11 billhorsman moved DataSourceTest to sandbox |
From: <bil...@us...> - 2003-04-27 15:46:15
|
Update of /cvsroot/proxool/proxool/src/java-test/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv9494/src/java-test/org/logicalcobwebs/proxool Modified Files: AllTests.java Log Message: moved DataSourceTest to sandbox Index: AllTests.java =================================================================== RCS file: /cvsroot/proxool/proxool/src/java-test/org/logicalcobwebs/proxool/AllTests.java,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** AllTests.java 19 Apr 2003 13:01:01 -0000 1.19 --- AllTests.java 27 Apr 2003 15:46:11 -0000 1.20 *************** *** 31,35 **** suite.addTestSuite(ConnectionListenerTest.class); suite.addTestSuite(ConnectionResetterTest.class); - suite.addTestSuite(DataSourceTest.class); suite.addTestSuite(DriverTest.class); suite.addTestSuite(ConnectionPoolTests.class); --- 31,34 ---- *************** *** 60,63 **** --- 59,65 ---- Revision history: $Log$ + Revision 1.20 2003/04/27 15:46:11 billhorsman + moved DataSourceTest to sandbox + Revision 1.19 2003/04/19 13:01:01 billhorsman improve tests |
From: <bil...@us...> - 2003-04-27 15:45:35
|
Update of /cvsroot/proxool/proxool/src/java-test/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv8608/src/java-test/org/logicalcobwebs/proxool Removed Files: DataSourceTest.java Log Message: moved to sandbox --- DataSourceTest.java DELETED --- |
From: <bil...@us...> - 2003-04-27 15:45:34
|
Update of /cvsroot/proxool/proxool/src/java-sandbox/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv8608/src/java-sandbox/org/logicalcobwebs/proxool Added Files: DataSourceTest.java Log Message: moved to sandbox --- NEW FILE: DataSourceTest.java --- /* * This software is released under a licence similar to the Apache Software Licence. * See org.logicalcobwebs.proxool.package.html for details. * The latest version is available at http://proxool.sourceforge.net */ package org.logicalcobwebs.proxool; import java.sql.SQLException; /** * Test for {@link org.logicalcobwebs.proxool.BasicDataSource} * @version $Revision: 1.1 $, $Date: 2003/04/27 15:45:31 $ * @author bill * @author $Author: billhorsman $ (current maintainer) * @since Proxool 0.8 */ public class DataSourceTest extends AbstractProxoolTest { public DataSourceTest(String alias) { super(alias); } public void testDirectRegistration() throws SQLException, ProxoolException { String alias = "directRegistration"; // Use BasicDataSource directly BasicDataSource bds = new BasicDataSource(); bds.setAlias(alias); bds.setUrl(TestConstants.HYPERSONIC_TEST_URL); bds.setDriver(TestConstants.HYPERSONIC_DRIVER); bds.setUser(TestConstants.HYPERSONIC_USER); bds.setPassword(TestConstants.HYPERSONIC_PASSWORD); bds.getConnection().close(); assertEquals("servedCount", 1, ProxoolFacade.getSnapshot(alias).getServedCount()); } } /* Revision history: $Log: */ |
From: <bil...@us...> - 2003-04-27 15:44:22
|
Update of /cvsroot/proxool/proxool/src/java-test/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv7608/src/java-test/org/logicalcobwebs/proxool Modified Files: ConfigurationListenerTest.java Log Message: better tests Index: ConfigurationListenerTest.java =================================================================== RCS file: /cvsroot/proxool/proxool/src/java-test/org/logicalcobwebs/proxool/ConfigurationListenerTest.java,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** ConfigurationListenerTest.java 10 Apr 2003 21:48:58 -0000 1.10 --- ConfigurationListenerTest.java 27 Apr 2003 15:44:19 -0000 1.11 *************** *** 104,107 **** --- 104,114 ---- mcl2.reset(); + // This time pass in the properties (WITH change) + LOG.debug("Expecting a change now"); + info.setProperty(ProxoolConstants.VERBOSE_PROPERTY, Boolean.FALSE.toString()); + DriverManager.getConnection(url, info).close(); + assertEquals("definitionReceived", true, mcl2.isUpdateReceived()); + mcl2.reset(); + // Remove the second listener ProxoolFacade.removeConfigurationListener(alias, mcl2); *************** *** 229,232 **** --- 236,242 ---- Revision history: $Log$ + Revision 1.11 2003/04/27 15:44:19 billhorsman + better tests + Revision 1.10 2003/04/10 21:48:58 billhorsman enhanced to trap bug where config change event gets fired |
From: <bil...@us...> - 2003-04-27 15:42:26
|
Update of /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv6255/src/java/org/logicalcobwebs/proxool Modified Files: ConnectionPoolDefinition.java Log Message: fix to condition that meant configuration change was getting sent too often (and sometimes not at all) Index: ConnectionPoolDefinition.java =================================================================== RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool/ConnectionPoolDefinition.java,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** ConnectionPoolDefinition.java 19 Apr 2003 12:58:41 -0000 1.17 --- ConnectionPoolDefinition.java 27 Apr 2003 15:42:21 -0000 1.18 *************** *** 875,879 **** public boolean isEqual(String url, Properties info) { try { ! return doChange(url, info, true); } catch (ProxoolException e) { LOG.error("Problem checking equality", e); --- 875,879 ---- public boolean isEqual(String url, Properties info) { try { ! return !doChange(url, info, true); } catch (ProxoolException e) { LOG.error("Problem checking equality", e); *************** *** 902,905 **** --- 902,908 ---- Revision history: $Log$ + Revision 1.18 2003/04/27 15:42:21 billhorsman + fix to condition that meant configuration change was getting sent too often (and sometimes not at all) + Revision 1.17 2003/04/19 12:58:41 billhorsman fixed bug where ConfigurationListener's |
From: <bil...@us...> - 2003-04-19 13:02:07
|
Update of /cvsroot/proxool/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv13774 Modified Files: CHANGES.txt Log Message: Index: CHANGES.txt =================================================================== RCS file: /cvsroot/proxool/proxool/CHANGES.txt,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** CHANGES.txt 12 Mar 2003 15:59:54 -0000 1.19 --- CHANGES.txt 19 Apr 2003 13:02:01 -0000 1.20 *************** *** 6,10 **** $Author$ ! 0.7.1 - scheduled for March 2003 - Added a lot of concurrency code - mainly using concurrent package --- 6,10 ---- $Author$ ! 0.7.1 - April 19, 2003 - Added a lot of concurrency code - mainly using concurrent package *************** *** 39,42 **** --- 39,49 ---- used by Proxool is more scalable. (Proxool used to create two threads per pool). + + - Moved AdminServlet to servlet sub-package to make way for upcoming + JMX admin implementation. + + - Fixed bug where ConfigurationListenerIF.definitionUpdated was getting called + when you passed a Properties object to the Driver regardless if whether the + definition had changed. 0.7 - February 21, 2003 |
From: <bil...@us...> - 2003-04-19 13:01:06
|
Update of /cvsroot/proxool/proxool/src/java-test/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv13532/src/java-test/org/logicalcobwebs/proxool Modified Files: AllTests.java Added Files: DataSourceTest.java Log Message: improve tests --- NEW FILE: DataSourceTest.java --- /* * This software is released under a licence similar to the Apache Software Licence. * See org.logicalcobwebs.proxool.package.html for details. * The latest version is available at http://proxool.sourceforge.net */ package org.logicalcobwebs.proxool; import java.sql.SQLException; /** * Test for {@link org.logicalcobwebs.proxool.BasicDataSource} * @version $Revision: 1.1 $, $Date: 2003/04/19 13:01:01 $ * @author bill * @author $Author: billhorsman $ (current maintainer) * @since Proxool 0.8 */ public class DataSourceTest extends AbstractProxoolTest { public DataSourceTest(String alias) { super(alias); } public void testDirectRegistration() throws SQLException, ProxoolException { String alias = "directRegistration"; // Use BasicDataSource directly BasicDataSource bds = new BasicDataSource(); bds.setAlias(alias); bds.setUrl(TestConstants.HYPERSONIC_TEST_URL); bds.setDriver(TestConstants.HYPERSONIC_DRIVER); bds.setUser(TestConstants.HYPERSONIC_USER); bds.setPassword(TestConstants.HYPERSONIC_PASSWORD); bds.getConnection().close(); assertEquals("servedCount", 1, ProxoolFacade.getSnapshot(alias).getServedCount()); } } /* Revision history: $Log: */ Index: AllTests.java =================================================================== RCS file: /cvsroot/proxool/proxool/src/java-test/org/logicalcobwebs/proxool/AllTests.java,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** AllTests.java 11 Mar 2003 14:58:30 -0000 1.18 --- AllTests.java 19 Apr 2003 13:01:01 -0000 1.19 *************** *** 31,34 **** --- 31,35 ---- suite.addTestSuite(ConnectionListenerTest.class); suite.addTestSuite(ConnectionResetterTest.class); + suite.addTestSuite(DataSourceTest.class); suite.addTestSuite(DriverTest.class); suite.addTestSuite(ConnectionPoolTests.class); *************** *** 59,62 **** --- 60,66 ---- Revision history: $Log$ + Revision 1.19 2003/04/19 13:01:01 billhorsman + improve tests + Revision 1.18 2003/03/11 14:58:30 billhorsman put PerformanceTest back in the global test |
From: <bil...@us...> - 2003-04-19 12:59:21
|
Update of /cvsroot/proxool/proxool/src/java-sandbox/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv12883 Added Files: BasicDataSource.java Log Message: draft DataSource --- NEW FILE: BasicDataSource.java --- /* * This software is released under a licence similar to the Apache Software Licence. * See org.logicalcobwebs.proxool.package.html for details. * The latest version is available at http://proxool.sourceforge.net */ package org.logicalcobwebs.proxool; import org.logicalcobwebs.logging.Log; import org.logicalcobwebs.logging.LogFactory; import javax.sql.DataSource; import javax.naming.NamingException; import javax.naming.Reference; import javax.naming.Context; import javax.naming.Name; import javax.naming.StringRefAddr; import javax.naming.BinaryRefAddr; import java.sql.Connection; import java.sql.SQLException; import java.io.PrintWriter; import java.io.IOException; import java.io.Serializable; import java.io.ByteArrayOutputStream; import java.io.ObjectOutputStream; import java.util.Hashtable; import java.util.Properties; /** * Basic implementation of DataSource * @version $Revision: 1.1 $, $Date: 2003/04/19 12:59:17 $ * @author bill * @author $Author: billhorsman $ (current maintainer) * @since Proxool 0.8 */ public class BasicDataSource implements DataSource { private static final Log LOG = LogFactory.getLog(BasicDataSource.class); private Properties jndiEnvironment; private String alias; private String url; private String user; private String password; private String driver; private int maximumConnectionLifetime;; private int prototypeCount; private int minimumConnectionCount; private int maximumConnectionCount; private int houseKeepingSleepTime; private int simultaneousBuildThrottle; private int recentlyStartedThreshold; private int overloadWithoutRefusalLifetime; private int maximumActiveTime; private boolean verbose; private boolean trace; private String statistics; private String statisticsLogLevel; /** * A String of all the fatalSqlExceptions delimited by * {@link org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#FATAL_SQL_EXCEPTIONS_DELIMITER} */ private String fatalSqlExceptionsAsString; private String houseKeepingTestSql; public BasicDataSource() { reset(); } /** * @see javax.sql.DataSource#getConnection() */ public Connection getConnection() throws SQLException { ConnectionPool cp = null; try { if (!ConnectionPoolManager.getInstance().isPoolExists(alias)) { registerPool(); } cp = ConnectionPoolManager.getInstance().getConnectionPool(alias); return cp.getConnection(); } catch (ProxoolException e) { LOG.error("Problem getting connection", e); throw new SQLException(e.toString()); } } /** * Register a pool using the properties of this data source. (Check that it * exists first) * @throws org.logicalcobwebs.proxool.ProxoolException if the pool couldn't be registered */ private synchronized void registerPool() throws ProxoolException { if (!ConnectionPoolManager.getInstance().isPoolExists(alias)) { ConnectionPoolDefinition cpd = new ConnectionPoolDefinition(); cpd.setAlias(getAlias()); cpd.setDriver(getDriver()); cpd.setFatalSqlExceptionsAsString(getFatalSqlExceptionsAsString()); cpd.setHouseKeepingSleepTime(getHouseKeepingSleepTime()); cpd.setHouseKeepingTestSql(getHouseKeepingTestSql()); cpd.setMaximumActiveTime(getMaximumActiveTime()); cpd.setMaximumConnectionCount(getMaximumConnectionCount()); cpd.setMaximumConnectionLifetime(getMaximumConnectionLifetime()); cpd.setMinimumConnectionCount(getMinimumConnectionCount()); cpd.setOverloadWithoutRefusalLifetime(cpd.getOverloadWithoutRefusalLifetime()); cpd.setPassword(getPassword()); cpd.setPrototypeCount(getPrototypeCount()); cpd.setRecentlyStartedThreshold(getRecentlyStartedThreshold()); cpd.setSimultaneousBuildThrottle(getSimultaneousBuildThrottle()); cpd.setStatistics(getStatistics()); cpd.setStatisticsLogLevel(getStatisticsLogLevel()); cpd.setTrace(isTrace()); cpd.setUrl(getUrl()); cpd.setUser(getUser()); cpd.setVerbose(isVerbose()); ProxoolFacade.registerConnectionPool(cpd); } } /** * Use {@link #getConnection()} instead * @see javax.sql.DataSource#getConnection(java.lang.String, java.lang.String) */ public Connection getConnection(String username, String password) throws SQLException { throw new UnsupportedOperationException("You should configure the username and password " + "within the proxool configuration and just call getConnection() instead."); } /** * Unsupported operation * @see javax.sql.DataSource#getLoginTimeout */ public int getLoginTimeout() { throw new UnsupportedOperationException("login timeout is not supported"); } /** * Unsupported operation * @see javax.sql.DataSource#setLoginTimeout */ public void setLoginTimeout(int loginTimeout) { throw new UnsupportedOperationException("login timeout is not supported"); } /** * Unsupported operation * @see javax.sql.DataSource#getLogWriter */ public PrintWriter getLogWriter() { throw new UnsupportedOperationException("Proxool uses Jakarta's Commons' Logging API"); } /** * Unsupported operation * @see javax.sql.DataSource#setLogWriter */ public void setLogWriter(PrintWriter logWriter) { throw new UnsupportedOperationException("Proxool uses Jakarta's Commons' Logging API"); } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getAlias */ public String getAlias() { return alias; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getAlias */ public void setAlias(String alias) { this.alias = alias; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getUrl */ public String getUrl() { return url; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getUrl */ public void setUrl(String url) { this.url = url; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getDriver */ public String getDriver() { return driver; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getDriver */ public void setDriver(String driver) { this.driver = driver; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getMaximumConnectionLifetime */ public int getMaximumConnectionLifetime() { return maximumConnectionLifetime; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getMaximumConnectionLifetime */ public void setMaximumConnectionLifetime(int maximumConnectionLifetime) { this.maximumConnectionLifetime = maximumConnectionLifetime; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getPrototypeCount */ public int getPrototypeCount() { return prototypeCount; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getPrototypeCount */ public void setPrototypeCount(int prototypeCount) { this.prototypeCount = prototypeCount; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getMinimumConnectionCount */ public int getMinimumConnectionCount() { return minimumConnectionCount; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getMinimumConnectionCount */ public void setMinimumConnectionCount(int minimumConnectionCount) { this.minimumConnectionCount = minimumConnectionCount; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getMaximumConnectionCount */ public int getMaximumConnectionCount() { return maximumConnectionCount; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getMaximumConnectionCount */ public void setMaximumConnectionCount(int maximumConnectionCount) { this.maximumConnectionCount = maximumConnectionCount; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getHouseKeepingSleepTime */ public int getHouseKeepingSleepTime() { return houseKeepingSleepTime; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getHouseKeepingSleepTime */ public void setHouseKeepingSleepTime(int houseKeepingSleepTime) { this.houseKeepingSleepTime = houseKeepingSleepTime; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getSimultaneousBuildThrottle */ public int getSimultaneousBuildThrottle() { return simultaneousBuildThrottle; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getSimultaneousBuildThrottle */ public void setSimultaneousBuildThrottle(int simultaneousBuildThrottle) { this.simultaneousBuildThrottle = simultaneousBuildThrottle; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getRecentlyStartedThreshold */ public int getRecentlyStartedThreshold() { return recentlyStartedThreshold; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getRecentlyStartedThreshold */ public void setRecentlyStartedThreshold(int recentlyStartedThreshold) { this.recentlyStartedThreshold = recentlyStartedThreshold; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getOverloadWithoutRefusalLifetime */ public int getOverloadWithoutRefusalLifetime() { return overloadWithoutRefusalLifetime; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getOverloadWithoutRefusalLifetime */ public void setOverloadWithoutRefusalLifetime(int overloadWithoutRefusalLifetime) { this.overloadWithoutRefusalLifetime = overloadWithoutRefusalLifetime; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getMaximumActiveTime */ public int getMaximumActiveTime() { return maximumActiveTime; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getMaximumActiveTime */ public void setMaximumActiveTime(int maximumActiveTime) { this.maximumActiveTime = maximumActiveTime; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#isVerbose */ public boolean isVerbose() { return verbose; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#isVerbose */ public void setVerbose(boolean verbose) { this.verbose = verbose; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#isTrace */ public boolean isTrace() { return trace; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#isTrace */ public void setTrace(boolean trace) { this.trace = trace; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getStatistics */ public String getStatistics() { return statistics; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getStatistics */ public void setStatistics(String statistics) { this.statistics = statistics; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getStatisticsLogLevel */ public String getStatisticsLogLevel() { return statisticsLogLevel; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getStatisticsLogLevel */ public void setStatisticsLogLevel(String statisticsLogLevel) { this.statisticsLogLevel = statisticsLogLevel; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getFatalSqlExceptions */ public String getFatalSqlExceptionsAsString() { return fatalSqlExceptionsAsString; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getFatalSqlExceptions */ public void setFatalSqlExceptionsAsString(String fatalSqlExceptionsAsString) { this.fatalSqlExceptionsAsString = fatalSqlExceptionsAsString; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getHouseKeepingTestSql */ public String getHouseKeepingTestSql() { return houseKeepingTestSql; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getHouseKeepingTestSql */ public void setHouseKeepingTestSql(String houseKeepingTestSql) { this.houseKeepingTestSql = houseKeepingTestSql; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getUser */ public String getUser() { return user; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getUser */ public void setUser(String user) { this.user = user; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getPassword */ public String getPassword() { return password; } /** * @see org.logicalcobwebs.proxool.ConnectionPoolDefinitionIF#getPassword */ public void setPassword(String password) { this.password = password; } /** * Reset all properties to their default values */ private void reset() { url = null; driver = null; maximumConnectionLifetime = ConnectionPoolDefinitionIF.DEFAULT_MAXIMUM_CONNECTION_LIFETIME; prototypeCount = ConnectionPoolDefinitionIF.DEFAULT_PROTOTYPE_COUNT; minimumConnectionCount = ConnectionPoolDefinitionIF.DEFAULT_MINIMUM_CONNECTION_COUNT; maximumConnectionCount = ConnectionPoolDefinitionIF.DEFAULT_MAXIMUM_CONNECTION_COUNT; houseKeepingSleepTime = ConnectionPoolDefinitionIF.DEFAULT_HOUSE_KEEPING_SLEEP_TIME; houseKeepingTestSql = null; simultaneousBuildThrottle = ConnectionPoolDefinitionIF.DEFAULT_SIMULTANEOUS_BUILD_THROTTLE;; recentlyStartedThreshold = ConnectionPoolDefinitionIF.DEFAULT_RECENTLY_STARTED_THRESHOLD; overloadWithoutRefusalLifetime = ConnectionPoolDefinitionIF.DEFAULT_OVERLOAD_WITHOUT_REFUSAL_THRESHOLD; maximumActiveTime = ConnectionPoolDefinitionIF.DEFAULT_MAXIMUM_ACTIVE_TIME; verbose = false; trace = false; statistics = null; statisticsLogLevel = null; } /** * <CODE>Referenceable</CODE> implementation prepares object for * binding in jndi. */ public Reference getReference() throws NamingException { // this class implements its own factory String factory = getClass().getName(); Reference ref = new Reference(getClass().getName(), factory, null); ref.add(new StringRefAddr("url", getUrl())); byte[] ser = null; // BinaryRefAddr does not allow null byte[]. if ( jndiEnvironment != null ) { try { ser = serialize(jndiEnvironment); ref.add(new BinaryRefAddr("jndiEnvironment", ser)); } catch (IOException ioe) { throw new NamingException("An IOException prevented " + "serializing the jndiEnvironment properties."); } } // TODO return null; } /** * implements ObjectFactory to create an instance of this class */ public Object getObjectInstance(Object refObj, Name name, Context context, Hashtable env) throws Exception { // TODO return null; } /** * Get the value of jndiEnvironment which is used when instantiating * a jndi InitialContext. This InitialContext is used to locate the * backend ConnectionPoolDataSource. * * @return value of jndiEnvironment. */ public String getJndiEnvironment(String key) { String value = null; if (jndiEnvironment != null) { value = jndiEnvironment.getProperty(key); } return value; } /** * Set the value of jndiEnvironment which is used when instantiating * a jndi InitialContext. This InitialContext is used to locate the * backend ConnectionPoolDataSource. * * @param key property key * @param value to assign to jndiEnvironment. */ public void setJndiEnvironment(String key, String value) { if (jndiEnvironment == null) { jndiEnvironment = new Properties(); } jndiEnvironment.setProperty(key, value); } /** * Converts a object to a byte array for storage/serialization. * * @param obj The Serializable to convert. * @return A byte[] with the converted Serializable. * @exception java.io.IOException if conversion to a byte[] fails. */ private static byte[] serialize(Serializable obj) throws IOException { byte[] byteArray = null; ByteArrayOutputStream baos = null; ObjectOutputStream out = null; try { // These objects are closed in the finally. baos = new ByteArrayOutputStream(); out = new ObjectOutputStream(baos); out.writeObject(obj); byteArray = baos.toByteArray(); } finally { if (out != null) { out.close(); } } return byteArray; } } /* Revision history: $Log: */ |
From: <bil...@us...> - 2003-04-19 12:58:47
|
Update of /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv12607 Modified Files: ProxoolDriver.java ConnectionPoolDefinition.java Log Message: fixed bug where ConfigurationListener's definitionUpdated was getting called too frequently Index: ProxoolDriver.java =================================================================== RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool/ProxoolDriver.java,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** ProxoolDriver.java 10 Mar 2003 23:43:12 -0000 1.21 --- ProxoolDriver.java 19 Apr 2003 12:58:40 -0000 1.22 *************** *** 82,86 **** cp = ConnectionPoolManager.getInstance().getConnectionPool(alias); ConnectionPoolDefinition cpd = cp.getDefinition(); ! cpd.redefine(url, info); } else { cp = ConnectionPoolManager.getInstance().getConnectionPool(alias); --- 82,88 ---- cp = ConnectionPoolManager.getInstance().getConnectionPool(alias); ConnectionPoolDefinition cpd = cp.getDefinition(); ! if (!cpd.isEqual(url, info)) { ! cpd.redefine(url, info); ! } } else { cp = ConnectionPoolManager.getInstance().getConnectionPool(alias); *************** *** 217,220 **** --- 219,227 ---- Revision history: $Log$ + Revision 1.22 2003/04/19 12:58:40 billhorsman + fixed bug where ConfigurationListener's + definitionUpdated was getting called too + frequently + Revision 1.21 2003/03/10 23:43:12 billhorsman reapplied checkstyle that i'd inadvertently let Index: ConnectionPoolDefinition.java =================================================================== RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool/ConnectionPoolDefinition.java,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** ConnectionPoolDefinition.java 10 Apr 2003 21:50:16 -0000 1.16 --- ConnectionPoolDefinition.java 19 Apr 2003 12:58:41 -0000 1.17 *************** *** 8,12 **** import org.logicalcobwebs.logging.Log; import org.logicalcobwebs.logging.LogFactory; - import org.logicalcobwebs.concurrent.WriterPreferenceReadWriteLock; import java.sql.Driver; --- 8,11 ---- *************** *** 29,33 **** // TODO Should we check for defintion reads whilst updating? ! private static final Log LOG = LogFactory.getLog(ConnectionPoolDefinition.class); --- 28,32 ---- // TODO Should we check for defintion reads whilst updating? ! private static final Log LOG = LogFactory.getLog(ConnectionPoolDefinition.class); *************** *** 111,115 **** poolLog = LogFactory.getLog("org.logicalcobwebs.proxool." + alias); reset(); ! doChange(url, info); } --- 110,114 ---- poolLog = LogFactory.getLog("org.logicalcobwebs.proxool." + alias); reset(); ! doChange(url, info, false); } *************** *** 126,130 **** connectionPropertiesChanged = false; poolLog.debug("Updating definition"); ! doChange(url, info); if (connectionPropertiesChanged) { poolLog.info("Mercifully killing all current connections because of definition changes"); --- 125,129 ---- connectionPropertiesChanged = false; poolLog.debug("Updating definition"); ! doChange(url, info, false); if (connectionPropertiesChanged) { poolLog.info("Mercifully killing all current connections because of definition changes"); *************** *** 146,150 **** connectionPropertiesChanged = false; poolLog.debug("Redefining definition"); ! doChange(url, info); // Check for minimum information --- 145,149 ---- connectionPropertiesChanged = false; poolLog.debug("Redefining definition"); ! doChange(url, info, false); // Check for minimum information *************** *** 159,163 **** } ! private void doChange(String url, Properties info) throws ProxoolException { try { --- 158,164 ---- } ! private boolean doChange(String url, Properties info, boolean pretend) throws ProxoolException { ! ! boolean changed = false; try { *************** *** 168,179 **** final String driver = url.substring(endOfPrefix + 1, endOfDriver); if (isChanged(getDriver(), driver)) { ! logChange(true, ProxoolConstants.DELEGATE_DRIVER_PROPERTY, driver); ! setDriver(driver); } final String delegateUrl = url.substring(endOfDriver + 1); if (isChanged(getUrl(), delegateUrl)) { ! logChange(true, ProxoolConstants.DELEGATE_URL_PROPERTY, delegateUrl); ! setUrl(delegateUrl); } } else { --- 169,186 ---- final String driver = url.substring(endOfPrefix + 1, endOfDriver); if (isChanged(getDriver(), driver)) { ! changed = true; ! if (!pretend) { ! logChange(true, ProxoolConstants.DELEGATE_DRIVER_PROPERTY, driver); ! setDriver(driver); ! } } final String delegateUrl = url.substring(endOfDriver + 1); if (isChanged(getUrl(), delegateUrl)) { ! changed = true; ! if (!pretend) { ! logChange(true, ProxoolConstants.DELEGATE_URL_PROPERTY, delegateUrl); ! setUrl(delegateUrl); ! } } } else { *************** *** 185,189 **** } ! setCompleteUrl(url); if (info != null) { --- 192,198 ---- } ! if (!pretend) { ! setCompleteUrl(url); ! } if (info != null) { *************** *** 192,205 **** String key = (String) i.next(); String value = info.getProperty(key); ! setAnyProperty(key, value); ! completeInfo.setProperty(key, value); } } ! ProxoolFacade.definitionUpdated(getAlias(), this, completeInfo, changedInfo); if (getDriver() == null || getUrl() == null) { throw new ProxoolException("Attempt to use a pool with incomplete definition"); } } --- 201,220 ---- String key = (String) i.next(); String value = info.getProperty(key); ! changed = changed | setAnyProperty(key, value, pretend); ! if (!pretend) { ! completeInfo.setProperty(key, value); ! } } } ! if (!pretend) { ! ProxoolFacade.definitionUpdated(getAlias(), this, completeInfo, changedInfo); ! } if (getDriver() == null || getUrl() == null) { throw new ProxoolException("Attempt to use a pool with incomplete definition"); } + + return changed; } *************** *** 214,218 **** } ! private void setAnyProperty(String key, String value) throws ProxoolException { boolean proxoolProperty = true; --- 229,233 ---- } ! private boolean setAnyProperty(String key, String value, boolean pretend) throws ProxoolException { boolean proxoolProperty = true; *************** *** 222,226 **** if (isChanged(getUser(), value)) { changed = true; ! setUser(value); } } else if (key.equals(ProxoolConstants.PASSWORD_PROPERTY)) { --- 237,243 ---- if (isChanged(getUser(), value)) { changed = true; ! if (!pretend) { ! setUser(value); ! } } } else if (key.equals(ProxoolConstants.PASSWORD_PROPERTY)) { *************** *** 228,262 **** if (isChanged(getPassword(), value)) { changed = true; ! setPassword(value); } } else if (key.equals(ProxoolConstants.DELEGATE_DRIVER_PROPERTY)) { if (isChanged(getDriver(), value)) { changed = true; ! setDriver(value); } } else if (key.equals(ProxoolConstants.DELEGATE_URL_PROPERTY)) { if (isChanged(getUrl(), value)) { changed = true; ! setUrl(value); } } else if (key.equals(ProxoolConstants.HOUSE_KEEPING_SLEEP_TIME_PROPERTY)) { if (getHouseKeepingSleepTime() != getInt(key, value)) { changed = true; ! setHouseKeepingSleepTime(getInt(key, value)); } } else if (key.equals(ProxoolConstants.HOUSE_KEEPING_TEST_SQL_PROPERTY)) { if (isChanged(getHouseKeepingTestSql(), value)) { changed = true; ! setHouseKeepingTestSql(value); } } else if (key.equals(ProxoolConstants.MAXIMUM_CONNECTION_COUNT_PROPERTY)) { if (getMaximumConnectionCount() != getInt(key, value)) { changed = true; ! setMaximumConnectionCount(getInt(key, value)); } } else if (key.equals(ProxoolConstants.MAXIMUM_CONNECTION_LIFETIME_PROPERTY)) { if (getMaximumConnectionLifetime() != getInt(key, value)) { changed = true; ! setMaximumConnectionLifetime(getInt(key, value)); } } else if (key.equals(ProxoolConstants.MAXIMUM_NEW_CONNECTIONS_PROPERTY)) { --- 245,293 ---- if (isChanged(getPassword(), value)) { changed = true; ! if (!pretend) { ! setPassword(value); ! } } } else if (key.equals(ProxoolConstants.DELEGATE_DRIVER_PROPERTY)) { if (isChanged(getDriver(), value)) { changed = true; ! if (!pretend) { ! setDriver(value); ! } } } else if (key.equals(ProxoolConstants.DELEGATE_URL_PROPERTY)) { if (isChanged(getUrl(), value)) { changed = true; ! if (!pretend) { ! setUrl(value); ! } } } else if (key.equals(ProxoolConstants.HOUSE_KEEPING_SLEEP_TIME_PROPERTY)) { if (getHouseKeepingSleepTime() != getInt(key, value)) { changed = true; ! if (!pretend) { ! setHouseKeepingSleepTime(getInt(key, value)); ! } } } else if (key.equals(ProxoolConstants.HOUSE_KEEPING_TEST_SQL_PROPERTY)) { if (isChanged(getHouseKeepingTestSql(), value)) { changed = true; ! if (!pretend) { ! setHouseKeepingTestSql(value); ! } } } else if (key.equals(ProxoolConstants.MAXIMUM_CONNECTION_COUNT_PROPERTY)) { if (getMaximumConnectionCount() != getInt(key, value)) { changed = true; ! if (!pretend) { ! setMaximumConnectionCount(getInt(key, value)); ! } } } else if (key.equals(ProxoolConstants.MAXIMUM_CONNECTION_LIFETIME_PROPERTY)) { if (getMaximumConnectionLifetime() != getInt(key, value)) { changed = true; ! if (!pretend) { ! setMaximumConnectionLifetime(getInt(key, value)); ! } } } else if (key.equals(ProxoolConstants.MAXIMUM_NEW_CONNECTIONS_PROPERTY)) { *************** *** 264,268 **** if (getSimultaneousBuildThrottle() != getInt(key, value)) { changed = true; ! setSimultaneousBuildThrottle(getInt(key, value)); } } else if (key.equals(ProxoolConstants.SIMULTANEOUS_BUILD_THROTTLE_PROPERTY)) { --- 295,301 ---- if (getSimultaneousBuildThrottle() != getInt(key, value)) { changed = true; ! if (!pretend) { ! setSimultaneousBuildThrottle(getInt(key, value)); ! } } } else if (key.equals(ProxoolConstants.SIMULTANEOUS_BUILD_THROTTLE_PROPERTY)) { *************** *** 274,298 **** if (getMinimumConnectionCount() != getInt(key, value)) { changed = true; ! setMinimumConnectionCount(getInt(key, value)); } } else if (key.equals(ProxoolConstants.PROTOTYPE_COUNT_PROPERTY)) { if (getPrototypeCount() != getInt(key, value)) { changed = true; ! setPrototypeCount(getInt(key, value)); } } else if (key.equals(ProxoolConstants.RECENTLY_STARTED_THRESHOLD_PROPERTY)) { if (getRecentlyStartedThreshold() != getInt(key, value)) { changed = true; ! setRecentlyStartedThreshold(getInt(key, value)); } } else if (key.equals(ProxoolConstants.OVERLOAD_WITHOUT_REFUSAL_LIFETIME_PROPERTY)) { if (getOverloadWithoutRefusalLifetime() != getInt(key, value)) { changed = true; ! setOverloadWithoutRefusalLifetime(getInt(key, value)); } } else if (key.equals(ProxoolConstants.MAXIMUM_ACTIVE_TIME_PROPERTY)) { if (getMaximumActiveTime() != getInt(key, value)) { changed = true; ! setMaximumActiveTime(getInt(key, value)); } } else if (key.equals(ProxoolConstants.DEBUG_LEVEL_PROPERTY)) { --- 307,341 ---- if (getMinimumConnectionCount() != getInt(key, value)) { changed = true; ! if (!pretend) { ! setMinimumConnectionCount(getInt(key, value)); ! } } } else if (key.equals(ProxoolConstants.PROTOTYPE_COUNT_PROPERTY)) { if (getPrototypeCount() != getInt(key, value)) { changed = true; ! if (!pretend) { ! setPrototypeCount(getInt(key, value)); ! } } } else if (key.equals(ProxoolConstants.RECENTLY_STARTED_THRESHOLD_PROPERTY)) { if (getRecentlyStartedThreshold() != getInt(key, value)) { changed = true; ! if (!pretend) { ! setRecentlyStartedThreshold(getInt(key, value)); ! } } } else if (key.equals(ProxoolConstants.OVERLOAD_WITHOUT_REFUSAL_LIFETIME_PROPERTY)) { if (getOverloadWithoutRefusalLifetime() != getInt(key, value)) { changed = true; ! if (!pretend) { ! setOverloadWithoutRefusalLifetime(getInt(key, value)); ! } } } else if (key.equals(ProxoolConstants.MAXIMUM_ACTIVE_TIME_PROPERTY)) { if (getMaximumActiveTime() != getInt(key, value)) { changed = true; ! if (!pretend) { ! setMaximumActiveTime(getInt(key, value)); ! } } } else if (key.equals(ProxoolConstants.DEBUG_LEVEL_PROPERTY)) { *************** *** 301,305 **** if (!isVerbose()) { changed = true; ! setVerbose(true); } } else { --- 344,350 ---- if (!isVerbose()) { changed = true; ! if (!pretend) { ! setVerbose(true); ! } } } else { *************** *** 307,311 **** if (isVerbose()) { changed = true; ! setVerbose(false); } } --- 352,358 ---- if (isVerbose()) { changed = true; ! if (!pretend) { ! setVerbose(false); ! } } } *************** *** 314,318 **** if (isVerbose() != valueAsBoolean) { changed = true; ! setVerbose(valueAsBoolean); } } else if (key.equals(ProxoolConstants.TRACE_PROPERTY)) { --- 361,367 ---- if (isVerbose() != valueAsBoolean) { changed = true; ! if (!pretend) { ! setVerbose(valueAsBoolean); ! } } } else if (key.equals(ProxoolConstants.TRACE_PROPERTY)) { *************** *** 320,353 **** if (isTrace() != valueAsBoolean) { changed = true; ! setTrace(valueAsBoolean); } } else if (key.equals(ProxoolConstants.FATAL_SQL_EXCEPTION_PROPERTY)) { if (isChanged(fatalSqlExceptionsAsString, value)) { changed = true; ! setFatalSqlExceptionsAsString(value); } } else if (key.equals(ProxoolConstants.STATISTICS_PROPERTY)) { if (isChanged(getStatistics(), value)) { changed = true; ! setStatistics(value); } } else if (key.equals(ProxoolConstants.STATISTICS_LOG_LEVEL_PROPERTY)) { if (isChanged(getStatisticsLogLevel(), value)) { changed = true; ! setStatisticsLogLevel(value); } } else { if (isChanged(getDelegateProperty(key), value)) { changed = true; ! setDelegateProperty(key, value); } proxoolProperty = false; } ! if (changed) { logChange(proxoolProperty, key, value); changedInfo.setProperty(key, value); } } --- 369,413 ---- if (isTrace() != valueAsBoolean) { changed = true; ! if (!pretend) { ! setTrace(valueAsBoolean); ! } } } else if (key.equals(ProxoolConstants.FATAL_SQL_EXCEPTION_PROPERTY)) { if (isChanged(fatalSqlExceptionsAsString, value)) { changed = true; ! if (!pretend) { ! setFatalSqlExceptionsAsString(value); ! } } } else if (key.equals(ProxoolConstants.STATISTICS_PROPERTY)) { if (isChanged(getStatistics(), value)) { changed = true; ! if (!pretend) { ! setStatistics(value); ! } } } else if (key.equals(ProxoolConstants.STATISTICS_LOG_LEVEL_PROPERTY)) { if (isChanged(getStatisticsLogLevel(), value)) { changed = true; ! if (!pretend) { ! setStatisticsLogLevel(value); ! } } } else { if (isChanged(getDelegateProperty(key), value)) { changed = true; ! if (!pretend) { ! setDelegateProperty(key, value); ! } } proxoolProperty = false; } ! if (changed && !pretend) { logChange(proxoolProperty, key, value); changedInfo.setProperty(key, value); } + return changed; } *************** *** 391,395 **** houseKeepingSleepTime = DEFAULT_HOUSE_KEEPING_SLEEP_TIME; houseKeepingTestSql = null; ! simultaneousBuildThrottle = DEFAULT_MAXIMUM_NEW_CONNECTIONS; recentlyStartedThreshold = DEFAULT_RECENTLY_STARTED_THRESHOLD; overloadWithoutRefusalLifetime = DEFAULT_OVERLOAD_WITHOUT_REFUSAL_THRESHOLD; --- 451,455 ---- houseKeepingSleepTime = DEFAULT_HOUSE_KEEPING_SLEEP_TIME; houseKeepingTestSql = null; ! simultaneousBuildThrottle = DEFAULT_SIMULTANEOUS_BUILD_THROTTLE; recentlyStartedThreshold = DEFAULT_RECENTLY_STARTED_THRESHOLD; overloadWithoutRefusalLifetime = DEFAULT_OVERLOAD_WITHOUT_REFUSAL_THRESHOLD; *************** *** 746,752 **** this.fatalSqlExceptionsAsString = fatalSqlExceptionsAsString; fatalSqlExceptions.clear(); ! StringTokenizer st = new StringTokenizer(fatalSqlExceptionsAsString, FATAL_SQL_EXCEPTIONS_DELIMITER); ! while (st.hasMoreTokens()) { ! fatalSqlExceptions.add(st.nextToken()); } } --- 806,814 ---- this.fatalSqlExceptionsAsString = fatalSqlExceptionsAsString; fatalSqlExceptions.clear(); ! if (fatalSqlExceptionsAsString != null) { ! StringTokenizer st = new StringTokenizer(fatalSqlExceptionsAsString, FATAL_SQL_EXCEPTIONS_DELIMITER); ! while (st.hasMoreTokens()) { ! fatalSqlExceptions.add(st.nextToken()); ! } } } *************** *** 801,804 **** --- 863,900 ---- } + /** + * Returns true if {@link #redefine redefining} the pool using + * these parameters would not change the definition. You can + * use this to decide whether or not to trigger a change + * {@link ConfigurationListenerIF#definitionUpdated event}. + * + * @param url the url (containing alias and possible delegate url and driver) + * @param info the properties + * @return true if the definition is identical to that that represented by these parameters + */ + public boolean isEqual(String url, Properties info) { + try { + return doChange(url, info, true); + } catch (ProxoolException e) { + LOG.error("Problem checking equality", e); + return false; + } + /* + boolean equal = true; + + if (info == null && completeInfo != null) { + equal = false; + } else if (info != null && completeInfo == null) { + equal = false; + } else if (!info.equals(completeInfo)) { + equal = false; + } else if (!url.equals(completeUrl)) { + equal = false; + } + + return equal; + */ + } + } *************** *** 806,809 **** --- 902,910 ---- Revision history: $Log$ + Revision 1.17 2003/04/19 12:58:41 billhorsman + fixed bug where ConfigurationListener's + definitionUpdated was getting called too + frequently + Revision 1.16 2003/04/10 21:50:16 billhorsman empty constructor for use by DataSource |
From: <bil...@us...> - 2003-04-19 12:57:33
|
Update of /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv12442 Modified Files: HouseKeeperThread.java Log Message: removed redundant debug Index: HouseKeeperThread.java =================================================================== RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool/HouseKeeperThread.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** HouseKeeperThread.java 10 Mar 2003 15:26:47 -0000 1.2 --- HouseKeeperThread.java 19 Apr 2003 12:57:29 -0000 1.3 *************** *** 34,40 **** while (hk != null) { try { ! if (LOG.isDebugEnabled()) { ! LOG.debug("About to sweep " + hk.getAlias()); ! } hk.sweep(); } catch (ProxoolException e) { --- 34,40 ---- while (hk != null) { try { ! // if (LOG.isDebugEnabled()) { ! // LOG.debug("About to sweep " + hk.getAlias()); ! // } hk.sweep(); } catch (ProxoolException e) { *************** *** 62,65 **** --- 62,68 ---- Revision history: $Log$ + Revision 1.3 2003/04/19 12:57:29 billhorsman + removed redundant debug + Revision 1.2 2003/03/10 15:26:47 billhorsman refactoringn of concurrency stuff (and some import |
From: <bil...@us...> - 2003-04-10 21:50:23
|
Update of /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv19733 Modified Files: ConnectionPoolDefinition.java Log Message: empty constructor for use by DataSource Index: ConnectionPoolDefinition.java =================================================================== RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool/ConnectionPoolDefinition.java,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** ConnectionPoolDefinition.java 11 Mar 2003 14:51:49 -0000 1.15 --- ConnectionPoolDefinition.java 10 Apr 2003 21:50:16 -0000 1.16 *************** *** 95,98 **** --- 95,104 ---- /** + * So we can set the values one by one if we want + */ + public ConnectionPoolDefinition() { + } + + /** * Construct a new definition * @param url the url that defines this pool *************** *** 800,803 **** --- 806,812 ---- Revision history: $Log$ + Revision 1.16 2003/04/10 21:50:16 billhorsman + empty constructor for use by DataSource + Revision 1.15 2003/03/11 14:51:49 billhorsman more concurrency fixes relating to snapshots |
From: <bil...@us...> - 2003-04-10 21:49:39
|
Update of /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv19231 Modified Files: ProxoolFacade.java Log Message: refactored registration slightly to allow DataSource access Index: ProxoolFacade.java =================================================================== RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool/ProxoolFacade.java,v retrieving revision 1.65 retrieving revision 1.66 diff -C2 -d -r1.65 -r1.66 *** ProxoolFacade.java 11 Mar 2003 14:51:53 -0000 1.65 --- ProxoolFacade.java 10 Apr 2003 21:49:34 -0000 1.66 *************** *** 66,75 **** if (!ConnectionPoolManager.getInstance().isPoolExists(alias)) { ConnectionPoolDefinition cpd = new ConnectionPoolDefinition(url, info); ! ConnectionPool connectionPool = ConnectionPoolManager.getInstance().createConnectionPool(cpd); ! connectionPool.start(); ! compositeProxoolListener.onRegistration(cpd, cpd.getCompleteInfo()); ! if (isConfiguredForJMX(cpd.getCompleteInfo())) { ! registerForJmx(alias, cpd.getCompleteInfo()); ! } } else { throw new ProxoolException("Attempt to register duplicate pool called '" + alias + "'"); --- 66,70 ---- if (!ConnectionPoolManager.getInstance().isPoolExists(alias)) { ConnectionPoolDefinition cpd = new ConnectionPoolDefinition(url, info); ! registerConnectionPool(cpd); } else { throw new ProxoolException("Attempt to register duplicate pool called '" + alias + "'"); *************** *** 79,82 **** --- 74,86 ---- } + protected static void registerConnectionPool(ConnectionPoolDefinition connectionPoolDefinition) throws ProxoolException { + ConnectionPool connectionPool = ConnectionPoolManager.getInstance().createConnectionPool(connectionPoolDefinition); + connectionPool.start(); + compositeProxoolListener.onRegistration(connectionPoolDefinition, connectionPoolDefinition.getCompleteInfo()); + if (isConfiguredForJMX(connectionPoolDefinition.getCompleteInfo())) { + registerForJmx(connectionPoolDefinition.getAlias(), connectionPoolDefinition.getCompleteInfo()); + } + } + /** * With no configurator or properties (using default values) *************** *** 611,614 **** --- 615,621 ---- Revision history: $Log$ + Revision 1.66 2003/04/10 21:49:34 billhorsman + refactored registration slightly to allow DataSource access + Revision 1.65 2003/03/11 14:51:53 billhorsman more concurrency fixes relating to snapshots |
From: <bil...@us...> - 2003-04-10 21:49:05
|
Update of /cvsroot/proxool/proxool/src/java-test/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv18806 Modified Files: ConfigurationListenerTest.java Log Message: enhanced to trap bug where config change event gets fired all the time Index: ConfigurationListenerTest.java =================================================================== RCS file: /cvsroot/proxool/proxool/src/java-test/org/logicalcobwebs/proxool/ConfigurationListenerTest.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** ConfigurationListenerTest.java 4 Mar 2003 10:24:40 -0000 1.9 --- ConfigurationListenerTest.java 10 Apr 2003 21:48:58 -0000 1.10 *************** *** 10,13 **** --- 10,14 ---- import java.util.Properties; + import java.sql.DriverManager; /** *************** *** 87,90 **** --- 88,107 ---- mcl2.reset(); + // Check that just asking for another Connection (without config + // change) doesn't trigger another event + DriverManager.getConnection(url).close(); + assertEquals("definitionReceived", false, mcl2.isUpdateReceived()); + mcl2.reset(); + + // Now try again, but this time pass in the properties (without + // change) + LOG.debug("Getting another connection to trigger any pending config changes"); + DriverManager.getConnection(url, info).close(); + mcl2.reset(); + LOG.debug("Getting another connection which shouldn't cause another config change"); + DriverManager.getConnection(url, info).close(); + assertEquals("definitionReceived", false, mcl2.isUpdateReceived()); + mcl2.reset(); + // Remove the second listener ProxoolFacade.removeConfigurationListener(alias, mcl2); *************** *** 212,215 **** --- 229,236 ---- Revision history: $Log$ + Revision 1.10 2003/04/10 21:48:58 billhorsman + enhanced to trap bug where config change event gets fired + all the time + Revision 1.9 2003/03/04 10:24:40 billhorsman removed try blocks around each test |
From: <bil...@us...> - 2003-04-10 08:24:00
|
Update of /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv16184 Modified Files: ConnectionPool.java PrototyperThread.java Log Message: removed very frequent debug Index: ConnectionPool.java =================================================================== RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool/ConnectionPool.java,v retrieving revision 1.65 retrieving revision 1.66 diff -C2 -d -r1.65 -r1.66 *** ConnectionPool.java 11 Mar 2003 23:58:04 -0000 1.65 --- ConnectionPool.java 10 Apr 2003 08:23:54 -0000 1.66 *************** *** 643,650 **** */ protected void changeStatus(int oldStatus, int newStatus) { ! LOG.debug("About to change status"); connectionCountByState[oldStatus]--; connectionCountByState[newStatus]++; ! LOG.debug("Changing status from " + oldStatus + " to " + newStatus); // Check to see if shutdown is waiting for all connections to become // non-active --- 643,650 ---- */ protected void changeStatus(int oldStatus, int newStatus) { ! // LOG.debug("About to change status"); connectionCountByState[oldStatus]--; connectionCountByState[newStatus]++; ! // LOG.debug("Changing status from " + oldStatus + " to " + newStatus); // Check to see if shutdown is waiting for all connections to become // non-active *************** *** 892,912 **** */ protected void acquirePrimaryReadLock() throws InterruptedException { ! if (log.isDebugEnabled()) { ! try { ! throw new RuntimeException("TRACE ONLY"); ! } catch (RuntimeException e) { ! log.debug("About to acquire primary read lock", e); ! } ! // log.debug("About to acquire primary read lock"); ! } primaryReadWriteLock.readLock().acquire(); ! if (log.isDebugEnabled()) { ! try { ! throw new RuntimeException("TRACE ONLY"); ! } catch (RuntimeException e) { ! log.debug("Acquired primary read lock", e); ! } ! //log.debug("Acquired primary read lock"); ! } } --- 892,912 ---- */ protected void acquirePrimaryReadLock() throws InterruptedException { ! // if (log.isDebugEnabled()) { ! // try { ! // throw new RuntimeException("TRACE ONLY"); ! // } catch (RuntimeException e) { ! // log.debug("About to acquire primary read lock", e); ! // } ! // // log.debug("About to acquire primary read lock"); ! // } primaryReadWriteLock.readLock().acquire(); ! // if (log.isDebugEnabled()) { ! // try { ! // throw new RuntimeException("TRACE ONLY"); ! // } catch (RuntimeException e) { ! // log.debug("Acquired primary read lock", e); ! // } ! // //log.debug("Acquired primary read lock"); ! // } } *************** *** 915,923 **** */ protected void releasePrimaryReadLock() { ! try { ! throw new RuntimeException("TRACE ONLY"); ! } catch (RuntimeException e) { ! log.debug("Released primary read lock", e); ! } //log.debug("Released primary read lock"); primaryReadWriteLock.readLock().release(); --- 915,923 ---- */ protected void releasePrimaryReadLock() { ! // try { ! // throw new RuntimeException("TRACE ONLY"); ! // } catch (RuntimeException e) { ! // log.debug("Released primary read lock", e); ! // } //log.debug("Released primary read lock"); primaryReadWriteLock.readLock().release(); *************** *** 933,963 **** boolean success = false; try { ! if (log.isDebugEnabled()) { ! try { ! throw new RuntimeException("TRACE ONLY"); ! } catch (RuntimeException e) { ! log.debug("About to acquire primary write lock", e); ! } ! //log.debug("About to acquire primary write lock"); ! } primaryReadWriteLock.writeLock().acquire(); success = true; ! if (log.isDebugEnabled()) { ! try { ! throw new RuntimeException("TRACE ONLY"); ! } catch (RuntimeException e) { ! log.debug("Acquired primary write lock", e); ! } ! //log.debug("Acquired primary write lock"); ! } } finally { ! if (log.isDebugEnabled() && !success) { ! try { ! throw new RuntimeException("TRACE ONLY"); ! } catch (RuntimeException e) { ! log.debug("Failed to acquire primary write lock", e); ! } ! //log.debug("Failed to acquire primary write lock"); ! } } } --- 933,963 ---- boolean success = false; try { ! // if (log.isDebugEnabled()) { ! // try { ! // throw new RuntimeException("TRACE ONLY"); ! // } catch (RuntimeException e) { ! // log.debug("About to acquire primary write lock", e); ! // } ! // //log.debug("About to acquire primary write lock"); ! // } primaryReadWriteLock.writeLock().acquire(); success = true; ! // if (log.isDebugEnabled()) { ! // try { ! // throw new RuntimeException("TRACE ONLY"); ! // } catch (RuntimeException e) { ! // log.debug("Acquired primary write lock", e); ! // } ! // //log.debug("Acquired primary write lock"); ! // } } finally { ! // if (log.isDebugEnabled() && !success) { ! // try { ! // throw new RuntimeException("TRACE ONLY"); ! // } catch (RuntimeException e) { ! // log.debug("Failed to acquire primary write lock", e); ! // } ! // //log.debug("Failed to acquire primary write lock"); ! // } } } *************** *** 968,976 **** protected void releasePrimaryWriteLock() { primaryReadWriteLock.writeLock().release(); ! try { ! throw new RuntimeException("TRACE ONLY"); ! } catch (RuntimeException e) { ! log.debug("Released primary write lock", e); ! } //log.debug("Released primary write lock"); } --- 968,976 ---- protected void releasePrimaryWriteLock() { primaryReadWriteLock.writeLock().release(); ! // try { ! // throw new RuntimeException("TRACE ONLY"); ! // } catch (RuntimeException e) { ! // log.debug("Released primary write lock", e); ! // } //log.debug("Released primary write lock"); } *************** *** 999,1013 **** protected void acquireConnectionStatusWriteLock() { try { ! try { ! throw new RuntimeException("TRACE ONLY"); ! } catch (RuntimeException e) { ! LOG.debug("About to acquire connectionStatus write lock", e); ! } connectionStatusReadWriteLock.writeLock().acquire(); ! try { ! throw new RuntimeException("TRACE ONLY"); ! } catch (RuntimeException e) { ! LOG.debug("Acquired connectionStatus write lock", e); ! } } catch (InterruptedException e) { log.error("Couldn't acquire connectionStatus write lock", e); --- 999,1013 ---- protected void acquireConnectionStatusWriteLock() { try { ! // try { ! // throw new RuntimeException("TRACE ONLY"); ! // } catch (RuntimeException e) { ! // LOG.debug("About to acquire connectionStatus write lock", e); ! // } connectionStatusReadWriteLock.writeLock().acquire(); ! // try { ! // throw new RuntimeException("TRACE ONLY"); ! // } catch (RuntimeException e) { ! // LOG.debug("Acquired connectionStatus write lock", e); ! // } } catch (InterruptedException e) { log.error("Couldn't acquire connectionStatus write lock", e); *************** *** 1017,1032 **** protected void releaseConnectionStatusWriteLock() { connectionStatusReadWriteLock.writeLock().release(); ! try { ! throw new RuntimeException("TRACE ONLY"); ! } catch (RuntimeException e) { ! LOG.debug("Released connectionStatus write lock", e); ! } } protected void acquireConnectionStatusReadLock() { try { ! LOG.debug("About to acquire connectionStatus read lock"); connectionStatusReadWriteLock.readLock().acquire(); ! LOG.debug("Acquired connectionStatus read lock"); } catch (InterruptedException e) { log.error("Couldn't acquire connectionStatus read lock", e); --- 1017,1032 ---- protected void releaseConnectionStatusWriteLock() { connectionStatusReadWriteLock.writeLock().release(); ! // try { ! // throw new RuntimeException("TRACE ONLY"); ! // } catch (RuntimeException e) { ! // LOG.debug("Released connectionStatus write lock", e); ! // } } protected void acquireConnectionStatusReadLock() { try { ! // LOG.debug("About to acquire connectionStatus read lock"); connectionStatusReadWriteLock.readLock().acquire(); ! // LOG.debug("Acquired connectionStatus read lock"); } catch (InterruptedException e) { log.error("Couldn't acquire connectionStatus read lock", e); *************** *** 1036,1040 **** protected void releaseConnectionStatusReadLock() { connectionStatusReadWriteLock.readLock().release(); ! LOG.debug("Released connectionStatus read lock"); } --- 1036,1040 ---- protected void releaseConnectionStatusReadLock() { connectionStatusReadWriteLock.readLock().release(); ! // LOG.debug("Released connectionStatus read lock"); } *************** *** 1047,1050 **** --- 1047,1053 ---- Revision history: $Log$ + Revision 1.66 2003/04/10 08:23:54 billhorsman + removed very frequent debug + Revision 1.65 2003/03/11 23:58:04 billhorsman fixed deadlock on connection expiry Index: PrototyperThread.java =================================================================== RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool/PrototyperThread.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** PrototyperThread.java 10 Mar 2003 23:43:12 -0000 1.3 --- PrototyperThread.java 10 Apr 2003 08:23:55 -0000 1.4 *************** *** 50,56 **** } } ! if (LOG.isDebugEnabled()) { ! LOG.debug("Swept " + sweptCount + " pools"); ! } doWait(); --- 50,56 ---- } } ! // if (LOG.isDebugEnabled()) { ! // LOG.debug("Swept " + sweptCount + " pools"); ! // } doWait(); *************** *** 76,79 **** --- 76,82 ---- Revision history: $Log$ + Revision 1.4 2003/04/10 08:23:55 billhorsman + removed very frequent debug + Revision 1.3 2003/03/10 23:43:12 billhorsman reapplied checkstyle that i'd inadvertently let |
From: <bil...@us...> - 2003-04-10 08:22:39
|
Update of /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv15136 Modified Files: Prototyper.java Log Message: removed some very frequent debug Index: Prototyper.java =================================================================== RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/proxool/Prototyper.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** Prototyper.java 11 Mar 2003 14:51:52 -0000 1.4 --- Prototyper.java 10 Apr 2003 08:22:33 -0000 1.5 *************** *** 70,76 **** while (!cancel && connectionPool.isConnectionPoolUp()) { ! if (log.isDebugEnabled()) { ! log.debug("Prototyping"); ! } String reason = null; --- 70,76 ---- while (!cancel && connectionPool.isConnectionPoolUp()) { ! // if (log.isDebugEnabled()) { ! // log.debug("Prototyping"); ! // } String reason = null; *************** *** 261,264 **** --- 261,267 ---- Revision history: $Log$ + Revision 1.5 2003/04/10 08:22:33 billhorsman + removed some very frequent debug + Revision 1.4 2003/03/11 14:51:52 billhorsman more concurrency fixes relating to snapshots |
From: <bil...@us...> - 2003-03-12 22:41:10
|
Update of /cvsroot/proxool/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv31714 Removed Files: FAQ.txt Log Message: faq is just in doc now --- FAQ.txt DELETED --- |
From: <bil...@us...> - 2003-03-12 22:27:24
|
Update of /cvsroot/proxool/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv25509 Modified Files: build.xml Log Message: javadoc now runs without unnecessary compile dependency Index: build.xml =================================================================== RCS file: /cvsroot/proxool/proxool/build.xml,v retrieving revision 1.51 retrieving revision 1.52 diff -C2 -d -r1.51 -r1.52 *** build.xml 12 Mar 2003 16:46:03 -0000 1.51 --- build.xml 12 Mar 2003 22:27:20 -0000 1.52 *************** *** 393,397 **** name="javadoc" description="Produce Javadoc API for users" ! depends="init,build-src,compile"> <javadoc --- 393,397 ---- name="javadoc" description="Produce Javadoc API for users" ! depends="init"> <javadoc *************** *** 414,418 **** name="javadoc-dev" description="Produce Javadoc API for developers" ! depends="init,build-src,compile"> <javadoc --- 414,418 ---- name="javadoc-dev" description="Produce Javadoc API for developers" ! depends="init"> <javadoc |
From: <bil...@us...> - 2003-03-12 16:52:32
|
Update of /cvsroot/proxool/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv24539 Modified Files: build.xml Log Message: hide some packages from simple javadoc Index: build.xml =================================================================== RCS file: /cvsroot/proxool/proxool/build.xml,v retrieving revision 1.50 retrieving revision 1.51 diff -C2 -d -r1.50 -r1.51 *** build.xml 12 Mar 2003 15:59:34 -0000 1.50 --- build.xml 12 Mar 2003 16:46:03 -0000 1.51 *************** *** 398,402 **** sourcepath="src/java" destdir="${build-dir}/api" ! packagenames="org.logicalcobwebs.*" doctitle="Proxool API}" windowtitle="Proxool API}" --- 398,402 ---- sourcepath="src/java" destdir="${build-dir}/api" ! packagenames="org.logicalcobwebs.proxool,org.logicalcobwebs.proxool.configuration" doctitle="Proxool API}" windowtitle="Proxool API}" |
From: <bil...@us...> - 2003-03-12 15:59:58
|
Update of /cvsroot/proxool/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv701 Modified Files: CHANGES.txt Log Message: Index: CHANGES.txt =================================================================== RCS file: /cvsroot/proxool/proxool/CHANGES.txt,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** CHANGES.txt 6 Mar 2003 11:30:16 -0000 1.18 --- CHANGES.txt 12 Mar 2003 15:59:54 -0000 1.19 *************** *** 6,13 **** $Author$ ! 0.8 - scheduled for March 2003 ! - New JMX component so that you can control Proxool from your ! favourite JMX Agent (like WebLogic, JBoss, MX4J) - Fixed display bug in AdminServlet - average active time was being --- 6,13 ---- $Author$ ! 0.7.1 - scheduled for March 2003 ! - Added a lot of concurrency code - mainly using concurrent package ! written by Doug Lea. - Fixed display bug in AdminServlet - average active time was being |
From: <bil...@us...> - 2003-03-12 15:59:40
|
Update of /cvsroot/proxool/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv533 Modified Files: build.xml Log Message: cleaning up Index: build.xml =================================================================== RCS file: /cvsroot/proxool/proxool/build.xml,v retrieving revision 1.49 retrieving revision 1.50 diff -C2 -d -r1.49 -r1.50 *** build.xml 11 Mar 2003 14:58:30 -0000 1.49 --- build.xml 12 Mar 2003 15:59:34 -0000 1.50 *************** *** 23,31 **** <property name="debug" value="true"/> - <!-- Current version e.g. 0.6.* --> - <property name="version" value="0.7.*"/> - <!-- Currect release, e.g. 0.6 --> ! <property name="release" value="0.7"/> <!-- Currect release, e.g. 0.6 --> --- 23,28 ---- <property name="debug" value="true"/> <!-- Currect release, e.g. 0.6 --> ! <property name="release" value="0.7.1"/> <!-- Currect release, e.g. 0.6 --> *************** *** 182,186 **** name="build-src" description="Gathers the source code together ready for compiling" ! depends="init,evaluate-properties" > <antcall target="build-src-jdk1.2"/> --- 179,183 ---- name="build-src" description="Gathers the source code together ready for compiling" ! depends="clean,init,evaluate-properties" > <antcall target="build-src-jdk1.2"/> *************** *** 189,192 **** --- 186,208 ---- <antcall target="build-src-jdk1.5"/> <antcall target="build-src-test"/> + <antcall target="version-stamp"/> + + </target> + + <target + name="version-stamp" + if="version" + > + <replace + file="${build-dir}/src/java/org/logicalcobwebs/proxool/Version.java" + token="VERSION = null" + value='VERSION = "${release}"' + /> + + <replace + file="${build-dir}/src/java/org/logicalcobwebs/proxool/Version.java" + token="BUILD_DATE = null" + value='BUILD_DATE = "${TODAY}"' + /> </target> *************** *** 213,217 **** > <manifest file="${build-dir}/etc/MANIFEST.MF"> ! <attribute name="Proxool-Version" value="${version}"/> <attribute name="Date" value="${TODAY}"/> </manifest> --- 229,233 ---- > <manifest file="${build-dir}/etc/MANIFEST.MF"> ! <attribute name="Proxool-Version" value="${release}"/> <attribute name="Date" value="${TODAY}"/> </manifest> *************** *** 266,270 **** <copy todir="${build-dir}/src/java" preservelastmodified="yes"> <fileset dir="src/java" includes="**/*.java"/> - <fileset dir="src/java-sandbox" includes="**/*.java"/> </copy> </target> --- 282,285 ---- *************** *** 307,310 **** --- 322,326 ---- depends="clean,init,build-test,deleteTestDb" > + <!-- <java fork="yes" classpathref="source" classname="junit.textui.TestRunner" > <sysproperty key="log4jPath" value="${log4jPath}"/> *************** *** 312,315 **** --- 328,342 ---- <jvmarg line="${jvmargs}"/> </java> + --> + <junit fork="true" printsummary="yes"> + <classpath refid="source"/> + <sysproperty key="log4jPath" value="${log4jPath}"/> + <batchtest todir="${build-dir}/reports"> + <fileset dir="src/java-test" + includes="**/*Test.java" + excludes="**/GlobalTest.java,**/AbstractProxoolTest.java" + /> + </batchtest> + </junit> </target> *************** *** 365,372 **** <target name="javadoc" ! description="Produce Javadoc API" depends="init,build-src,compile"> - <!-- Full documentation for use by developers --> <javadoc destdir="${build-dir}/api-dev" --- 392,419 ---- <target name="javadoc" ! description="Produce Javadoc API for users" ! depends="init,build-src,compile"> ! ! <javadoc ! sourcepath="src/java" ! destdir="${build-dir}/api" ! packagenames="org.logicalcobwebs.*" ! doctitle="Proxool API}" ! windowtitle="Proxool API}" ! public="true" ! /> ! ! <!-- Copy dtd's over to the doc. --> ! <copy todir="${build-dir}/api"> ! <fileset dir="src/java" includes="**/*.dtd"/> ! </copy> ! ! </target> ! ! <target ! name="javadoc-dev" ! description="Produce Javadoc API for developers" depends="init,build-src,compile"> <javadoc destdir="${build-dir}/api-dev" *************** *** 381,400 **** </javadoc> - <!-- Simple documentation for use by users --> - <javadoc - sourcepath="src/java" - destdir="${build-dir}/api" - packagenames="org.logicalcobwebs.*" - doctitle="Proxool API}" - windowtitle="Proxool API}" - public="true" - /> <!-- Copy dtd's over to the doc. --> - <copy todir="${build-dir}/api"> - <fileset dir="src/java" includes="**/*.dtd"/> - </copy> <copy todir="${build-dir}/api-dev"> <fileset dir="src/java" includes="**/*.dtd"/> </copy> </target> --- 428,436 ---- </javadoc> <!-- Copy dtd's over to the doc. --> <copy todir="${build-dir}/api-dev"> <fileset dir="src/java" includes="**/*.dtd"/> </copy> + </target> |
From: <bil...@us...> - 2003-03-11 14:59:07
|
Update of /cvsroot/proxool/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv13785 Modified Files: build.xml Log Message: put PerformanceTest back in the global test Index: build.xml =================================================================== RCS file: /cvsroot/proxool/proxool/build.xml,v retrieving revision 1.48 retrieving revision 1.49 diff -C2 -d -r1.48 -r1.49 *** build.xml 10 Mar 2003 17:05:05 -0000 1.48 --- build.xml 11 Mar 2003 14:58:30 -0000 1.49 *************** *** 326,330 **** <fileset dir="src/java-test" includes="**/*Test.java" ! excludes="**/ThreadTest.java,**/PerformanceTest.java,**/GlobalTest.java,**/AbstractProxoolTest.java" /> </batchtest> --- 326,330 ---- <fileset dir="src/java-test" includes="**/*Test.java" ! excludes="**/GlobalTest.java,**/AbstractProxoolTest.java" /> </batchtest> |
From: <bil...@us...> - 2003-03-10 17:05:13
|
Update of /cvsroot/proxool/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv13500 Modified Files: build.xml Log Message: exclude concurrent from checkstyle, and java-sandbox from build Index: build.xml =================================================================== RCS file: /cvsroot/proxool/proxool/build.xml,v retrieving revision 1.47 retrieving revision 1.48 diff -C2 -d -r1.47 -r1.48 *** build.xml 7 Mar 2003 14:45:01 -0000 1.47 --- build.xml 10 Mar 2003 17:05:05 -0000 1.48 *************** *** 145,149 **** <checkstyle> ! <fileset dir="src/java" includes="**/*.java"/> <fileset dir="src/java-examples" includes="**/*.java"/> <fileset dir="src/java-sandbox" includes="**/*.java"/> --- 145,149 ---- <checkstyle> ! <fileset dir="src/java" includes="**/*.java" excludes="**/concurrent/*"/> <fileset dir="src/java-examples" includes="**/*.java"/> <fileset dir="src/java-sandbox" includes="**/*.java"/> *************** *** 266,269 **** --- 266,270 ---- <copy todir="${build-dir}/src/java" preservelastmodified="yes"> <fileset dir="src/java" includes="**/*.java"/> + <fileset dir="src/java-sandbox" includes="**/*.java"/> </copy> </target> |
From: <bil...@us...> - 2003-03-07 14:45:12
|
Update of /cvsroot/proxool/proxool In directory sc8-pr-cvs1:/tmp/cvs-serv24572 Modified Files: build.xml Log Message: changed font size Index: build.xml =================================================================== RCS file: /cvsroot/proxool/proxool/build.xml,v retrieving revision 1.46 retrieving revision 1.47 diff -C2 -d -r1.46 -r1.47 *** build.xml 7 Mar 2003 14:43:59 -0000 1.46 --- build.xml 7 Mar 2003 14:45:01 -0000 1.47 *************** *** 350,353 **** --- 350,359 ---- <replace file="${build-dir}/reports/${junit-report-name}" + token="68%" + value="100%" + /> + + <replace + file="${build-dir}/reports/${junit-report-name}" token='Designed for use with <a href="http://www.junit.org">JUnit</a> and <a href="http://jakarta.apache.org/ant">Ant</a>.' value='${TODAY_FULL}' |