public void unregister() { log.debug("Unregistering cl=" + this); if (repository != null) repository.removeClassLoader(this); clearBlacklists(); resourceCache.clear(); repository = null; this.unregisterTrace = new Exception(); }
public void unregister() { log.debug("Unregistering cl=" + this); if (repository != null) repository.removeClassLoader(this); clearBlacklists(); resourceCache.clear(); repository = null; this.unregisterTrace = new Exception(); }
public void unregisterMBean(ObjectName name) throws InstanceNotFoundException, MBeanRegistrationException { name = qualifyName(name); if (name.getDomain().equals(JMI_DOMAIN)) throw new RuntimeOperationsException(new IllegalArgumentException( "Not allowed to unregister: " + name.toString())); MBeanEntry entry = get(name); Object resource = entry.getResourceInstance(); try { // allow subclasses to perform their own pre- and post- pre-deregister logic handlePreDeregister (entry.getInvoker()); } catch (Exception e) { // don't double wrap MBeanRegistrationException if (e instanceof MBeanRegistrationException) throw (MBeanRegistrationException)e; throw new MBeanRegistrationException(e, "preDeregister"); } // Remove any classloader if (resource instanceof ClassLoader) loaderRepository.removeClassLoader((ClassLoader)resource); // It is no longer registered remove(name); sendUnRegistrationNotification (name); entry.getInvoker().postDeregister(); }
public void unregisterMBean(ObjectName name) throws InstanceNotFoundException, MBeanRegistrationException { name = qualifyName(name); if (name.getDomain().equals(JMI_DOMAIN)) throw new RuntimeOperationsException(new IllegalArgumentException( "Not allowed to unregister: " + name.toString())); MBeanEntry entry = get(name); Object resource = entry.getResourceInstance(); try { // allow subclasses to perform their own pre- and post- pre-deregister logic handlePreDeregister (entry.getInvoker()); } catch (Exception e) { // don't double wrap MBeanRegistrationException if (e instanceof MBeanRegistrationException) throw (MBeanRegistrationException)e; throw new MBeanRegistrationException(e, "preDeregister"); } // Remove any classloader if (resource instanceof ClassLoader) loaderRepository.removeClassLoader((ClassLoader)resource); // It is no longer registered remove(name); sendUnRegistrationNotification (name); entry.getInvoker().postDeregister(); }
loaderRepository.removeClassLoader((ClassLoader)object);
loaderRepository.removeClassLoader((ClassLoader)object);