Search in sources :

Example 16 with ManagedBean

use of org.apache.tomcat.util.modeler.ManagedBean in project tomcat by apache.

the class MBeanUtils method destroyMBean.

/**
     * Deregister the MBean for this
     * <code>ContextEnvironment</code> object.
     *
     * @param environment The ContextEnvironment to be managed
     *
     * @exception Exception if an MBean cannot be deregistered
     */
public static void destroyMBean(ContextEnvironment environment) throws Exception {
    String mname = createManagedName(environment);
    ManagedBean managed = registry.findManagedBean(mname);
    if (managed == null) {
        return;
    }
    String domain = managed.getDomain();
    if (domain == null)
        domain = mserver.getDefaultDomain();
    ObjectName oname = createObjectName(domain, environment);
    if (mserver.isRegistered(oname))
        mserver.unregisterMBean(oname);
}
Also used : ManagedBean(org.apache.tomcat.util.modeler.ManagedBean) ObjectName(javax.management.ObjectName)

Example 17 with ManagedBean

use of org.apache.tomcat.util.modeler.ManagedBean in project tomcat by apache.

the class MBeanUtils method createMBean.

/**
     * Create, register, and return an MBean for this
     * <code>Group</code> object.
     *
     * @param group The Group to be managed
     * @return a new MBean
     * @exception Exception if an MBean cannot be created or registered
     */
static DynamicMBean createMBean(Group group) throws Exception {
    String mname = createManagedName(group);
    ManagedBean managed = registry.findManagedBean(mname);
    if (managed == null) {
        Exception e = new Exception("ManagedBean is not found with " + mname);
        throw new MBeanException(e);
    }
    String domain = managed.getDomain();
    if (domain == null)
        domain = mserver.getDefaultDomain();
    DynamicMBean mbean = managed.createMBean(group);
    ObjectName oname = createObjectName(domain, group);
    if (mserver.isRegistered(oname)) {
        mserver.unregisterMBean(oname);
    }
    mserver.registerMBean(mbean, oname);
    return (mbean);
}
Also used : DynamicMBean(javax.management.DynamicMBean) MBeanException(javax.management.MBeanException) ManagedBean(org.apache.tomcat.util.modeler.ManagedBean) MalformedObjectNameException(javax.management.MalformedObjectNameException) MBeanException(javax.management.MBeanException) ObjectName(javax.management.ObjectName)

Example 18 with ManagedBean

use of org.apache.tomcat.util.modeler.ManagedBean in project tomcat by apache.

the class MbeansDescriptorsDigesterSource method execute.

public void execute() throws Exception {
    if (registry == null) {
        registry = Registry.getRegistry(null, null);
    }
    InputStream stream = (InputStream) source;
    ArrayList<ManagedBean> loadedMbeans = new ArrayList<>();
    synchronized (dLock) {
        if (digester == null) {
            digester = createDigester();
        }
        // Process the input file to configure our registry
        try {
            // Push our registry object onto the stack
            digester.push(loadedMbeans);
            digester.parse(stream);
        } catch (Exception e) {
            log.error("Error digesting Registry data", e);
            throw e;
        } finally {
            digester.reset();
        }
    }
    Iterator<ManagedBean> iter = loadedMbeans.iterator();
    while (iter.hasNext()) {
        registry.addManagedBean(iter.next());
    }
}
Also used : InputStream(java.io.InputStream) ArrayList(java.util.ArrayList) ManagedBean(org.apache.tomcat.util.modeler.ManagedBean)

Example 19 with ManagedBean

use of org.apache.tomcat.util.modeler.ManagedBean in project tomcat by apache.

the class MBeanUtils method createMBean.

/**
     * Create, register, and return an MBean for this
     * <code>ContextEnvironment</code> object.
     *
     * @param environment The ContextEnvironment to be managed
     * @return a new MBean
     * @exception Exception if an MBean cannot be created or registered
     */
public static DynamicMBean createMBean(ContextEnvironment environment) throws Exception {
    String mname = createManagedName(environment);
    ManagedBean managed = registry.findManagedBean(mname);
    if (managed == null) {
        Exception e = new Exception("ManagedBean is not found with " + mname);
        throw new MBeanException(e);
    }
    String domain = managed.getDomain();
    if (domain == null)
        domain = mserver.getDefaultDomain();
    DynamicMBean mbean = managed.createMBean(environment);
    ObjectName oname = createObjectName(domain, environment);
    if (mserver.isRegistered(oname)) {
        mserver.unregisterMBean(oname);
    }
    mserver.registerMBean(mbean, oname);
    return (mbean);
}
Also used : DynamicMBean(javax.management.DynamicMBean) MBeanException(javax.management.MBeanException) ManagedBean(org.apache.tomcat.util.modeler.ManagedBean) MalformedObjectNameException(javax.management.MalformedObjectNameException) MBeanException(javax.management.MBeanException) ObjectName(javax.management.ObjectName)

Aggregations

ManagedBean (org.apache.tomcat.util.modeler.ManagedBean)19 ObjectName (javax.management.ObjectName)16 DynamicMBean (javax.management.DynamicMBean)7 MBeanException (javax.management.MBeanException)7 MalformedObjectNameException (javax.management.MalformedObjectNameException)7 NamingResourcesImpl (org.apache.catalina.deploy.NamingResourcesImpl)3 InputStream (java.io.InputStream)1 Method (java.lang.reflect.Method)1 ArrayList (java.util.ArrayList)1 Hashtable (java.util.Hashtable)1 ContextEnvironment (org.apache.tomcat.util.descriptor.web.ContextEnvironment)1 ContextResource (org.apache.tomcat.util.descriptor.web.ContextResource)1 ContextResourceLink (org.apache.tomcat.util.descriptor.web.ContextResourceLink)1 AttributeInfo (org.apache.tomcat.util.modeler.AttributeInfo)1 OperationInfo (org.apache.tomcat.util.modeler.OperationInfo)1 ParameterInfo (org.apache.tomcat.util.modeler.ParameterInfo)1