in src/main/java/org/apache/sling/scripting/sightly/impl/engine/ExtensionRegistryService.java [65:86]
protected void unbindExtensionService(ServiceReference<RuntimeExtension> serviceReference) {
synchronized (extensions) {
String name = PropertiesUtil.toString(serviceReference.getProperty(RuntimeExtension.NAME), "");
Set<RuntimeExtensionReference> namedExtensions = extensions.get(name);
boolean changed = false;
if (namedExtensions != null) {
for (RuntimeExtensionReference runtimeExtensionReference : namedExtensions) {
if (serviceReference.equals(runtimeExtensionReference.getServiceReference())) {
namedExtensions.remove(runtimeExtensionReference);
if (namedExtensions.isEmpty()) {
extensions.remove(name);
}
changed = true;
break;
}
}
}
if (changed) {
mapping = getRuntimeExtensions();
}
}
}