summaryrefslogtreecommitdiff
path: root/java/src/IceInternal/ThreadObserverI.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/src/IceInternal/ThreadObserverI.java')
-rw-r--r--java/src/IceInternal/ThreadObserverI.java8
1 files changed, 7 insertions, 1 deletions
diff --git a/java/src/IceInternal/ThreadObserverI.java b/java/src/IceInternal/ThreadObserverI.java
index 7086618b4f7..f92784b12c1 100644
--- a/java/src/IceInternal/ThreadObserverI.java
+++ b/java/src/IceInternal/ThreadObserverI.java
@@ -9,7 +9,9 @@
package IceInternal;
-public class ThreadObserverI extends IceMX.Observer<IceMX.ThreadMetrics> implements Ice.Instrumentation.ThreadObserver
+public class ThreadObserverI
+ extends IceMX.ObserverWithDelegate<IceMX.ThreadMetrics, Ice.Instrumentation.ThreadObserver>
+ implements Ice.Instrumentation.ThreadObserver
{
public void
stateChanged(final Ice.Instrumentation.ThreadState oldState, final Ice.Instrumentation.ThreadState newState)
@@ -17,6 +19,10 @@ public class ThreadObserverI extends IceMX.Observer<IceMX.ThreadMetrics> impleme
_oldState = oldState;
_newState = newState;
forEach(_threadStateUpdate);
+ if(_delegate != null)
+ {
+ _delegate.stateChanged(oldState, newState);
+ }
}
private MetricsUpdate<IceMX.ThreadMetrics> _threadStateUpdate = new MetricsUpdate<IceMX.ThreadMetrics>()