amyroh      02/02/04 12:28:50

  Modified:    catalina/src/share/org/apache/catalina/mbeans
                        MBeanUtils.java ServerLifecycleListener.java
  Log:
  Add to create MBeanFactory MBean so it's visible to admin application.
  
  Revision  Changes    Path
  1.18      +52 -4     
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/MBeanUtils.java
  
  Index: MBeanUtils.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/MBeanUtils.java,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- MBeanUtils.java   3 Feb 2002 00:56:57 -0000       1.17
  +++ MBeanUtils.java   4 Feb 2002 20:28:49 -0000       1.18
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/MBeanUtils.java,v
 1.17 2002/02/03 00:56:57 craigmcc Exp $
  - * $Revision: 1.17 $
  - * $Date: 2002/02/03 00:56:57 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/MBeanUtils.java,v
 1.18 2002/02/04 20:28:49 amyroh Exp $
  + * $Revision: 1.18 $
  + * $Date: 2002/02/04 20:28:49 $
    *
    * ====================================================================
    *
  @@ -107,7 +107,7 @@
    *
    * @author Craig R. McClanahan
    * @author Amy Roh
  - * @version $Revision: 1.17 $ $Date: 2002/02/03 00:56:57 $
  + * @version $Revision: 1.18 $ $Date: 2002/02/04 20:28:49 $
    */
   
   public class MBeanUtils {
  @@ -425,6 +425,34 @@
   
       }
   
  +
  +    /**
  +     * Create, register, and return an MBean for this
  +     * <code>MBeanFactory</code> object.
  +     *
  +     * @param factory The MBeanFactory to be managed
  +     *
  +     * @exception Exception if an MBean cannot be created or registered
  +     */
  +    public static ModelMBean createMBean(MBeanFactory factory)
  +        throws Exception {
  +
  +        String mname = createManagedName(factory);
  +        ManagedBean managed = registry.findManagedBean(mname);
  +        if (managed == null) {
  +            return null;
  +        }
  +        String domain = managed.getDomain();
  +        if (domain == null)
  +            domain = mserver.getDefaultDomain();
  +        ModelMBean mbean = managed.createMBean(factory);
  +        ObjectName oname = createObjectName(domain, factory);
  +        mserver.registerMBean(mbean, oname);
  +        return (mbean);
  +
  +    }
  +
  +
       /**
        * Create, register, and return an MBean for this
        * <code>Realm</code> object.
  @@ -911,6 +939,26 @@
       }
   
   
  +    /**
  +     * Create an <code>ObjectName</code> for this
  +     * <code>MBeanFactory</code> object.
  +     *
  +     * @param domain Domain in which this name is to be created
  +     * @param factory The MBeanFactory to be named
  +     *
  +     * @exception MalformedObjectNameException if a name cannot be created
  +     */
  +    public static ObjectName createObjectName(String domain,
  +                                              MBeanFactory factory)
  +        throws MalformedObjectNameException {
  +
  +        ObjectName name = new ObjectName(domain + ":type=MBeanFactory");
  +
  +        return (name);
  +
  +    }
  +
  +    
       /**
        * Create an <code>ObjectName</code> for this
        * <code>Realm</code> object.
  
  
  
  1.19      +23 -4     
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/ServerLifecycleListener.java
  
  Index: ServerLifecycleListener.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/ServerLifecycleListener.java,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- ServerLifecycleListener.java      31 Jan 2002 23:02:41 -0000      1.18
  +++ ServerLifecycleListener.java      4 Feb 2002 20:28:49 -0000       1.19
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/ServerLifecycleListener.java,v
 1.18 2002/01/31 23:02:41 amyroh Exp $
  - * $Revision: 1.18 $
  - * $Date: 2002/01/31 23:02:41 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/ServerLifecycleListener.java,v
 1.19 2002/02/04 20:28:49 amyroh Exp $
  + * $Revision: 1.19 $
  + * $Date: 2002/02/04 20:28:49 $
    *
    * ====================================================================
    *
  @@ -105,7 +105,7 @@
    *
    * @author Craig R. McClanahan
    * @author Amy Roh
  - * @version $Revision: 1.18 $ $Date: 2002/01/31 23:02:41 $
  + * @version $Revision: 1.19 $ $Date: 2002/02/04 20:28:49 $
    */
   
   public class ServerLifecycleListener
  @@ -237,6 +237,8 @@
   
           try {
   
  +            MBeanFactory factory = new MBeanFactory();
  +            createMBeans(factory);
               createMBeans(ServerFactory.getServer());
   
           } catch (MBeanException t) {
  @@ -428,6 +430,23 @@
           for (int k = 0; k < contexts.length; k++) {
               createMBeans((Context) contexts[k]);
           }
  +
  +    }
  +
  +
  +    /**
  +     * Create the MBeans for MBeanFactory.
  +     *
  +     * @param factory MBeanFactory for which to create MBean
  +     *
  +     * @exception Exception if an exception is thrown during MBean creation
  +     */
  +    protected void createMBeans(MBeanFactory factory) throws Exception {
  +
  +        // Create the MBean for the MBeanFactory
  +        if (debug >= 2)
  +            log("Creating MBean for MBeanFactory " + factory);
  +        MBeanUtils.createMBean(factory);
   
       }
   
  
  
  

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

Reply via email to