in src/main/java/org/apache/sling/graphql/core/scalars/SlingScalarsProvider.java [73:85]
private void unbindSlingScalarConverter(ServiceReference<SlingScalarConverter<Object, Object>> serviceReference) {
String name = (String) serviceReference.getProperty(SlingScalarConverter.NAME_SERVICE_PROPERTY);
if (StringUtils.isNotEmpty(name)) {
synchronized (scalars) {
TreeSet<ServiceReferenceObjectTuple<SlingScalarConverter<Object, Object>>> set = scalars.get(name);
if (set != null) {
Optional<ServiceReferenceObjectTuple<SlingScalarConverter<Object, Object>>> tupleToRemove =
set.stream().filter(tuple -> serviceReference.equals(tuple.getServiceReference())).findFirst();
tupleToRemove.ifPresent(set::remove);
}
}
}
}