in src/main/java/org/apache/sling/commons/log/logback/internal/LogbackManager.java [781:806]
private void registerEventHandler() {
Dictionary<String,Object> props = new Hashtable<>();
props.put(Constants.SERVICE_VENDOR, "Apache Software Foundation");
props.put(Constants.SERVICE_DESCRIPTION, "Sling Log Reset Event Handler");
props.put("event.topics", new String[] {
RESET_EVENT_TOPIC
});
registrations.add(bundleContext.registerService("org.osgi.service.event.EventHandler", new ServiceFactory() {
private Object instance;
@Override
public Object getService(Bundle bundle, ServiceRegistration serviceRegistration) {
synchronized (this) {
if (this.instance == null) {
this.instance = new ConfigResetRequestHandler(LogbackManager.this);
}
return instance;
}
}
@Override
public void ungetService(Bundle bundle, ServiceRegistration serviceRegistration, Object o) {
}
}, props));
}