public List<Pipeline> parsePipelines(String pipelines) throws ParseException {
final ParseContext parseContext = new ParseContext(false);
final SyntaxErrorListener errorListener = new SyntaxErrorListener(parseContext);
final RuleLangLexer lexer = new RuleLangLexer(new ANTLRInputStream(pipelines));
lexer.removeErrorListeners();
lexer.addErrorListener(errorListener);
final RuleLangParser parser = new RuleLangParser(new CommonTokenStream(lexer));
parser.setErrorHandler(new DefaultErrorStrategy());
parser.removeErrorListeners();
parser.addErrorListener(errorListener);
final RuleLangParser.PipelineDeclsContext pipelineDeclsContext = parser.pipelineDecls();
WALKER.walk(new PipelineAstBuilder(parseContext), pipelineDeclsContext);
if (parseContext.getErrors().isEmpty()) {
return parseContext.pipelines;
}
throw new ParseException(parseContext.getErrors());
}
PipelineRuleParser.java 文件源码
java
阅读 29
收藏 0
点赞 0
评论 0
项目:graylog-plugin-pipeline-processor
作者:
评论列表
文章目录