donaldp 2002/09/30 02:38:49 Modified: monitor build.xml default.properties monitor/src/java/org/apache/avalon/excalibur/monitor/impl ActiveMonitor.java Log: Make the stopping logic for ActiveMonitor actually work. (Also fixup some build issues resulting from changes in ECM). Submitted By: Greg Steuck <[EMAIL PROTECTED]> Revision Changes Path 1.24 +3 -0 jakarta-avalon-excalibur/monitor/build.xml Index: build.xml =================================================================== RCS file: /home/cvs/jakarta-avalon-excalibur/monitor/build.xml,v retrieving revision 1.23 retrieving revision 1.24 diff -u -r1.23 -r1.24 --- build.xml 10 Aug 2002 21:14:35 -0000 1.23 +++ build.xml 30 Sep 2002 09:38:49 -0000 1.24 @@ -35,6 +35,8 @@ <pathelement location="${excalibur-component.jar}"/> <pathelement location="${excalibur-collections.jar}"/> <pathelement location="${excalibur-pool.jar}"/> + <pathelement location="${excalibur-instrument.jar}"/> + <pathelement location="${excalibur-container.jar}"/> <path refid="project.class.path"/> </path> <property name="cp" refid="test.class.path"/> @@ -58,6 +60,7 @@ <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkTestcase"/> <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkComponent"/> <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkCollections"/> + <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkInstrument"/> <ant antfile="${depchecker.prefix}/depchecker.xml" target="checkPool"/> </target> 1.12 +10 -0 jakarta-avalon-excalibur/monitor/default.properties Index: default.properties =================================================================== RCS file: /home/cvs/jakarta-avalon-excalibur/monitor/default.properties,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- default.properties 7 Aug 2002 16:33:23 -0000 1.11 +++ default.properties 30 Sep 2002 09:38:49 -0000 1.12 @@ -59,6 +59,16 @@ excalibur-collections.lib=${excalibur-collections.home} excalibur-collections.jar=${excalibur-collections.lib}/excalibur-collections-1.0.jar +# ----- Excalibur container, version 1.0 or later ----- +excalibur-container.home=${basedir}/../container/dist +excalibur-container.lib=${excalibur-container.home} +excalibur-container.jar=${excalibur-container.lib}/excalibur-container-1.0.jar + +# ----- Excalibur collections, version 1.0 or later ----- +excalibur-instrument.home=${basedir}/../instrument/dist +excalibur-instrument.lib=${excalibur-instrument.home} +excalibur-instrument.jar=${excalibur-instrument.lib}/excalibur-instrument-0.3.jar + # -------------------------------------------------- 1.4 +9 -20 jakarta-avalon-excalibur/monitor/src/java/org/apache/avalon/excalibur/monitor/impl/ActiveMonitor.java Index: ActiveMonitor.java =================================================================== RCS file: /home/cvs/jakarta-avalon-excalibur/monitor/src/java/org/apache/avalon/excalibur/monitor/impl/ActiveMonitor.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- ActiveMonitor.java 8 Sep 2002 00:02:45 -0000 1.3 +++ ActiveMonitor.java 30 Sep 2002 09:38:49 -0000 1.4 @@ -42,7 +42,7 @@ /** * Set to false to shutdown the thread. */ - private boolean m_keepRunning = true; + private volatile boolean m_keepRunning = true; /** * Set the frequency with which the monitor @@ -80,35 +80,24 @@ throws Exception { m_keepRunning = false; + m_monitorThread.interrupt(); m_monitorThread.join(); } public final void run() { - while( m_keepRunning ) + try { - long currentTestTime = System.currentTimeMillis(); - final long sleepTillTime = currentTestTime + m_frequency; - - while( (currentTestTime = System.currentTimeMillis()) < sleepTillTime ) + while( m_keepRunning ) { - delay( sleepTillTime - currentTestTime ); + Thread.sleep( m_frequency ); + scanAllResources(); } - - scanAllResources(); - } - } - - private void delay( final long delay ) - { - try - { - Thread.sleep( delay ); } catch( InterruptedException e ) { - // ignore interrupted exception and keep sleeping until it's - // time to wake up + // clears the interrupted status + Thread.interrupted(); } } }
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>