private void processImplementations( BeanDefinitionRegistry registry, PluginRegistry pluginRegistry) { List<Class> extensionPoints = pluginRegistry.getExtensionPoints(); for (Class extensionPoint : extensionPoints) { List<Class> implementations = pluginRegistry.getImplementations(extensionPoint); LOG.debug( String.format( "Found %d implementations for %s extension point: [%s]", implementations.size(), extensionPoint.getCanonicalName(), commaSeparated(implementations.stream().map(Class::getCanonicalName)))); for (Class implementation : implementations) { processImplementation(registry, implementation); } } }