Merge branch 'collectd-5.7' into collectd-5.8
[collectd.git] / bindings / java / org / collectd / java / GenericJMXConfValue.java
index 25b70d4..6d3d688 100644 (file)
@@ -30,6 +30,8 @@ import java.util.Arrays;
 import java.util.List;
 import java.util.Collection;
 import java.util.Set;
+import java.util.concurrent.atomic.AtomicInteger;
+import java.util.concurrent.atomic.AtomicLong;
 import java.util.Iterator;
 import java.util.ArrayList;
 
@@ -128,6 +130,14 @@ class GenericJMXConfValue
     {
       return (BigInteger.ZERO.add ((BigInteger) obj));
     }
+    else if (obj instanceof AtomicInteger)
+    {
+        return (new Integer(((AtomicInteger) obj).get()));
+    }
+    else if (obj instanceof AtomicLong)
+    {
+        return (new Long(((AtomicLong) obj).get()));
+    }
 
     return (null);
   } /* }}} Number genericObjectToNumber */
@@ -313,9 +323,8 @@ class GenericJMXConfValue
 
     key = attrName.remove (0);
 
-    TabularData tabularData = (TabularData) parent;
-    Collection<CompositeData> table =
-        (Collection<CompositeData>)tabularData.values();
+    @SuppressWarnings("unchecked")
+    Collection<CompositeData> table = (Collection<CompositeData>) parent.values();
     for (CompositeData compositeData : table)
     {
       if (key.equals(compositeData.get("key")))