in src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPoolManager.java [281:304]
public void deleted(String pid) {
this.logger.debug("Deleting " + pid);
// we just remove the thread pool from our list of pools and readd it
// as an anonymous pool with default config(!) if it is used
synchronized ( this.pools ) {
Entry foundEntry = null;
// we have to search the config by using the pid!
for (final Entry entry : this.pools.values()) {
if ( pid.equals(entry.getPid()) ) {
foundEntry = entry;
break;
}
}
if ( foundEntry != null ) {
this.pools.remove(foundEntry.getName());
if ( foundEntry.isUsed() ) {
// we register this with a new name
final String name = "ThreadPool-" + UUID.randomUUID().toString();
foundEntry.update(new ModifiableThreadPoolConfig(), name, null);
this.pools.put(name, foundEntry);
}
}
}
}