return entityProcessor;
} else if (configuration.containsKey(KEY_ENTITY_PROCESSOR)){
List<ConfigEntry> configs = parseConfigEntries(configuration.get(KEY_ENTITY_PROCESSOR).toString());
List<EntityProcessor> processorList = new ArrayList<EntityProcessor>(configs.size());
for(ConfigEntry config : configs){
EntityProcessor processor;
try {
processor = (EntityProcessor)Class.forName(config.getClassName()).newInstance();
} catch (Exception e) {
throw new IllegalArgumentException("Invalid EntityProcessor configuration '"+config.getConfigString()+"'!",e);
}
//add the configuration
Map<String,Object> configMap = getComponentConfig(config, processor.getClass().getSimpleName(), false);
//add also the directly provided parameters
configMap.putAll(config.getParams());
processor.setConfiguration(configMap);
processorList.add(processor);
}
if(!processorList.isEmpty()){ //do not set empty lists
entityProcessor = Collections.unmodifiableList(processorList);
}