proyal      2002/08/02 10:48:09

  Modified:    src/java/org/apache/avalon/phoenix/components/manager
                        AbstractJMXManager.java
  Log:
  Make unexport work again (there were exceptions in phoenix.log about bad ObjectName's
  
  Revision  Changes    Path
  1.4       +15 -5     
jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/components/manager/AbstractJMXManager.java
  
  Index: AbstractJMXManager.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/components/manager/AbstractJMXManager.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- AbstractJMXManager.java   30 Jul 2002 12:31:16 -0000      1.3
  +++ AbstractJMXManager.java   2 Aug 2002 17:48:09 -0000       1.4
  @@ -105,7 +105,17 @@
       {
           try
           {
  -            getMBeanServer().unregisterMBean( createObjectName( name ) );
  +            final Target target = (Target) exportedObject;
  +            final Set topicNames = target.getTopicNames();
  +            final Iterator i = topicNames.iterator();
  +
  +            while( i.hasNext() )
  +            {
  +                final ObjectName objectName =
  +                    createObjectName( name, target.getTopic( ( String ) i.next() ) 
);
  +
  +                getMBeanServer().unregisterMBean( objectName );
  +            }
           }
           catch( final Exception e )
           {
  @@ -228,7 +238,7 @@
           throws Exception
       {
           final Object mBean = createMBean( topic, target );
  -        final ObjectName objectName = createObjectName( targetName + ",topic=" + 
topic.getDescription() );
  +        final ObjectName objectName = createObjectName( targetName, topic );
           getMBeanServer().registerMBean( mBean, objectName );
   
           // debugging stuff.
  @@ -326,10 +336,10 @@
        * @return the {@link ObjectName} representing object
        * @throws MalformedObjectNameException if malformed name
        */
  -    private ObjectName createObjectName( final String name )
  +    private ObjectName createObjectName( final String name, final ModelMBeanInfo 
topic )
           throws MalformedObjectNameException
       {
  -        return new ObjectName( getDomain() + ":" + name );
  +        return new ObjectName( getDomain() + ":" + name + ",topic=" + 
topic.getDescription() );
       }
   
       /**
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to