private boolean evaluate(final GraphRewrite event, final EvaluationContext context, final XmlFileEvaluationStrategy evaluationStrategy) { try { ExecutionStatistics.get().begin("XmlFile.evaluate"); initValidators(event,context,evaluationStrategy); final List<WindupVertexFrame> finalResults = new ArrayList<>(); final GraphContext graphContext = event.getGraphContext(); Iterable<? extends WindupVertexFrame> startVertices = getStartingVertices(event,graphContext); for (WindupVertexFrame iterated : startVertices) { XmlFileModel xml = getXmlFileModelFromVertex(iterated); if(xmlFilePassRestrictions(event,context,xml)) { registerAndSubmitResultsFor(xml, finalResults,evaluationStrategy, event, context); } } setResults(event, getOutputVariablesName(), finalResults); return !finalResults.isEmpty(); } finally { ExecutionStatistics.get().end("XmlFile.evaluate"); } }