code: public <P extends Plugin> Iterator<P> load(Class<P> service) {
  		ArrayList<Iterator<P>> combinedIterators = new ArrayList<>(pluginDescriptors.size());
  		for (PluginDescriptor pluginDescriptor : pluginDescriptors) {
  			PluginLoader pluginLoader = new PluginLoader(pluginDescriptor, parentClassLoader);
  			combinedIterators.add(pluginLoader.load(service));
  		}
  		return Iterators.concat(combinedIterators.iterator());
  	}
docs: Returns in iterator over all available implementations of the given service interface (SPI) in all the plugins
  known to this plugin manager instance.
  
  @param service the service interface (SPI) for which implementations are requested.
  @param <P> Type of the requested plugin service.
  @return Iterator over all implementations of the given service that could be loaded from all known plugins.