/*************************************************************************** * * Returns a list of {@link MetadataItemSource}s suitable for the given * item type. * * @param itemClass the metadata item type * @return a list of suitable {@link MetadataItemSource}s * **************************************************************************/ @Nonnull protected static <Item> List<MetadataItemSource<Item>> findMetadataItemSources (@Nonnull final Class<Item> itemClass) { final List<MetadataItemSource<Item>> result = new ArrayList<MetadataItemSource<Item>>(); for (final MetadataItemSource<Item> source : Lookup.getDefault().lookupAll(MetadataItemSource.class)) { if (source.getItemClass().equals(itemClass)) { result.add(source); } } logger.finest(">>>> sources for %s: %s", itemClass, result); return result; }