Class MsParserUtils
java.lang.Object
org.pgcodekeeper.core.database.ms.parser.MsParserUtils
Utility methods for Microsoft SQL parsing with ANTLR.
Provides helper functions for working with Microsoft SQL syntax during ANTLR-based parsing
-
Method Summary
Modifier and TypeMethodDescriptionstatic voidcheckToClean(long cleaningInterval) Checks if parser caches need cleaning based on last usage time.static voidClears the MS SQL parser cache.static TSQLParsercreateSqlParser(InputStream is, String charset, String parsedObjectName, List<Object> errors) Creates a Microsoft SQL parser from input stream.static TSQLParsercreateSqlParser(String sql, String parsedObjectName, List<Object> errors) Creates a Microsoft SQL parser from string input.static voidparseSqlStream(InputStreamProvider inputStream, String parsedObjectName, DiffSettings diffSettings, int monitoringLevel, IMsContextProcessor listener, Queue<AntlrTask<?>> antlrTasks) Parses Microsoft SQL stream asynchronously.
-
Method Details
-
createSqlParser
Creates a Microsoft SQL parser from string input.- Parameters:
sql- T-SQL string to parseparsedObjectName- name of the object being parsed (for error reporting)errors- list to collect parsing errors- Returns:
- configured TSQLParser instance
-
createSqlParser
public static TSQLParser createSqlParser(InputStream is, String charset, String parsedObjectName, List<Object> errors) throws IOException Creates a Microsoft SQL parser from input stream.- Parameters:
is- input stream containing T-SQLcharset- character encoding of the streamparsedObjectName- name of the object being parsed (for error reporting)errors- list to collect parsing errors- Returns:
- configured TSQLParser instance
- Throws:
IOException- if there's an error reading the stream
-
parseSqlStream
public static void parseSqlStream(InputStreamProvider inputStream, String parsedObjectName, DiffSettings diffSettings, int monitoringLevel, IMsContextProcessor listener, Queue<AntlrTask<?>> antlrTasks) Parses Microsoft SQL stream asynchronously.- Parameters:
inputStream- provider of the input streamparsedObjectName- name of the object being parseddiffSettings- unified context object containing settings, monitor, and error accumulatormonitoringLevel- level of parse tree monitoringlistener- processor for the parsed contentantlrTasks- queue for parser tasks
-
checkToClean
public static void checkToClean(long cleaningInterval) Checks if parser caches need cleaning based on last usage time.- Parameters:
cleaningInterval- time interval in milliseconds after which cache should be cleaned
-
cleanCacheMsParser
public static void cleanCacheMsParser()Clears the MS SQL parser cache.
-