Class OracleParser

java.lang.Object
org.flywaydb.core.internal.parser.Parser
org.flywaydb.database.oracle.OracleParser

public class OracleParser extends org.flywaydb.core.internal.parser.Parser
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.flywaydb.core.internal.parser.Parser

    org.flywaydb.core.internal.parser.Parser.ParserSqlStatementIterator
  • Field Summary

    Fields inherited from class org.flywaydb.core.internal.parser.Parser

    configuration, parsingContext
  • Constructor Summary

    Constructors
    Constructor
    Description
    OracleParser(org.flywaydb.core.api.configuration.Configuration configuration, org.flywaydb.core.internal.parser.ParsingContext parsingContext)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    adjustBlockDepth(org.flywaydb.core.internal.parser.ParserContext context, List<org.flywaydb.core.internal.parser.Token> tokens, org.flywaydb.core.internal.parser.Token keyword, org.flywaydb.core.internal.parser.PeekingReader reader)
     
    protected void
    adjustDelimiter(org.flywaydb.core.internal.parser.ParserContext context, org.flywaydb.core.internal.parser.StatementType statementType)
     
    protected org.flywaydb.core.internal.sqlscript.ParsedSqlStatement
    createStatement(org.flywaydb.core.internal.parser.PeekingReader reader, org.flywaydb.core.internal.parser.Recorder recorder, int statementPos, int statementLine, int statementCol, int nonCommentPartPos, int nonCommentPartLine, int nonCommentPartCol, org.flywaydb.core.internal.parser.StatementType statementType, boolean canExecuteInTransaction, org.flywaydb.core.internal.sqlscript.Delimiter delimiter, String sql, boolean batchable)
     
    protected org.flywaydb.core.internal.parser.StatementType
    detectStatementType(String simplifiedStatement, org.flywaydb.core.internal.parser.ParserContext context, org.flywaydb.core.internal.parser.PeekingReader reader)
     
    protected boolean
    doTokensMatchPattern(List<org.flywaydb.core.internal.parser.Token> previousTokens, org.flywaydb.core.internal.parser.Token current, Pattern regex)
     
    protected String
     
    protected org.flywaydb.core.internal.parser.Token
    handleAlternativeStringLiteral(org.flywaydb.core.internal.parser.PeekingReader reader, org.flywaydb.core.internal.parser.ParserContext context, int pos, int line, int col)
     
    protected org.flywaydb.core.internal.parser.Token
    handleDelimiter(org.flywaydb.core.internal.parser.PeekingReader reader, org.flywaydb.core.internal.parser.ParserContext context, int pos, int line, int col)
     
    protected org.flywaydb.core.internal.parser.Token
    handleMultilineComment(org.flywaydb.core.internal.parser.PeekingReader reader, org.flywaydb.core.internal.parser.ParserContext context, int pos, int line, int col)
     
    protected boolean
     
    protected boolean
    isDelimiter(String peek, org.flywaydb.core.internal.parser.ParserContext context, int col, int colIgnoringWhitespace)
     
    protected boolean
    shouldAdjustBlockDepth(org.flywaydb.core.internal.parser.ParserContext context, List<org.flywaydb.core.internal.parser.Token> tokens, org.flywaydb.core.internal.parser.Token token)
     
    protected boolean
    shouldDiscard(org.flywaydb.core.internal.parser.Token token, boolean nonCommentPartSeen)
     

    Methods inherited from class org.flywaydb.core.internal.parser.Parser

    detectCanExecuteInTransaction, getAlternativeIdentifierQuote, getAlternativeStringLiteralQuote, getClosingIdentifierSymbol, getDefaultDelimiter, getIdentifierQuote, getLastKeywordIndex, getLastKeywordIndex, getNextStatement, getOpeningIdentifierSymbol, getPreviousToken, getTransactionalDetectionCutoff, getValidKeywords, handleCommentDirective, handleKeyword, handleStringLiteral, isCommentDirective, isKeyword, isLetter, isSingleLineComment, lastTokenIs, lastTokenIsOnLine, parse, parse, readIdentifier, readKeyword, replacePlaceholders, resetDelimiter, supportsPeekingMultipleLines, supportsReferencedSqlScripts, tokenAtIndexIs

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • OracleParser

      public OracleParser(org.flywaydb.core.api.configuration.Configuration configuration, org.flywaydb.core.internal.parser.ParsingContext parsingContext)
  • Method Details

    • createStatement

      protected org.flywaydb.core.internal.sqlscript.ParsedSqlStatement createStatement(org.flywaydb.core.internal.parser.PeekingReader reader, org.flywaydb.core.internal.parser.Recorder recorder, int statementPos, int statementLine, int statementCol, int nonCommentPartPos, int nonCommentPartLine, int nonCommentPartCol, org.flywaydb.core.internal.parser.StatementType statementType, boolean canExecuteInTransaction, org.flywaydb.core.internal.sqlscript.Delimiter delimiter, String sql, boolean batchable) throws IOException
      Overrides:
      createStatement in class org.flywaydb.core.internal.parser.Parser
      Throws:
      IOException
    • detectStatementType

      protected org.flywaydb.core.internal.parser.StatementType detectStatementType(String simplifiedStatement, org.flywaydb.core.internal.parser.ParserContext context, org.flywaydb.core.internal.parser.PeekingReader reader)
      Overrides:
      detectStatementType in class org.flywaydb.core.internal.parser.Parser
    • shouldDiscard

      protected boolean shouldDiscard(org.flywaydb.core.internal.parser.Token token, boolean nonCommentPartSeen)
      Overrides:
      shouldDiscard in class org.flywaydb.core.internal.parser.Parser
    • adjustDelimiter

      protected void adjustDelimiter(org.flywaydb.core.internal.parser.ParserContext context, org.flywaydb.core.internal.parser.StatementType statementType)
      Overrides:
      adjustDelimiter in class org.flywaydb.core.internal.parser.Parser
    • shouldAdjustBlockDepth

      protected boolean shouldAdjustBlockDepth(org.flywaydb.core.internal.parser.ParserContext context, List<org.flywaydb.core.internal.parser.Token> tokens, org.flywaydb.core.internal.parser.Token token)
      Overrides:
      shouldAdjustBlockDepth in class org.flywaydb.core.internal.parser.Parser
    • adjustBlockDepth

      protected void adjustBlockDepth(org.flywaydb.core.internal.parser.ParserContext context, List<org.flywaydb.core.internal.parser.Token> tokens, org.flywaydb.core.internal.parser.Token keyword, org.flywaydb.core.internal.parser.PeekingReader reader)
      Overrides:
      adjustBlockDepth in class org.flywaydb.core.internal.parser.Parser
    • doTokensMatchPattern

      protected boolean doTokensMatchPattern(List<org.flywaydb.core.internal.parser.Token> previousTokens, org.flywaydb.core.internal.parser.Token current, Pattern regex)
      Overrides:
      doTokensMatchPattern in class org.flywaydb.core.internal.parser.Parser
    • isDelimiter

      protected boolean isDelimiter(String peek, org.flywaydb.core.internal.parser.ParserContext context, int col, int colIgnoringWhitespace)
      Overrides:
      isDelimiter in class org.flywaydb.core.internal.parser.Parser
    • handleMultilineComment

      protected org.flywaydb.core.internal.parser.Token handleMultilineComment(org.flywaydb.core.internal.parser.PeekingReader reader, org.flywaydb.core.internal.parser.ParserContext context, int pos, int line, int col) throws IOException
      Overrides:
      handleMultilineComment in class org.flywaydb.core.internal.parser.Parser
      Throws:
      IOException
    • handleDelimiter

      protected org.flywaydb.core.internal.parser.Token handleDelimiter(org.flywaydb.core.internal.parser.PeekingReader reader, org.flywaydb.core.internal.parser.ParserContext context, int pos, int line, int col) throws IOException
      Overrides:
      handleDelimiter in class org.flywaydb.core.internal.parser.Parser
      Throws:
      IOException
    • isAlternativeStringLiteral

      protected boolean isAlternativeStringLiteral(String peek)
      Overrides:
      isAlternativeStringLiteral in class org.flywaydb.core.internal.parser.Parser
    • handleAlternativeStringLiteral

      protected org.flywaydb.core.internal.parser.Token handleAlternativeStringLiteral(org.flywaydb.core.internal.parser.PeekingReader reader, org.flywaydb.core.internal.parser.ParserContext context, int pos, int line, int col) throws IOException
      Overrides:
      handleAlternativeStringLiteral in class org.flywaydb.core.internal.parser.Parser
      Throws:
      IOException
    • getAdditionalParsingErrorInfo

      protected String getAdditionalParsingErrorInfo()
      Overrides:
      getAdditionalParsingErrorInfo in class org.flywaydb.core.internal.parser.Parser