changeset 2:1850f751d9de

Catching remote exceptions
author Dominic Cleal <dominic-cleal@cdo2.com>
date Thu, 11 Dec 2008 13:08:11 +0000
parents d136d4894ea3
children 585fec0dc3e3
files src/net/scatterspace/blitz/jmx/AbstractStatsImpl.java src/net/scatterspace/blitz/jmx/BlockingOpsImpl.java src/net/scatterspace/blitz/jmx/EventQueueImpl.java src/net/scatterspace/blitz/jmx/IOImpl.java src/net/scatterspace/blitz/jmx/InstanceCountImpl.java src/net/scatterspace/blitz/jmx/JmxAgent.java src/net/scatterspace/blitz/jmx/MissedOpsImpl.java src/net/scatterspace/blitz/jmx/OpImpl.java src/net/scatterspace/blitz/jmx/TaskQueueImpl.java src/net/scatterspace/blitz/jmx/TxnImpl.java src/net/scatterspace/blitz/jmx/iface/BlockingOpsMXBean.java src/net/scatterspace/blitz/jmx/iface/EventQueueMXBean.java src/net/scatterspace/blitz/jmx/iface/IOMXBean.java src/net/scatterspace/blitz/jmx/iface/InstanceCountMXBean.java src/net/scatterspace/blitz/jmx/iface/MissedOpsMXBean.java src/net/scatterspace/blitz/jmx/iface/OpMXBean.java src/net/scatterspace/blitz/jmx/iface/TaskQueueMXBean.java src/net/scatterspace/blitz/jmx/iface/TxnMXBean.java
diffstat 18 files changed, 59 insertions(+), 51 deletions(-) [+]
line wrap: on
line diff
--- a/src/net/scatterspace/blitz/jmx/AbstractStatsImpl.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/AbstractStatsImpl.java	Thu Dec 11 13:08:11 2008 +0000
@@ -30,12 +30,17 @@
 import java.rmi.RemoteException;
 import java.util.ArrayList;
 import java.util.Collection;
+import java.util.Collections;
+import java.util.logging.Level;
+import java.util.logging.Logger;
 
 import org.dancres.blitz.remote.StatsAdmin;
 import org.dancres.blitz.stats.Stat;
 
 public abstract class AbstractStatsImpl<T extends Stat>
 {
+    private Logger log_ = Logger.getLogger(getClass().getName());
+    
     private StatsAdmin admin_;
     private Class<? extends Stat> statClazz_;
     
@@ -46,10 +51,21 @@
     }
     
     @SuppressWarnings("unchecked")
-    protected Collection<T> getStatistics() throws RemoteException
+    protected Collection<T> getStatistics()
     {
+        Stat[] allStats;
+        try
+        {
+            allStats = admin_.getStats();
+        }
+        catch (RemoteException e)
+        {
+            log_.log(Level.WARNING, "Remote exception while getting stats", e);
+            return Collections.emptyList();
+        }
+        
         Collection<T> ret = new ArrayList<T>();
-        for (Stat stat : admin_.getStats())
+        for (Stat stat : allStats)
         {
             if (statClazz_.isInstance(stat))
             {
--- a/src/net/scatterspace/blitz/jmx/BlockingOpsImpl.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/BlockingOpsImpl.java	Thu Dec 11 13:08:11 2008 +0000
@@ -26,7 +26,6 @@
  */
 package net.scatterspace.blitz.jmx;
 
-import java.rmi.RemoteException;
 import java.util.Iterator;
 
 import net.scatterspace.blitz.jmx.iface.BlockingOpsMXBean;
@@ -45,7 +44,7 @@
         super(admin, BlockingOpsStat.class);
     }
     
-    public int getReaders() throws RemoteException
+    public int getReaders() 
     {
         Iterator<BlockingOpsStat> iter = getStatistics().iterator();
         if (!iter.hasNext())
@@ -54,7 +53,7 @@
         return iter.next().getReaders();
     }
     
-    public int getTakers() throws RemoteException
+    public int getTakers() 
     {
         Iterator<BlockingOpsStat> iter = getStatistics().iterator();
         if (!iter.hasNext())
--- a/src/net/scatterspace/blitz/jmx/EventQueueImpl.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/EventQueueImpl.java	Thu Dec 11 13:08:11 2008 +0000
@@ -26,7 +26,6 @@
  */
 package net.scatterspace.blitz.jmx;
 
-import java.rmi.RemoteException;
 import java.util.Iterator;
 
 import net.scatterspace.blitz.jmx.iface.EventQueueMXBean;
@@ -45,7 +44,7 @@
         super(admin, EventQueueStat.class);
     }
     
-    public int getPersistentCount() throws RemoteException
+    public int getPersistentCount() 
     {
         Iterator<EventQueueStat> iter = getStatistics().iterator();
         if (!iter.hasNext())
@@ -54,7 +53,7 @@
         return iter.next().getPersistentCount();
     }
     
-    public int getTransientCount() throws RemoteException
+    public int getTransientCount() 
     {
         Iterator<EventQueueStat> iter = getStatistics().iterator();
         if (!iter.hasNext())
--- a/src/net/scatterspace/blitz/jmx/IOImpl.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/IOImpl.java	Thu Dec 11 13:08:11 2008 +0000
@@ -26,7 +26,6 @@
  */
 package net.scatterspace.blitz.jmx;
 
-import java.rmi.RemoteException;
 import java.util.Iterator;
 
 import net.scatterspace.blitz.jmx.iface.IOMXBean;
@@ -44,7 +43,7 @@
         super(admin, IOStat.class);
     }
     
-    public int getQueueSize() throws RemoteException
+    public int getQueueSize() 
     {
         Iterator<IOStat> iter = getStatistics().iterator();
         if (!iter.hasNext())
@@ -53,7 +52,7 @@
         return iter.next().getQueueSize();
     }
     
-    public double getInOutRatio() throws RemoteException
+    public double getInOutRatio() 
     {
         Iterator<IOStat> iter = getStatistics().iterator();
         if (!iter.hasNext())
@@ -62,7 +61,7 @@
         return iter.next().getInOutRatio();
     }
     
-    public double getTimePerIn() throws RemoteException
+    public double getTimePerIn() 
     {
         Iterator<IOStat> iter = getStatistics().iterator();
         if (!iter.hasNext())
@@ -71,7 +70,7 @@
         return iter.next().getTimePerIn();
     }
     
-    public double getTimePerOut() throws RemoteException
+    public double getTimePerOut() 
     {
         Iterator<IOStat> iter = getStatistics().iterator();
         if (!iter.hasNext())
--- a/src/net/scatterspace/blitz/jmx/InstanceCountImpl.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/InstanceCountImpl.java	Thu Dec 11 13:08:11 2008 +0000
@@ -26,7 +26,6 @@
  */
 package net.scatterspace.blitz.jmx;
 
-import java.rmi.RemoteException;
 import java.util.Iterator;
 
 import net.scatterspace.blitz.jmx.iface.InstanceCountMXBean;
@@ -47,7 +46,7 @@
         type_ = type;
     }
     
-    public int getCount() throws RemoteException
+    public int getCount() 
     {
         Iterator<InstanceCount> iter = getStatistics().iterator();
         while (iter.hasNext())
--- a/src/net/scatterspace/blitz/jmx/JmxAgent.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/JmxAgent.java	Thu Dec 11 13:08:11 2008 +0000
@@ -89,7 +89,7 @@
         }
     }
     
-    private void initialiseBeans() throws RemoteException
+    private void initialiseBeans()
     {
         register(new BlockingOpsImpl(stats_));
         register(new EventQueueImpl(stats_));
--- a/src/net/scatterspace/blitz/jmx/MissedOpsImpl.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/MissedOpsImpl.java	Thu Dec 11 13:08:11 2008 +0000
@@ -26,7 +26,6 @@
  */
 package net.scatterspace.blitz.jmx;
 
-import java.rmi.RemoteException;
 import java.util.Iterator;
 
 import net.scatterspace.blitz.jmx.iface.MissedOpsMXBean;
@@ -45,7 +44,7 @@
         super(admin, MissedOpsStat.class);
     }
     
-    public long getMissedReads() throws RemoteException
+    public long getMissedReads() 
     {
         Iterator<MissedOpsStat> iter = getStatistics().iterator();
         if (!iter.hasNext())
@@ -54,7 +53,7 @@
         return iter.next().getMissedReads();
     }
     
-    public long getMissedTakes() throws RemoteException
+    public long getMissedTakes() 
     {
         Iterator<MissedOpsStat> iter = getStatistics().iterator();
         if (!iter.hasNext())
--- a/src/net/scatterspace/blitz/jmx/OpImpl.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/OpImpl.java	Thu Dec 11 13:08:11 2008 +0000
@@ -26,7 +26,6 @@
  */
 package net.scatterspace.blitz.jmx;
 
-import java.rmi.RemoteException;
 import java.util.Iterator;
 
 import net.scatterspace.blitz.jmx.iface.OpMXBean;
@@ -47,7 +46,7 @@
         type_ = type;
     }
     
-    public long getReads() throws RemoteException
+    public long getReads() 
     {
         Iterator<OpStat> iter = getStatistics().iterator();
         while (iter.hasNext())
@@ -60,7 +59,7 @@
         return 0;
     }
     
-    public long getTakes() throws RemoteException
+    public long getTakes() 
     {
         Iterator<OpStat> iter = getStatistics().iterator();
         while (iter.hasNext())
@@ -73,7 +72,7 @@
         return 0;
     }
     
-    public long getWrites() throws RemoteException
+    public long getWrites() 
     {
         Iterator<OpStat> iter = getStatistics().iterator();
         while (iter.hasNext())
--- a/src/net/scatterspace/blitz/jmx/TaskQueueImpl.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/TaskQueueImpl.java	Thu Dec 11 13:08:11 2008 +0000
@@ -26,7 +26,6 @@
  */
 package net.scatterspace.blitz.jmx;
 
-import java.rmi.RemoteException;
 import java.util.Iterator;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
@@ -52,7 +51,7 @@
         name_ = name;
     }
     
-    public long getSize() throws RemoteException
+    public long getSize() 
     {
         Iterator<TaskQueueStat> iter = getStatistics().iterator();
         while (iter.hasNext())
--- a/src/net/scatterspace/blitz/jmx/TxnImpl.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/TxnImpl.java	Thu Dec 11 13:08:11 2008 +0000
@@ -26,7 +26,6 @@
  */
 package net.scatterspace.blitz.jmx;
 
-import java.rmi.RemoteException;
 import java.util.Iterator;
 
 import net.scatterspace.blitz.jmx.iface.TxnMXBean;
@@ -44,7 +43,7 @@
         super(admin, TxnStat.class);
     }
     
-    public int getActiveTxnCount() throws RemoteException
+    public int getActiveTxnCount() 
     {
         Iterator<TxnStat> iter = getStatistics().iterator();
         if (!iter.hasNext())
--- a/src/net/scatterspace/blitz/jmx/iface/BlockingOpsMXBean.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/iface/BlockingOpsMXBean.java	Thu Dec 11 13:08:11 2008 +0000
@@ -1,12 +1,12 @@
 package net.scatterspace.blitz.jmx.iface;
 
-import java.rmi.RemoteException;
+
 
 public interface BlockingOpsMXBean
 {
     
-    public int getReaders() throws RemoteException;
+    public int getReaders();
     
-    public int getTakers() throws RemoteException;
+    public int getTakers();
     
 }
\ No newline at end of file
--- a/src/net/scatterspace/blitz/jmx/iface/EventQueueMXBean.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/iface/EventQueueMXBean.java	Thu Dec 11 13:08:11 2008 +0000
@@ -1,12 +1,12 @@
 package net.scatterspace.blitz.jmx.iface;
 
-import java.rmi.RemoteException;
+
 
 public interface EventQueueMXBean
 {
     
-    public int getPersistentCount() throws RemoteException;
+    public int getPersistentCount();
     
-    public int getTransientCount() throws RemoteException;
+    public int getTransientCount();
     
 }
\ No newline at end of file
--- a/src/net/scatterspace/blitz/jmx/iface/IOMXBean.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/iface/IOMXBean.java	Thu Dec 11 13:08:11 2008 +0000
@@ -1,16 +1,16 @@
 package net.scatterspace.blitz.jmx.iface;
 
-import java.rmi.RemoteException;
+
 
 public interface IOMXBean
 {
     
-    public int getQueueSize() throws RemoteException;
+    public int getQueueSize();
     
-    public double getInOutRatio() throws RemoteException;
+    public double getInOutRatio();
     
-    public double getTimePerIn() throws RemoteException;
+    public double getTimePerIn();
     
-    public double getTimePerOut() throws RemoteException;
+    public double getTimePerOut();
     
 }
\ No newline at end of file
--- a/src/net/scatterspace/blitz/jmx/iface/InstanceCountMXBean.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/iface/InstanceCountMXBean.java	Thu Dec 11 13:08:11 2008 +0000
@@ -1,10 +1,10 @@
 package net.scatterspace.blitz.jmx.iface;
 
-import java.rmi.RemoteException;
+
 
 public interface InstanceCountMXBean
 {
     
-    public int getCount() throws RemoteException;
+    public int getCount();
     
 }
\ No newline at end of file
--- a/src/net/scatterspace/blitz/jmx/iface/MissedOpsMXBean.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/iface/MissedOpsMXBean.java	Thu Dec 11 13:08:11 2008 +0000
@@ -1,12 +1,12 @@
 package net.scatterspace.blitz.jmx.iface;
 
-import java.rmi.RemoteException;
+
 
 public interface MissedOpsMXBean
 {
     
-    public long getMissedReads() throws RemoteException;
+    public long getMissedReads();
     
-    public long getMissedTakes() throws RemoteException;
+    public long getMissedTakes();
     
 }
\ No newline at end of file
--- a/src/net/scatterspace/blitz/jmx/iface/OpMXBean.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/iface/OpMXBean.java	Thu Dec 11 13:08:11 2008 +0000
@@ -1,14 +1,14 @@
 package net.scatterspace.blitz.jmx.iface;
 
-import java.rmi.RemoteException;
+
 
 public interface OpMXBean
 {
     
-    public long getReads() throws RemoteException;
+    public long getReads();
     
-    public long getTakes() throws RemoteException;
+    public long getTakes();
     
-    public long getWrites() throws RemoteException;
+    public long getWrites();
     
 }
\ No newline at end of file
--- a/src/net/scatterspace/blitz/jmx/iface/TaskQueueMXBean.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/iface/TaskQueueMXBean.java	Thu Dec 11 13:08:11 2008 +0000
@@ -1,9 +1,9 @@
 package net.scatterspace.blitz.jmx.iface;
 
-import java.rmi.RemoteException;
+
 
 public interface TaskQueueMXBean
 {
-    public long getSize() throws RemoteException;
+    public long getSize();
     
 }
\ No newline at end of file
--- a/src/net/scatterspace/blitz/jmx/iface/TxnMXBean.java	Thu Dec 11 12:16:31 2008 +0000
+++ b/src/net/scatterspace/blitz/jmx/iface/TxnMXBean.java	Thu Dec 11 13:08:11 2008 +0000
@@ -1,10 +1,10 @@
 package net.scatterspace.blitz.jmx.iface;
 
-import java.rmi.RemoteException;
+
 
 public interface TxnMXBean
 {
     
-    public int getActiveTxnCount() throws RemoteException;
+    public int getActiveTxnCount();
     
 }
\ No newline at end of file