Java tutorial
/** * This file is part of Graylog Pipeline Processor. * * Graylog Pipeline Processor is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Graylog Pipeline Processor is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with Graylog Pipeline Processor. If not, see <http://www.gnu.org/licenses/>. */ package org.graylog.plugins.pipelineprocessor.parser.errors; import com.fasterxml.jackson.annotation.JsonProperty; import org.antlr.v4.runtime.ParserRuleContext; import org.antlr.v4.runtime.RecognitionException; public class SyntaxError extends ParseError { private final Object offendingSymbol; private final int line; private final int charPositionInLine; private final String msg; private final RecognitionException e; public SyntaxError(Object offendingSymbol, int line, int charPositionInLine, String msg, RecognitionException e) { super("syntax_error", new ParserRuleContext()); this.offendingSymbol = offendingSymbol; this.line = line; this.charPositionInLine = charPositionInLine; this.msg = msg; this.e = e; } @Override public int line() { return line; } @Override public int positionInLine() { return charPositionInLine; } @JsonProperty("reason") @Override public String toString() { return msg; } }