in boot/src/main/java/org/apache/karaf/minho/boot/service/ServiceRegistry.java [49:62]
public <T> T get(final Class<T> serviceClass) {
return serviceClass.cast(ofNullable(registry.get(serviceClass)) // direct lookup, faster
.orElseGet(() -> { // fallback (hierarchy)
final var selected = findByType(serviceClass).collect(toList());
switch (selected.size()) {
case 0:
return null;
case 1:
return selected.iterator().next();
default:
throw new IllegalStateException("Ambiguous service lookup: " + serviceClass);
}
}));
}