Author: nicolas
Date: Tue Jan 6 07:35:38 2009
New Revision: 731976
URL: http://svn.apache.org/viewvc?rev=731976&view=rev
Log:
use double instead of long to better support unit conversions (without data lost)
Modified:
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Counter.java
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Gauge.java
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Metric.java
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/AbstractMetric.java
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/NoOpCounter.java
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/NoOpGauge.java
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObservableMetric.java
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObserverCounter.java
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObserverGauge.java
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/RentrantLockCounter.java
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/RentrantLockGauge.java
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/SynchronizedCounter.java
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/SynchronizedGauge.java
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ThreadSafeCounter.java
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ThreadSafeGauge.java
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Counter.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Counter.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Counter.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Counter.java
Tue Jan 6 07:35:38 2009
@@ -18,9 +18,9 @@
package org.apache.commons.monitoring;
/**
- * A counter to collect application processed items (bytes received, lines processed by a
batch,
- * time elapsed by some processing ...).
- *
+ * A counter to collect application processed items (bytes received, lines processed by a
batch, time elapsed by some
+ * processing ...).
+ *
* @author <a href="mailto:nicolas@apache.org">Nicolas De Loof</a>
*/
public interface Counter
@@ -29,13 +29,14 @@
/**
* Add value to the counter. Delta should not be negative (in such case a Gauge should
be used).
+ *
* @param delta
*/
- void add( long delta, Unit unit );
+ void add( double delta, Unit unit );
- public interface Observable extends Metric.Observable<Counter>, Counter
+ public interface Observable
+ extends Metric.Observable<Counter>, Counter
{
}
}
-
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Gauge.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Gauge.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Gauge.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Gauge.java
Tue Jan 6 07:35:38 2009
@@ -22,20 +22,22 @@
*
* @author <a href="mailto:nicolas@apache.org">Nicolas De Loof</a>
*/
-public interface Gauge extends Metric<Gauge>
+public interface Gauge
+ extends Metric<Gauge>
{
/**
* @return the current Gauge value
*/
- long getValue();
+ double getValue();
- void increment(Unit unit);
+ void increment( Unit unit );
- void set( long value, Unit unit );
+ void set( double value, Unit unit );
- void decrement(Unit unit);
+ void decrement( Unit unit );
- public interface Observable extends Metric.Observable<Gauge>, Gauge
+ public interface Observable
+ extends Metric.Observable<Gauge>, Gauge
{
}
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Metric.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Metric.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Metric.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/Metric.java
Tue Jan 6 07:35:38 2009
@@ -78,7 +78,7 @@
* @param metric
* @param value
*/
- void onValueChanged( Observable<M> metric, long value );
+ void onValueChanged( Observable<M> metric, double value );
}
/**
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/AbstractMetric.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/AbstractMetric.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/AbstractMetric.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/AbstractMetric.java
Tue Jan 6 07:35:38 2009
@@ -56,7 +56,7 @@
return statistics;
}
- protected long normalize( long value, Unit unit )
+ protected double normalize( double value, Unit unit )
{
if ( !this.unit.isCompatible( unit ) )
{
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/NoOpCounter.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/NoOpCounter.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/NoOpCounter.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/NoOpCounter.java
Tue Jan 6 07:35:38 2009
@@ -24,7 +24,7 @@
// NoOp
}
- public void add( long delta, Unit unit )
+ public void add( double delta, Unit unit )
{
// NoOp
}
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/NoOpGauge.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/NoOpGauge.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/NoOpGauge.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/NoOpGauge.java
Tue Jan 6 07:35:38 2009
@@ -29,7 +29,7 @@
// NoOp
}
- public long getValue()
+ public double getValue()
{
return 0;
}
@@ -39,7 +39,7 @@
// NoOp
}
- public void set( long value, Unit unit )
+ public void set( double value, Unit unit )
{
// NoOp
}
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObservableMetric.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObservableMetric.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObservableMetric.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObservableMetric.java
Tue Jan 6 07:35:38 2009
@@ -40,12 +40,12 @@
listeners.remove( listener );
}
- protected void fireValueChanged( long l )
+ protected void fireValueChanged( double d )
{
// Notify listeners
for ( Listener<M> listener : listeners )
{
- listener.onValueChanged( this, l );
+ listener.onValueChanged( this, d );
}
}
}
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObserverCounter.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObserverCounter.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObserverCounter.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObserverCounter.java
Tue Jan 6 07:35:38 2009
@@ -38,12 +38,12 @@
return observable;
}
- public void onValueChanged( Metric.Observable<Counter> metric, long value )
+ public void onValueChanged( Metric.Observable<Counter> metric, double value )
{
delegate.threadSafeAdd( value );
}
- public void add( long delta, Unit unit )
+ public void add( double delta, Unit unit )
{
throw new UnsupportedOperationException( "Observer cannot be updated directly" );
}
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObserverGauge.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObserverGauge.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObserverGauge.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ObserverGauge.java
Tue Jan 6 07:35:38 2009
@@ -39,12 +39,12 @@
return observable;
}
- public void onValueChanged( Metric.Observable<Gauge> metric, long value )
+ public void onValueChanged( Metric.Observable<Gauge> metric, double value )
{
delegate.threadSafeSet( value );
}
- public long getValue()
+ public double getValue()
{
return delegate.getValue();
}
@@ -54,7 +54,7 @@
throw new UnsupportedOperationException( "Observer cannot be updated directly" );
}
- public void set( long value, Unit unit )
+ public void set( double value, Unit unit )
{
throw new UnsupportedOperationException( "Observer cannot be updated directly" );
}
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/RentrantLockCounter.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/RentrantLockCounter.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/RentrantLockCounter.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/RentrantLockCounter.java
Tue Jan 6 07:35:38 2009
@@ -47,7 +47,7 @@
super( role );
}
- protected void threadSafeAdd( long delta )
+ protected void threadSafeAdd( double delta )
{
lock.lock();
try
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/RentrantLockGauge.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/RentrantLockGauge.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/RentrantLockGauge.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/RentrantLockGauge.java
Tue Jan 6 07:35:38 2009
@@ -50,12 +50,12 @@
}
}
- protected void threadSafeSet( long l )
+ protected void threadSafeSet( double d )
{
lock.lock();
try
{
- doThreadSafeSet( l );
+ doThreadSafeSet( d );
}
finally
{
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/SynchronizedCounter.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/SynchronizedCounter.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/SynchronizedCounter.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/SynchronizedCounter.java
Tue Jan 6 07:35:38 2009
@@ -44,7 +44,7 @@
super( role );
}
- protected synchronized void threadSafeAdd( long delta )
+ protected synchronized void threadSafeAdd( double delta )
{
doThreadSafeAdd( delta );
}
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/SynchronizedGauge.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/SynchronizedGauge.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/SynchronizedGauge.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/SynchronizedGauge.java
Tue Jan 6 07:35:38 2009
@@ -53,8 +53,8 @@
doReset();
}
- protected synchronized void threadSafeSet( long l )
+ protected synchronized void threadSafeSet( double d )
{
- doThreadSafeSet( l );
+ doThreadSafeSet( d );
}
}
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ThreadSafeCounter.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ThreadSafeCounter.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ThreadSafeCounter.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ThreadSafeCounter.java
Tue Jan 6 07:35:38 2009
@@ -23,7 +23,7 @@
return Type.COUNTER;
}
- public void add( long delta, Unit unit )
+ public void add( double delta, Unit unit )
{
delta = normalize( delta, unit );
threadSafeAdd( delta );
@@ -35,9 +35,9 @@
* expected to delegate computing to {@ #doThreadSafeAdd(long)}
* @param delta
*/
- protected abstract void threadSafeAdd( long delta );
+ protected abstract void threadSafeAdd( double delta );
- protected void doThreadSafeAdd( long delta )
+ protected void doThreadSafeAdd( double delta )
{
getSummary().addValue( delta );
}
Modified: commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ThreadSafeGauge.java
URL: http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ThreadSafeGauge.java?rev=731976&r1=731975&r2=731976&view=diff
==============================================================================
--- commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ThreadSafeGauge.java
(original)
+++ commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/ThreadSafeGauge.java
Tue Jan 6 07:35:38 2009
@@ -17,7 +17,7 @@
extends ObservableMetric<Gauge>
implements Gauge, Gauge.Observable
{
- protected long value;
+ protected double value;
protected long lastUse;
@@ -32,7 +32,7 @@
super( role );
}
- public long getValue()
+ public double getValue()
{
return value;
}
@@ -47,14 +47,14 @@
add( -1, unit );
}
- protected void add( long delta, Unit unit )
+ protected void add( double delta, Unit unit )
{
delta = normalize( delta, unit );
- long l = threadSafeAdd( delta );
- fireValueChanged( l );
+ double d = threadSafeAdd( delta );
+ fireValueChanged( d );
}
- protected long threadSafeAdd( long delta )
+ protected double threadSafeAdd( double delta )
{
threadSafeSet( value + delta );
return value;
@@ -65,19 +65,19 @@
return System.nanoTime();
}
- public long get()
+ public double get()
{
return value;
}
- public void set( long l, Unit unit )
+ public void set( double d, Unit unit )
{
- l = normalize( l, unit );
- threadSafeSet( l );
- fireValueChanged( l );
+ d = normalize( d, unit );
+ threadSafeSet( d );
+ fireValueChanged( d );
}
- protected abstract void threadSafeSet( long l );
+ protected abstract void threadSafeSet( double d );
protected void doReset()
{
@@ -87,9 +87,9 @@
firstUse = Double.NaN;
}
- protected void doThreadSafeSet( long l )
+ protected void doThreadSafeSet( double d )
{
- value = l;
+ value = d;
long now = nanotime();
if ( Double.isNaN( firstUse ) )
{
@@ -98,12 +98,12 @@
else
{
long delta = now - lastUse;
- long s = l * delta;
+ double s = d * delta;
getSummary().addValue( s );
}
lastUse = now;
- min.increment( l );
- max.increment( l );
+ min.increment( d );
+ max.increment( d );
}
@Override
|