Author: tross
Date: Mon Jun 22 14:54:17 2009
New Revision: 787261

URL: http://svn.apache.org/viewvc?rev=787261&view=rev
Log:
QPID-1922 - Applied patch from Bryan Kearney
Java Agent does not support null / empty enums

Modified:
    
qpid/trunk/qpid/java/management/agent/src/main/java/org/apache/qpid/agent/binding/ClassBinding.java
    
qpid/trunk/qpid/java/management/agent/src/main/java/org/apache/qpid/agent/binding/EnumBinding.java

Modified: 
qpid/trunk/qpid/java/management/agent/src/main/java/org/apache/qpid/agent/binding/ClassBinding.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/agent/src/main/java/org/apache/qpid/agent/binding/ClassBinding.java?rev=787261&r1=787260&r2=787261&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/management/agent/src/main/java/org/apache/qpid/agent/binding/ClassBinding.java
 (original)
+++ 
qpid/trunk/qpid/java/management/agent/src/main/java/org/apache/qpid/agent/binding/ClassBinding.java
 Mon Jun 22 14:54:17 2009
@@ -472,7 +472,7 @@
                 }
                 if ((mask & bit) == 0)
                 {
-                    log.trace("Going in exlude " + prop.getName());
+                    log.trace("Going in exclude " + prop.getName());
                     excludes.add(prop.getName());
                 }
                 bit *= 2;

Modified: 
qpid/trunk/qpid/java/management/agent/src/main/java/org/apache/qpid/agent/binding/EnumBinding.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/agent/src/main/java/org/apache/qpid/agent/binding/EnumBinding.java?rev=787261&r1=787260&r2=787261&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/management/agent/src/main/java/org/apache/qpid/agent/binding/EnumBinding.java
 (original)
+++ 
qpid/trunk/qpid/java/management/agent/src/main/java/org/apache/qpid/agent/binding/EnumBinding.java
 Mon Jun 22 14:54:17 2009
@@ -65,14 +65,17 @@
     {
         // FIXME This only works with POJOs
         Object instance = null;
+        String value = null ;        
         try
         {
-            String value = dec.readStr16();
-            instance = Enum.valueOf((Class<Enum>) this.getJavaClass(), value);
+            value = dec.readStr16();
+            if ((value != null ) && (!value.isEmpty())) {
+                instance = Enum.valueOf((Class<Enum>) this.getJavaClass(), 
value);
+            } 
         } catch (Exception e)
         {
-            log.error("Could not create an enum of type "
-                    + this.javaClass.getName());
+            log.error(String.format("Could not create an enum of type %s with 
value %s",
+                    this.javaClass.getName(),value ));
             throw new BindingException(e);
         }
         return instance;



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to