You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by dj...@apache.org on 2004/07/19 00:05:11 UTC

cvs commit: incubator-geronimo/modules/kernel/src/java/org/apache/geronimo/gbean/jmx GBeanMBeanReference.java

djencks     2004/07/18 15:05:11

  Modified:    modules/kernel/src/java/org/apache/geronimo/gbean/jmx
                        GBeanMBeanReference.java
  Log:
  Remove nulls from reference patterns before trying to match
  
  Revision  Changes    Path
  1.11      +11 -2     incubator-geronimo/modules/kernel/src/java/org/apache/geronimo/gbean/jmx/GBeanMBeanReference.java
  
  Index: GBeanMBeanReference.java
  ===================================================================
  RCS file: /home/cvs/incubator-geronimo/modules/kernel/src/java/org/apache/geronimo/gbean/jmx/GBeanMBeanReference.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- GBeanMBeanReference.java	24 Jun 2004 01:46:30 -0000	1.10
  +++ GBeanMBeanReference.java	18 Jul 2004 22:05:11 -0000	1.11
  @@ -24,6 +24,7 @@
   import java.util.HashSet;
   import java.util.Iterator;
   import java.util.Set;
  +
   import javax.management.AttributeNotFoundException;
   import javax.management.InstanceNotFoundException;
   import javax.management.MBeanServerNotification;
  @@ -130,9 +131,17 @@
           if (!gmbean.isOffline()) {
               throw new IllegalStateException("Pattern set can not be modified while online");
           }
  -        if (patterns == null) {
  +        if (patterns == null || patterns.isEmpty() || (patterns.size() == 1 && patterns.iterator().next() == null)) {
               this.patterns = Collections.EMPTY_SET;
           } else {
  +            patterns = new HashSet(patterns);
  +            for (Iterator iterator = this.patterns.iterator(); iterator.hasNext();) {
  +                if (iterator.next() == null) {
  +                    iterator.remove();
  +                    //there can be at most one null value in a set.
  +                    break;
  +                }
  +            }
               this.patterns = Collections.unmodifiableSet(patterns);
           }
       }