private ExpressionEvaluator<V,D> createEvaluator(Collection<JAXBElement<?>> evaluatorElements, ExpressionFactory factory,
String contextDescription, Task task, OperationResult result)
throws SchemaException, ObjectNotFoundException {
if (evaluatorElements.isEmpty()) {
throw new SchemaException("Empty evaluator list in "+contextDescription);
}
JAXBElement<?> fistEvaluatorElement = evaluatorElements.iterator().next();
ExpressionEvaluatorFactory evaluatorFactory = factory.getEvaluatorFactory(fistEvaluatorElement.getName());
if (evaluatorFactory == null) {
throw new SchemaException("Unknown expression evaluator element "+fistEvaluatorElement.getName()+" in "+contextDescription);
}
return evaluatorFactory.createEvaluator(evaluatorElements, outputDefinition, factory, contextDescription, task, result);
}