[prev in list] [next in list] [prev in thread] [next in thread]
List: jakarta-commons-dev
Subject: svn commit: r616771 - in /commons/sandbox/monitoring/trunk: ./
From: nicolas () apache ! org
Date: 2008-01-30 14:24:11
Message-ID: 20080130142423.47EB41A983A () eris ! apache ! org
[Download RAW message or body]
Author: nicolas
Date: Wed Jan 30 06:24:08 2008
New Revision: 616771
URL: http://svn.apache.org/viewvc?rev=616771&view=rev
Log:
- Composite statValues implementation & test case
- DefaultRepository to user CompositeValuesMonitor
- Value Listener+ Threshold implementation
Added:
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/listeners/
- copied from r616198, \
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/events/ \
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/listeners/ThresholdListener.java \
(with props) commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/CompositeValuesMonitorTest.java \
(with props) commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/ThreadSafeCounterTest.java
- copied, changed from r616742, \
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/SimpleCounterTest.java
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/ThreadSafeGaugeTest.java
- copied, changed from r616742, \
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/SimpleGaugeTest.java
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/listener/
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/listener/ThresholdListenerTest.java \
(with props) Removed:
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/SimpleCounterTest.java
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/SimpleGaugeTest.java
Modified:
commons/sandbox/monitoring/trunk/pom.xml
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/StatValue.java
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/AbstractMonitor.java
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/AbstractStatValue.java
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/CompositeValuesMonitor.java
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/CreateValuesOnDemandMonitor.java
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/DefaultRepository.java
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/ThreadSafeCounter.java
commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/ThreadSafeGauge.java
commons/sandbox/monitoring/trunk/src/site/site.xml
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/MonitoringTest.java
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/reporting/RendererTest.java
Modified: commons/sandbox/monitoring/trunk/pom.xml
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/pom.xml?rev=616771&r1=616770&r2=616771&view=diff
==============================================================================
--- commons/sandbox/monitoring/trunk/pom.xml (original)
+++ commons/sandbox/monitoring/trunk/pom.xml Wed Jan 30 06:24:08 2008
@@ -74,19 +74,19 @@
<build>
<plugins>
<!-- TODO : investigate OSGi support
- <plugin>
+ <plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>1.2.0</version>
<extensions>true</extensions>
<configuration>
- <excludeDependencies>true</excludeDependencies>
- <instructions>
- <Bundle-SymbolicName>org.apache.commons.monitoring</Bundle-SymbolicName>
- <Export-Package>org.apache.commons.monitoring;version=${project.version}</Export-Package>
- </instructions>
+ <excludeDependencies>true</excludeDependencies>
+ <instructions>
+ <Bundle-SymbolicName>org.apache.commons.monitoring</Bundle-SymbolicName>
+ <Export-Package>org.apache.commons.monitoring;version=${project.version}</Export-Package>
+ </instructions>
</configuration>
- </plugin>
+ </plugin>
-->
<plugin>
<artifactId>maven-jar-plugin</artifactId>
@@ -100,87 +100,81 @@
</plugin>
<!--
- FIXME waiting for Retrotranslator 1.2.4 to get deployed on central
- <plugin>
+ FIXME waiting for Retrotranslator 1.2.4 to get deployed on central
+ <plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.1</version>
<executions>
- <execution>
- <id>backport</id>
- <phase>package</phase>
- <goals>
- <goal>run</goal>
- </goals>
- <configuration>
- <tasks>
- <mkdir dir="${basedir}/target/backport" />
- <java classname="net.sf.retrotranslator.transformer.Retrotranslator" \
failonerror="true">
- <classpath>
- <path refid="maven.plugin.classpath" />
- <path refid="maven.compile.classpath" />
- </classpath>
- <arg value="-smart" />
- <arg value="-srcdir" />
- <arg value="${basedir}/target/classes" />
- <arg value="-destdir" />
- <arg value="${basedir}/target/backport" />
- <arg value="-target" />
- <arg value="1.3" />
- <arg value="-backport" />
- <arg
- \
value="java.util.concurrent:edu.emory.mathcs.backport.java.util.concurrent;
- java.lang.System.nanoTime:edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils.nanoTime;
- java.lang.StringBuilder:java.lang.StringBuffer;
- org.apache.commons.monitoring.support.java13;" />
- </java>
- </tasks>
- </configuration>
- </execution>
+ <execution>
+ <id>backport</id>
+ <phase>package</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <tasks>
+ <mkdir dir="${basedir}/target/backport" />
+ <java classname="net.sf.retrotranslator.transformer.Retrotranslator" \
failonerror="true"> + <classpath>
+ <path refid="maven.plugin.classpath" />
+ <path refid="maven.compile.classpath" />
+ </classpath>
+ <arg value="-smart" />
+ <arg value="-srcdir" />
+ <arg value="${basedir}/target/classes" />
+ <arg value="-destdir" />
+ <arg value="${basedir}/target/backport" />
+ <arg value="-target" />
+ <arg value="1.3" />
+ <arg value="-backport" />
+ <arg
+ value="java.util.concurrent:edu.emory.mathcs.backport.java.util.concurrent;
+ java.lang.System.nanoTime:edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils.nanoTime;
+ java.lang.StringBuilder:java.lang.StringBuffer;
+ org.apache.commons.monitoring.support.java13;" />
+ </java>
+ </tasks>
+ </configuration>
+ </execution>
</executions>
<dependencies>
- <dependency>
- <groupId>net.sf.retrotranslator</groupId>
- <artifactId>retrotranslator-transformer</artifactId>
- <version>1.2.4</version>
- <scope>system</scope>
- <systemPath>
- ${basedir}/lib/retrotranslator-transformer-1.2.4.jar
- </systemPath>
- </dependency>
- <dependency>
- <groupId>net.sf.retrotranslator</groupId>
- <artifactId>retrotranslator-runtime</artifactId>
- <version>1.2.4</version>
- <scope>system</scope>
- <systemPath>
- ${basedir}/lib/retrotranslator-runtime-1.2.4.jar
- </systemPath>
- </dependency>
- <dependency>
- <groupId>backport-util-concurrent</groupId>
- <artifactId>backport-util-concurrent</artifactId>
- <version>3.1</version>
- </dependency>
+ <dependency>
+ <groupId>net.sf.retrotranslator</groupId>
+ <artifactId>retrotranslator-transformer</artifactId>
+ <version>1.2.4</version>
+ <scope>system</scope>
+ </dependency>
+ <dependency>
+ <groupId>net.sf.retrotranslator</groupId>
+ <artifactId>retrotranslator-runtime</artifactId>
+ <version>1.2.4</version>
+ <scope>system</scope>
+ </dependency>
+ <dependency>
+ <groupId>backport-util-concurrent</groupId>
+ <artifactId>backport-util-concurrent</artifactId>
+ <version>3.1</version>
+ </dependency>
</dependencies>
- </plugin>
- <plugin>
+ </plugin>
+ <plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-1</version>
<executions>
- <execution>
- <id>backport</id>
- <phase>package</phase>
- <goals>
- <goal>attached</goal>
- </goals>
- <configuration>
- <descriptors>
- <descriptor>src/assembly/backport.xml</descriptor>
- </descriptors>
- </configuration>
- </execution>
+ <execution>
+ <id>backport</id>
+ <phase>package</phase>
+ <goals>
+ <goal>attached</goal>
+ </goals>
+ <configuration>
+ <descriptors>
+ <descriptor>src/assembly/backport.xml</descriptor>
+ </descriptors>
+ </configuration>
+ </execution>
</executions>
- </plugin> -->
+ </plugin> -->
</plugins>
</build>
@@ -197,5 +191,17 @@
<maven.compile.source>1.5</maven.compile.source>
<maven.compile.target>1.5</maven.compile.target>
</properties>
+
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-pmd-plugin</artifactId>
+ <configuration>
+ <targetJdk>1.5</targetJdk>
+ </configuration>
+ </plugin>
+ </plugins>
+ </reporting>
</project>
Modified: commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/StatValue.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/StatValue.java?rev=616771&r1=616770&r2=616771&view=diff
==============================================================================
--- commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/StatValue.java \
(original)
+++ commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/StatValue.java \
Wed Jan 30 06:24:08 2008 @@ -78,10 +78,13 @@
void removeListener( Listener listener );
+ /**
+ * Listener for StatValue events
+ *
+ * @author <a href="mailto:nicolas@apache.org">Nicolas De Loof</a>
+ */
public static interface Listener
{
- long getThreshold();
-
- void exceeded( StatValue value, long l );
+ void onValueChanged( StatValue value, long l );
}
}
Modified: commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/AbstractMonitor.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/main/java/org/a \
pache/commons/monitoring/impl/AbstractMonitor.java?rev=616771&r1=616770&r2=616771&view=diff
==============================================================================
--- commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/AbstractMonitor.java \
(original)
+++ commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/AbstractMonitor.java \
Wed Jan 30 06:24:08 2008 @@ -36,17 +36,6 @@
/**
* Constructor
- * @param name monitor name
- * @param category monitor (technical) category
- * @param subsystem monitor (functional) subsystem
- */
- public AbstractMonitor( String name, String category, String subsystem )
- {
- this( new Key( name, category, subsystem ) );
- }
-
- /**
- * Constructor
* @param key the monitor identifier
*/
public AbstractMonitor( Key key )
Modified: commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/AbstractStatValue.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/main/java/org/a \
pache/commons/monitoring/impl/AbstractStatValue.java?rev=616771&r1=616770&r2=616771&view=diff
==============================================================================
--- commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/AbstractStatValue.java \
(original)
+++ commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/AbstractStatValue.java \
Wed Jan 30 06:24:08 2008 @@ -90,15 +90,12 @@
hits++;
}
- protected void notifyValueChanged( long l )
+ protected void fireValueChanged( long l )
{
- // Notify listeners if Threshold exceeded
+ // Notify listeners
for ( Listener listener : listeners )
{
- if ( listener.getThreshold() < l )
- {
- listener.exceeded( this, l );
- }
+ listener.onValueChanged( this, l );
}
}
Modified: commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/CompositeValuesMonitor.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/main/java/org/a \
pache/commons/monitoring/impl/CompositeValuesMonitor.java?rev=616771&r1=616770&r2=616771&view=diff
==============================================================================
--- commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/CompositeValuesMonitor.java \
(original)
+++ commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/CompositeValuesMonitor.java \
Wed Jan 30 06:24:08 2008 @@ -33,11 +33,6 @@
super( key );
}
- public CompositeValuesMonitor( String name, String category, String subsystem )
- {
- super( name, category, subsystem );
- }
-
@Override
protected Counter newCounterInstance()
{
Modified: commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/CreateValuesOnDemandMonitor.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/main/java/org/a \
pache/commons/monitoring/impl/CreateValuesOnDemandMonitor.java?rev=616771&r1=616770&r2=616771&view=diff
==============================================================================
--- commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/CreateValuesOnDemandMonitor.java \
(original)
+++ commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/CreateValuesOnDemandMonitor.java \
Wed Jan 30 06:24:08 2008 @@ -19,10 +19,9 @@
import org.apache.commons.monitoring.Counter;
import org.apache.commons.monitoring.Gauge;
-import org.apache.commons.monitoring.Monitor;
/**
- * implementation of the {@link Monitor} interface that creates StatValues on
+ * implementation of the <code>Monitor</code> interface that creates StatValues on
* demand. The application can request for Counters/Gauges without having to
* handle instantiation of monitors with all required StatValues pre-registered.
*
@@ -35,11 +34,6 @@
public CreateValuesOnDemandMonitor( Key key )
{
super( key );
- }
-
- public CreateValuesOnDemandMonitor( String name, String category, String \
subsystem )
- {
- super( name, category, subsystem );
}
/**
Modified: commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/DefaultRepository.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/main/java/org/a \
pache/commons/monitoring/impl/DefaultRepository.java?rev=616771&r1=616770&r2=616771&view=diff
==============================================================================
--- commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/DefaultRepository.java \
(original)
+++ commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/DefaultRepository.java \
Wed Jan 30 06:24:08 2008 @@ -92,10 +92,7 @@
if ( monitor == null )
{
monitor = newMonitorInstance( key );
- for ( Listener listener : listeners )
- {
- listener.newMonitorInstance( monitor );
- }
+
Monitor previous = monitors.putIfAbsent( key, monitor );
if ( previous != null )
{
@@ -108,7 +105,7 @@
protected Monitor newMonitorInstance( Monitor.Key key )
{
Monitor monitor;
- monitor = new CreateValuesOnDemandMonitor( key );
+ monitor = new CompositeValuesMonitor( key );
return monitor;
}
Modified: commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/ThreadSafeCounter.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/main/java/org/a \
pache/commons/monitoring/impl/ThreadSafeCounter.java?rev=616771&r1=616770&r2=616771&view=diff
==============================================================================
--- commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/ThreadSafeCounter.java \
(original)
+++ commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/ThreadSafeCounter.java \
Wed Jan 30 06:24:08 2008 @@ -60,7 +60,7 @@
value = l;
computeStats( l );
}
- notifyValueChanged( l );
+ fireValueChanged( l );
}
public void add( long delta )
@@ -70,7 +70,7 @@
value += delta;
computeStats( delta );
}
- notifyValueChanged( delta );
+ fireValueChanged( delta );
}
@Override
@@ -96,8 +96,7 @@
@Override
public long getSum()
{
- // TODO Auto-generated method stub
- return 0;
+ return sum;
}
}
Modified: commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/ThreadSafeGauge.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/main/java/org/a \
pache/commons/monitoring/impl/ThreadSafeGauge.java?rev=616771&r1=616770&r2=616771&view=diff
==============================================================================
--- commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/ThreadSafeGauge.java \
(original)
+++ commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/impl/ThreadSafeGauge.java \
Wed Jan 30 06:24:08 2008 @@ -55,7 +55,7 @@
public void increment()
{
long l = threadSafeIncrement();
- notifyValueChanged( l );
+ fireValueChanged( l );
}
protected synchronized long threadSafeIncrement()
@@ -70,7 +70,7 @@
public void add( long delta )
{
long l = trheadSageAdd( delta );
- notifyValueChanged( l );
+ fireValueChanged( l );
}
protected synchronized long trheadSageAdd( long delta )
@@ -85,8 +85,8 @@
public void decrement()
{
- long l = threadSafeDecrement();;
- notifyValueChanged( l );
+ long l = threadSafeDecrement();
+ fireValueChanged( l );
}
protected synchronized long threadSafeDecrement()
@@ -129,8 +129,7 @@
@Override
protected long getSquares()
{
- // TODO Auto-generated method stub
- return 0;
+ return sumOfSquares;
}
@Override
@@ -147,7 +146,7 @@
public void set( long l )
{
threadSafeSet( l );
- notifyValueChanged( l );
+ fireValueChanged( l );
}
protected synchronized void threadSafeSet( long l )
Added: commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/listeners/ThresholdListener.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/listeners/ThresholdListener.java?rev=616771&view=auto
==============================================================================
--- commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/listeners/ThresholdListener.java \
(added)
+++ commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/listeners/ThresholdListener.java \
Wed Jan 30 06:24:08 2008 @@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.apache.commons.monitoring.listeners;
+
+import org.apache.commons.monitoring.StatValue;
+import org.apache.commons.monitoring.StatValue.Listener;
+
+/**
+ * @author <a href="mailto:nicolas@apache.org">Nicolas De Loof</a>
+ */
+public abstract class ThresholdListener
+ implements Listener
+{
+ public abstract long getThreshold();
+
+ public final void onValueChanged( StatValue value, long l )
+ {
+ if ( l > getThreshold() )
+ {
+ exceed( value, l );
+ }
+ }
+
+ public abstract void exceed( StatValue value, long l );
+}
Propchange: commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/listeners/ThresholdListener.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/listeners/ThresholdListener.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Propchange: commons/sandbox/monitoring/trunk/src/main/java/org/apache/commons/monitoring/listeners/ThresholdListener.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: commons/sandbox/monitoring/trunk/src/site/site.xml
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/site/site.xml?rev=616771&r1=616770&r2=616771&view=diff
==============================================================================
--- commons/sandbox/monitoring/trunk/src/site/site.xml (original)
+++ commons/sandbox/monitoring/trunk/src/site/site.xml Wed Jan 30 06:24:08 2008
@@ -17,18 +17,17 @@
-->
<project name="Monitoring">
- <!--
<bannerRight>
<name>Commons Monitoring</name>
<src>/images/logo.png</src>
<href>/index.html</href>
</bannerRight>
- -->
<body>
<menu name="Monitoring">
<item name="Overview" href="/index.html"/>
<item name="Proposal" href="/PROPOSAL.html"/>
+ <item name="Tutorial" href="/tutorial.html"/>
<item name="Wiki" \
href="http://wiki.apache.org/commons/Monitoring"/> </menu>
Modified: commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/MonitoringTest.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/test/java/org/a \
pache/commons/monitoring/MonitoringTest.java?rev=616771&r1=616770&r2=616771&view=diff \
==============================================================================
--- commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/MonitoringTest.java \
(original)
+++ commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/MonitoringTest.java \
Wed Jan 30 06:24:08 2008 @@ -32,7 +32,7 @@
extends TestCase
{
- public void testConcurrencyMonitoring()
+ public void testStopWatchConcurrencyMonitoring()
throws Exception
{
Monitoring.setRepository( new DefaultRepository() );
@@ -65,7 +65,7 @@
{
public void run()
{
- for ( int i = 0; i < loops; i++ )
+ for ( int j = 0; j < loops; j++ )
{
Monitor monitor = Monitoring.getMonitor( \
"MonitoringTest.testMultiThreading", "test", "utils" ); monitor.getCounter( \
"COUNTER" ).add( 1 ); @@ -89,48 +89,6 @@
assertEquals( threads * loops, monitor.getCounter( "COUNTER" ).getHits() );
assertEquals( threads * loops, monitor.getCounter( "COUNTER" ).get() );
assertEquals( threads * loops, monitor.getGauge( "GAUGE" ).get() );
- }
-
- public void testCounterListeners()
- throws Exception
- {
- Repository repository = new DefaultRepository();
- final Monitor monitor = repository.getMonitor( \
"MonitoringTest.testMonitoring", "test", "utils" );
- Counter counter = monitor.getCounter( Monitor.PERFORMANCES );
-
- TestListener listener = new TestListener( monitor );
- counter.addListener( listener );
-
- counter.add( 1 );
- assertEquals( "unexpected listener notification", 0, listener.count );
- counter.add( 10 );
- assertEquals( "listener didn't get notified", 1, listener.count );
- }
-
- private final class TestListener
- implements StatValue.Listener
- {
- private final Monitor monitor;
-
- long count = 0;
-
- private TestListener( Monitor monitor )
- {
- this.monitor = monitor;
- }
-
- public void exceeded( StatValue value, long l )
- {
- count++;
- assertEquals( 10, l );
- assertEquals( Monitor.PERFORMANCES, value.getRole() );
- assertEquals( monitor, value.getMonitor() );
- }
-
- public long getThreshold()
- {
- return 5;
- }
}
}
Added: commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/CompositeValuesMonitorTest.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/test/java/org/a \
pache/commons/monitoring/impl/CompositeValuesMonitorTest.java?rev=616771&view=auto \
==============================================================================
--- commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/CompositeValuesMonitorTest.java \
(added)
+++ commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/CompositeValuesMonitorTest.java \
Wed Jan 30 06:24:08 2008 @@ -0,0 +1,114 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.apache.commons.monitoring.impl;
+
+import org.apache.commons.monitoring.Composite;
+import org.apache.commons.monitoring.Counter;
+import org.apache.commons.monitoring.Gauge;
+import org.apache.commons.monitoring.Monitor;
+
+import junit.framework.TestCase;
+
+;
+
+/**
+ * Test for basic Monitor behaviour
+ *
+ * @author <a href="mailto:nicolas@apache.org">Nicolas De Loof</a>
+ */
+public class CompositeValuesMonitorTest
+ extends TestCase
+{
+ public void testReset()
+ throws Exception
+ {
+ Monitor monitor = new CompositeValuesMonitor( new Monitor.Key( \
"MonitorTest.testReset", "test", "utils" ) ); + Counter counter = \
monitor.getCounter( Monitor.PERFORMANCES ); + counter.add( 1 );
+ assertEquals( 1, counter.get() );
+
+ monitor.reset();
+ assertEquals( 0, counter.get() );
+ }
+
+ public void testCompositeCounter()
+ throws Exception
+ {
+ Monitor monitor = new CompositeValuesMonitor( new Monitor.Key( \
"MonitorTest.testComposite", "test", "utils" ) ); + Counter counter = \
monitor.getCounter( "COUNTER" ); + Counter secondary = new \
ThreadSafeCounter(); + Composite<Counter> composite = (Composite<Counter>) \
counter; +
+ counter.add( 1 );
+ assertEquals( 1, counter.get() );
+ assertEquals( 0, secondary.get() );
+
+ composite.addSecondary( secondary );
+ counter.add( 1 );
+ assertEquals( 2, counter.get() );
+ assertEquals( 1, secondary.get() );
+
+ counter.set( 3 );
+ assertEquals( 3, counter.get() );
+ assertEquals( 3, secondary.get() );
+
+ composite.removeSecondary( secondary );
+ counter.add( 1 );
+ assertEquals( 4, counter.get() );
+ assertEquals( 3, secondary.get() );
+ }
+
+ public void testCompositeGauge()
+ throws Exception
+ {
+ Monitor monitor = new CompositeValuesMonitor( new Monitor.Key( \
"MonitorTest.testComposite", "test", "utils" ) ); + Gauge gauge = \
monitor.getGauge( "GAUGE" ); + Gauge secondary = new ThreadSafeGauge();
+ Composite<Gauge> composite = (Composite<Gauge>) gauge;
+
+ gauge.increment();
+ assertEquals( 1, gauge.get() );
+ assertEquals( 0, secondary.get() );
+
+ composite.addSecondary( secondary );
+ gauge.increment();
+ assertEquals( 2, gauge.get() );
+ assertEquals( 2, secondary.get() );
+
+ gauge.set( 3 );
+ assertEquals( 3, gauge.get() );
+ assertEquals( 3, secondary.get() );
+
+ gauge.add( 2 );
+ assertEquals( 5, gauge.get() );
+ assertEquals( 5, secondary.get() );
+
+ gauge.increment();
+ assertEquals( 6, gauge.get() );
+ assertEquals( 6, secondary.get() );
+
+ gauge.decrement();
+ assertEquals( 5, gauge.get() );
+ assertEquals( 5, secondary.get() );
+
+ composite.removeSecondary( secondary );
+ gauge.decrement();
+ assertEquals( 4, gauge.get() );
+ assertEquals( 5, secondary.get() );
+ }
+}
Propchange: commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/CompositeValuesMonitorTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/CompositeValuesMonitorTest.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Propchange: commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/CompositeValuesMonitorTest.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Copied: commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/ThreadSafeCounterTest.java \
(from r616742, commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/SimpleCounterTest.java)
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/test/java/org/a \
pache/commons/monitoring/impl/ThreadSafeCounterTest.java?p2=commons/sandbox/monitoring \
/trunk/src/test/java/org/apache/commons/monitoring/impl/ThreadSafeCounterTest.java&p1= \
commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/SimpleCounterTest.java&r1=616742&r2=616771&rev=616771&view=diff
==============================================================================
--- commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/SimpleCounterTest.java \
(original)
+++ commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/ThreadSafeCounterTest.java \
Wed Jan 30 06:24:08 2008 @@ -21,7 +21,7 @@
import org.apache.commons.monitoring.Counter;
-public class SimpleCounterTest
+public class ThreadSafeCounterTest
extends TestCase
{
Copied: commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/ThreadSafeGaugeTest.java \
(from r616742, commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/SimpleGaugeTest.java)
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/test/java/org/a \
pache/commons/monitoring/impl/ThreadSafeGaugeTest.java?p2=commons/sandbox/monitoring/t \
runk/src/test/java/org/apache/commons/monitoring/impl/ThreadSafeGaugeTest.java&p1=comm \
ons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/SimpleGaugeTest.java&r1=616742&r2=616771&rev=616771&view=diff
==============================================================================
--- commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/SimpleGaugeTest.java \
(original)
+++ commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/impl/ThreadSafeGaugeTest.java \
Wed Jan 30 06:24:08 2008 @@ -21,7 +21,7 @@
import org.apache.commons.monitoring.Gauge;
-public class SimpleGaugeTest
+public class ThreadSafeGaugeTest
extends TestCase
{
private long time;
Added: commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/listener/ThresholdListenerTest.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/test/java/org/a \
pache/commons/monitoring/listener/ThresholdListenerTest.java?rev=616771&view=auto \
==============================================================================
--- commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/listener/ThresholdListenerTest.java \
(added)
+++ commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/listener/ThresholdListenerTest.java \
Wed Jan 30 06:24:08 2008 @@ -0,0 +1,79 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.apache.commons.monitoring.listener;
+
+import junit.framework.TestCase;
+
+import org.apache.commons.monitoring.Counter;
+import org.apache.commons.monitoring.Monitor;
+import org.apache.commons.monitoring.StatValue;
+import org.apache.commons.monitoring.impl.CreateValuesOnDemandMonitor;
+import org.apache.commons.monitoring.listeners.ThresholdListener;
+
+/**
+ * @author <a href="mailto:nicolas@apache.org">Nicolas De Loof</a>
+ */
+public class ThresholdListenerTest
+ extends TestCase
+{
+ public void testThresholdListener()
+ throws Exception
+ {
+ final Monitor monitor = new CreateValuesOnDemandMonitor(
+ new Monitor.Key( "MonitoringTest.testMonitoring", "test", "utils" ) );
+ Counter counter = monitor.getCounter( Monitor.PERFORMANCES );
+
+ TestListener listener = new TestListener( monitor );
+ counter.addListener( listener );
+
+ counter.add( 1 );
+ assertEquals( "unexpected listener notification", 0, listener.count );
+ counter.add( 10 );
+ assertEquals( "listener didn't get notified", 1, listener.count );
+
+ counter.removeListener( listener );
+ counter.add( 10 );
+ assertEquals( "removed listener was notified", 1, listener.count );
+ }
+
+ private final class TestListener
+ extends ThresholdListener
+ {
+ private final Monitor monitor;
+
+ long count = 0;
+
+ private TestListener( Monitor monitor )
+ {
+ this.monitor = monitor;
+ }
+
+ public void exceed( StatValue value, long l )
+ {
+ count++;
+ assertEquals( 10, l );
+ assertEquals( Monitor.PERFORMANCES, value.getRole() );
+ assertEquals( monitor, value.getMonitor() );
+ }
+
+ public long getThreshold()
+ {
+ return 5;
+ }
+ }
+}
Propchange: commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/listener/ThresholdListenerTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/listener/ThresholdListenerTest.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Propchange: commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/listener/ThresholdListenerTest.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/reporting/RendererTest.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/trunk/src/test/java/org/a \
pache/commons/monitoring/reporting/RendererTest.java?rev=616771&r1=616770&r2=616771&view=diff
==============================================================================
--- commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/reporting/RendererTest.java \
(original)
+++ commons/sandbox/monitoring/trunk/src/test/java/org/apache/commons/monitoring/reporting/RendererTest.java \
Wed Jan 30 06:24:08 2008 @@ -40,12 +40,14 @@
throws Exception
{
monitors = new LinkedList<Monitor>();
- Monitor m1 = new CreateValuesOnDemandMonitor( "JsonRendererTest.setUp", \
"test", "reporting" ); + Monitor m1 = new CreateValuesOnDemandMonitor(
+ new Monitor.Key( "JsonRendererTest.setUp", "test", "reporting" ) );
m1.getCounter( Monitor.PERFORMANCES ).add( 10 );
m1.getGauge( Monitor.CONCURRENCY );
monitors.add( m1 );
- Monitor m2 = new CreateValuesOnDemandMonitor( "TestCase", "test", "junit" );
+ Monitor m2 = new CreateValuesOnDemandMonitor(
+ new Monitor.Key( "TestCase", "test", "junit" ) );
m2.getCounter( Monitor.PERFORMANCES );
m2.getGauge( Monitor.CONCURRENCY ).increment();
monitors.add( m2 );
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic