@Override
	public List<ModuleDefinition> findDefinitions(String name) {
		Set<String> alreadySeen = new HashSet<String>();
		List<ModuleDefinition> result = new ArrayList<ModuleDefinition>();
		for (ModuleRegistry delegate : delegates) {
			List<ModuleDefinition> sub = delegate.findDefinitions(name);
			for (ModuleDefinition definition : sub) {
				// First registry's module shadows subsequent
				if (alreadySeen.add(makeKeyFor(definition))) {
					result.add(definition);
				}
			}
		}
		return result;
	}
A {@link ModuleRegistry} that delegates to several ModuleRegistries, in order.

@author Eric Bottard
@author Glenn Renfro
@author David Turanski
spring-xd-dirt/src/main/java/org/springframework/xd/dirt/module/DelegatingModuleRegistry.java