All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.sf.jsqlparser.parser.AbstractJSqlParser Maven / Gradle / Ivy

Go to download

JSqlParser parses an SQL statement and translate it into a hierarchy of Java classes. The generated hierarchy can be navigated using the Visitor Pattern.

The newest version!
/*-
 * #%L
 * JSQLParser library
 * %%
 * Copyright (C) 2004 - 2020 JSQLParser
 * %%
 * Dual licensed under GNU LGPL 2.1 or Apache License 2.0
 * #L%
 */
package net.sf.jsqlparser.parser;

import net.sf.jsqlparser.parser.feature.Feature;
import net.sf.jsqlparser.parser.feature.FeatureConfiguration;

import java.util.ArrayList;
import java.util.List;

public abstract class AbstractJSqlParser

{ protected int jdbcParameterIndex = 0; protected boolean errorRecovery = false; protected List parseErrors = new ArrayList<>(); public P withSquareBracketQuotation() { return withFeature(Feature.allowSquareBracketQuotation, true); } public P withSquareBracketQuotation(boolean allowSquareBracketQuotation) { return withFeature(Feature.allowSquareBracketQuotation, allowSquareBracketQuotation); } public P withAllowComplexParsing() { return withFeature(Feature.allowComplexParsing, true); } public P withAllowComplexParsing(boolean allowComplexParsing) { return withFeature(Feature.allowComplexParsing, allowComplexParsing); } public P withComplexParsing() { return withFeature(Feature.allowComplexParsing, true); } public P withComplexParsing(boolean allowComplexParsing) { return withFeature(Feature.allowComplexParsing, allowComplexParsing); } public P withUnsupportedStatements() { return withFeature(Feature.allowUnsupportedStatements, true); } public P withUnsupportedStatements(boolean allowUnsupportedStatements) { return withFeature(Feature.allowUnsupportedStatements, allowUnsupportedStatements); } public P withTimeOut(long timeOutMillSeconds) { return withFeature(Feature.timeOut, timeOutMillSeconds); } public P withBackslashEscapeCharacter() { return withFeature(Feature.allowBackslashEscapeCharacter, true); } public P withBackslashEscapeCharacter(boolean allowBackslashEscapeCharacter) { return withFeature(Feature.allowBackslashEscapeCharacter, allowBackslashEscapeCharacter); } public P withFeature(Feature f, boolean enabled) { getConfiguration().setValue(f, enabled); return me(); } public P withFeature(Feature f, long value) { getConfiguration().setValue(f, value); return me(); } public abstract FeatureConfiguration getConfiguration(); public abstract P me(); public boolean getAsBoolean(Feature f) { return getConfiguration().getAsBoolean(f); } public Long getAsLong(Feature f) { return getConfiguration().getAsLong(f); } public void setErrorRecovery(boolean errorRecovery) { this.errorRecovery = errorRecovery; } public P withErrorRecovery() { this.errorRecovery = true; return me(); } public P withErrorRecovery(boolean errorRecovery) { this.errorRecovery = errorRecovery; return me(); } public List getParseErrors() { return parseErrors; } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy