com.sun.jmx.mbeanserver.ModifiableClassLoaderRepository Java Examples

The following examples show how to use com.sun.jmx.mbeanserver.ModifiableClassLoaderRepository. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: DefaultMBeanServerInterceptor.java    From jdk8u60 with GNU General Public License v2.0 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #2
Source File: DefaultMBeanServerInterceptor.java    From openjdk-jdk8u-backup with GNU General Public License v2.0 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #3
Source File: DefaultMBeanServerInterceptor.java    From openjdk-8 with GNU General Public License v2.0 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #4
Source File: DefaultMBeanServerInterceptor.java    From openjdk-jdk8u with GNU General Public License v2.0 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #5
Source File: DefaultMBeanServerInterceptor.java    From openjdk-jdk9 with GNU General Public License v2.0 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #6
Source File: DefaultMBeanServerInterceptor.java    From jdk8u_jdk with GNU General Public License v2.0 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #7
Source File: DefaultMBeanServerInterceptor.java    From JDKSourceCode1.8 with MIT License 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #8
Source File: DefaultMBeanServerInterceptor.java    From jdk1.8-source-analysis with Apache License 2.0 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #9
Source File: DefaultMBeanServerInterceptor.java    From openjdk-8-source with GNU General Public License v2.0 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #10
Source File: DefaultMBeanServerInterceptor.java    From jdk8u-jdk with GNU General Public License v2.0 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #11
Source File: DefaultMBeanServerInterceptor.java    From jdk8u-jdk with GNU General Public License v2.0 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #12
Source File: DefaultMBeanServerInterceptor.java    From TencentKona-8 with GNU General Public License v2.0 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #13
Source File: DefaultMBeanServerInterceptor.java    From jdk8u-dev-jdk with GNU General Public License v2.0 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #14
Source File: DefaultMBeanServerInterceptor.java    From dragonwell8_jdk with GNU General Public License v2.0 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #15
Source File: DefaultMBeanServerInterceptor.java    From hottub with GNU General Public License v2.0 6 votes vote down vote up
/**
 * Registers a ClassLoader with the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void addClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Called when the newly registered MBean is a ClassLoader
     * If so, tell the ClassLoaderRepository (CLR) about it.  We do
     * this even if the loader is a PrivateClassLoader.  In that
     * case, the CLR remembers the loader for use when it is
     * explicitly named (e.g. as the loader in createMBean) but
     * does not add it to the list that is consulted by
     * ClassLoaderRepository.loadClass.
     */
    final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
    if (clr == null) {
        final RuntimeException wrapped =
                new IllegalArgumentException(
                "Dynamic addition of class loaders" +
                " is not supported");
        throw new RuntimeOperationsException(wrapped,
                "Exception occurred trying to register" +
                " the MBean as a class loader");
    }
    clr.addClassLoader(logicalName, loader);
}
 
Example #16
Source File: DefaultMBeanServerInterceptor.java    From openjdk-8 with GNU General Public License v2.0 5 votes vote down vote up
private ModifiableClassLoaderRepository getInstantiatorCLR() {
    return AccessController.doPrivileged(new PrivilegedAction<ModifiableClassLoaderRepository>() {
        @Override
        public ModifiableClassLoaderRepository run() {
            return instantiator != null ? instantiator.getClassLoaderRepository() : null;
        }
    });
}
 
Example #17
Source File: DefaultMBeanServerInterceptor.java    From hottub with GNU General Public License v2.0 5 votes vote down vote up
private ModifiableClassLoaderRepository getInstantiatorCLR() {
    return AccessController.doPrivileged(new PrivilegedAction<ModifiableClassLoaderRepository>() {
        @Override
        public ModifiableClassLoaderRepository run() {
            return instantiator != null ? instantiator.getClassLoaderRepository() : null;
        }
    });
}
 
Example #18
Source File: DefaultMBeanServerInterceptor.java    From openjdk-8-source with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Unregisters a ClassLoader from the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void removeClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Removes the  MBean from the default loader repository.
     */
    if (loader != server.getClass().getClassLoader()) {
        final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
        if (clr != null) {
            clr.removeClassLoader(logicalName);
        }
    }
}
 
Example #19
Source File: DefaultMBeanServerInterceptor.java    From hottub with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Unregisters a ClassLoader from the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void removeClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Removes the  MBean from the default loader repository.
     */
    if (loader != server.getClass().getClassLoader()) {
        final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
        if (clr != null) {
            clr.removeClassLoader(logicalName);
        }
    }
}
 
Example #20
Source File: DefaultMBeanServerInterceptor.java    From openjdk-8-source with GNU General Public License v2.0 5 votes vote down vote up
private ModifiableClassLoaderRepository getInstantiatorCLR() {
    return AccessController.doPrivileged(new PrivilegedAction<ModifiableClassLoaderRepository>() {
        @Override
        public ModifiableClassLoaderRepository run() {
            return instantiator != null ? instantiator.getClassLoaderRepository() : null;
        }
    });
}
 
Example #21
Source File: DefaultMBeanServerInterceptor.java    From openjdk-8 with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Unregisters a ClassLoader from the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void removeClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Removes the  MBean from the default loader repository.
     */
    if (loader != server.getClass().getClassLoader()) {
        final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
        if (clr != null) {
            clr.removeClassLoader(logicalName);
        }
    }
}
 
Example #22
Source File: DefaultMBeanServerInterceptor.java    From openjdk-jdk9 with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Unregisters a ClassLoader from the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void removeClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Removes the  MBean from the default loader repository.
     */
    if (loader != server.getClass().getClassLoader()) {
        final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
        if (clr != null) {
            clr.removeClassLoader(logicalName);
        }
    }
}
 
Example #23
Source File: DefaultMBeanServerInterceptor.java    From jdk8u_jdk with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Unregisters a ClassLoader from the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void removeClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Removes the  MBean from the default loader repository.
     */
    if (loader != server.getClass().getClassLoader()) {
        final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
        if (clr != null) {
            clr.removeClassLoader(logicalName);
        }
    }
}
 
Example #24
Source File: DefaultMBeanServerInterceptor.java    From jdk8u_jdk with GNU General Public License v2.0 5 votes vote down vote up
private ModifiableClassLoaderRepository getInstantiatorCLR() {
    return AccessController.doPrivileged(new PrivilegedAction<ModifiableClassLoaderRepository>() {
        @Override
        public ModifiableClassLoaderRepository run() {
            return instantiator != null ? instantiator.getClassLoaderRepository() : null;
        }
    });
}
 
Example #25
Source File: DefaultMBeanServerInterceptor.java    From jdk8u-jdk with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Unregisters a ClassLoader from the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void removeClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Removes the  MBean from the default loader repository.
     */
    if (loader != server.getClass().getClassLoader()) {
        final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
        if (clr != null) {
            clr.removeClassLoader(logicalName);
        }
    }
}
 
Example #26
Source File: DefaultMBeanServerInterceptor.java    From jdk8u-jdk with GNU General Public License v2.0 5 votes vote down vote up
private ModifiableClassLoaderRepository getInstantiatorCLR() {
    return AccessController.doPrivileged(new PrivilegedAction<ModifiableClassLoaderRepository>() {
        @Override
        public ModifiableClassLoaderRepository run() {
            return instantiator != null ? instantiator.getClassLoaderRepository() : null;
        }
    });
}
 
Example #27
Source File: DefaultMBeanServerInterceptor.java    From jdk8u-dev-jdk with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Unregisters a ClassLoader from the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void removeClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Removes the  MBean from the default loader repository.
     */
    if (loader != server.getClass().getClassLoader()) {
        final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
        if (clr != null) {
            clr.removeClassLoader(logicalName);
        }
    }
}
 
Example #28
Source File: DefaultMBeanServerInterceptor.java    From jdk8u-dev-jdk with GNU General Public License v2.0 5 votes vote down vote up
private ModifiableClassLoaderRepository getInstantiatorCLR() {
    return AccessController.doPrivileged(new PrivilegedAction<ModifiableClassLoaderRepository>() {
        @Override
        public ModifiableClassLoaderRepository run() {
            return instantiator != null ? instantiator.getClassLoaderRepository() : null;
        }
    });
}
 
Example #29
Source File: DefaultMBeanServerInterceptor.java    From JDKSourceCode1.8 with MIT License 5 votes vote down vote up
/**
 * Unregisters a ClassLoader from the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void removeClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Removes the  MBean from the default loader repository.
     */
    if (loader != server.getClass().getClassLoader()) {
        final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
        if (clr != null) {
            clr.removeClassLoader(logicalName);
        }
    }
}
 
Example #30
Source File: DefaultMBeanServerInterceptor.java    From jdk1.8-source-analysis with Apache License 2.0 5 votes vote down vote up
/**
 * Unregisters a ClassLoader from the CLR.
 * This method is called by the ResourceContext from within the
 * repository lock.
 * @param loader       The ClassLoader.
 * @param logicalName  The ClassLoader MBean ObjectName.
 */
private void removeClassLoader(ClassLoader loader,
        final ObjectName logicalName) {
    /**
     * Removes the  MBean from the default loader repository.
     */
    if (loader != server.getClass().getClassLoader()) {
        final ModifiableClassLoaderRepository clr = getInstantiatorCLR();
        if (clr != null) {
            clr.removeClassLoader(logicalName);
        }
    }
}