@Override public void find() { LOG.info( "--------------------------------------------------------------------------------" ); LOG.info( "Scanning for {}.", metadata.getName() ); LOG.info( "--------------------------------------------------------------------------------" ); List<ResourceLocation<T>> list = workspace.getLocationHandler().findResourceLocations( metadata ); read( list ); Iterator<ResourceProvider<T>> iter = nsToProvider.values().iterator(); while ( iter.hasNext() ) { ResourceProvider<T> prov = iter.next(); try { for ( ResourceMetadata<T> md : prov.getAdditionalResources( workspace ) ) { // only overrides if the resource has not been overridden if ( !metadataMap.containsKey( md.getIdentifier() ) ) { metadataMap.put( md.getIdentifier(), md ); } } } catch ( Exception e ) { LOG.error( "Unable to obtain additional resources from {}: {}", prov.getClass().getSimpleName(), e.getLocalizedMessage() ); LOG.trace( "Stack trace:", e ); } } }