test_class.declarator: nullSQL = null
test_class.modifier: static
test_class.original_string: static String nullSQL = null;
test_class.type: String
test_class.var_name: nullSQL
test_class.declarator: tmpFilename = null
test_class.modifier: static
test_class.original_string: static String tmpFilename = null;
test_class.type: String
test_class.var_name: tmpFilename
test_class.declarator: removeMultilineComment = true
test_class.modifier: static
test_class.original_string: static boolean removeMultilineComment = true;
test_class.type: boolean
test_class.var_name: removeMultilineComment
test_class.declarator: qt = null
test_class.original_string: QueryTokenizer qt = null;
test_class.type: QueryTokenizer
test_class.var_name: qt
test_class.declarator: sqlFileStmtCount = 0
test_class.modifier: static
test_class.original_string: static int sqlFileStmtCount = 0;
test_class.type: int
test_class.var_name: sqlFileStmtCount
test_class.declarator: _prefs
test_class.modifier: static
test_class.original_string: static IQueryTokenizerPreferenceBean _prefs;
test_class.type: IQueryTokenizerPreferenceBean
test_class.var_name: _prefs
test_class.declarator: mockPlugin = mock(IPlugin.class)
test_class.modifier: private
test_class.original_string: private IPlugin mockPlugin = mock(IPlugin.class);
test_class.type: IPlugin
test_class.var_name: mockPlugin
test_class.file: sql12/plugins/oracle/src/test/java/net/sourceforge/squirrel_sql/plugins/oracle/tokenizer/OracleQueryTokenizerTest.java
test_class.identifier: OracleQueryTokenizerTest
test_case.body: @Test
      public void testExecAnonProcedure2() {
          qt = new OracleQueryTokenizer(_prefs);
          qt.setScriptToTokenize(ANON_PROC_EXEC_2);
          SQLUtil.checkQueryTokenizer(qt, 1);
      }
test_case.class_method_signature: OracleQueryTokenizerTest.testExecAnonProcedure2()
test_case.full_signature: @Test public void testExecAnonProcedure2()
test_case.identifier: testExecAnonProcedure2
test_case.invocations: setScriptToTokenize checkQueryTokenizer
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testExecAnonProcedure2()
focal_class.declarator: s_log = LoggerController.createLogger(OracleQueryTokenizer.class)
focal_class.modifier: private final static
focal_class.original_string: private final static ILogger s_log = LoggerController.createLogger(OracleQueryTokenizer.class);
focal_class.type: ILogger
focal_class.var_name: s_log
focal_class.declarator: PROCEDURE_PATTERN =
  		"^\\s*CREATE\\s+PROCEDURE.*|^\\s*CREATE\\s+OR\\s+REPLACE\\s+PROCEDURE\\s+.*"
focal_class.modifier: private static final
focal_class.original_string: private static final String PROCEDURE_PATTERN =
  		"^\\s*CREATE\\s+PROCEDURE.*|^\\s*CREATE\\s+OR\\s+REPLACE\\s+PROCEDURE\\s+.*";
focal_class.type: String
focal_class.var_name: PROCEDURE_PATTERN
focal_class.declarator: FUNCTION_PATTERN =
  		"^\\s*CREATE\\s+FUNCTION.*|^\\s*CREATE\\s+OR\\s+REPLACE\\s+FUNCTION\\s+.*"
focal_class.modifier: private static final
focal_class.original_string: private static final String FUNCTION_PATTERN =
  		"^\\s*CREATE\\s+FUNCTION.*|^\\s*CREATE\\s+OR\\s+REPLACE\\s+FUNCTION\\s+.*";
focal_class.type: String
focal_class.var_name: FUNCTION_PATTERN
focal_class.declarator: TRIGGER_PATTERN =
  		"^\\s*CREATE\\s+TRIGGER.*|^\\s*CREATE\\s+OR\\s+REPLACE\\s+TRIGGER\\s+.*"
focal_class.modifier: private static final
focal_class.original_string: private static final String TRIGGER_PATTERN =
  		"^\\s*CREATE\\s+TRIGGER.*|^\\s*CREATE\\s+OR\\s+REPLACE\\s+TRIGGER\\s+.*";
focal_class.type: String
focal_class.var_name: TRIGGER_PATTERN
focal_class.declarator: PACKAGE_PATTERN =
  		"^\\s*CREATE\\s+PACKAGE.*|^\\s*CREATE\\s+OR\\s+REPLACE\\s+PACKAGE\\s+.*"
focal_class.modifier: private static final
focal_class.original_string: private static final String PACKAGE_PATTERN =
  		"^\\s*CREATE\\s+PACKAGE.*|^\\s*CREATE\\s+OR\\s+REPLACE\\s+PACKAGE\\s+.*";
focal_class.type: String
focal_class.var_name: PACKAGE_PATTERN
focal_class.declarator: DECLARE_PATTERN = "^\\s*DECLARE\\s*.*"
focal_class.modifier: private static final
focal_class.original_string: private static final String DECLARE_PATTERN = "^\\s*DECLARE\\s*.*";
focal_class.type: String
focal_class.var_name: DECLARE_PATTERN
focal_class.declarator: BEGIN_PATTERN = "^\\s*BEGIN\\s*.*"
focal_class.modifier: private static final
focal_class.original_string: private static final String BEGIN_PATTERN = "^\\s*BEGIN\\s*.*";
focal_class.type: String
focal_class.var_name: BEGIN_PATTERN
focal_class.declarator: SLASH_PATTERN = ".*\\n/\\n.*"
focal_class.modifier: private static final
focal_class.original_string: private static final String SLASH_PATTERN = ".*\\n/\\n.*";
focal_class.type: String
focal_class.var_name: SLASH_PATTERN
focal_class.declarator: SLASH_SPLIT_PATTERN = "\\n/\\n"
focal_class.modifier: private static final
focal_class.original_string: private static final String SLASH_SPLIT_PATTERN = "\\n/\\n";
focal_class.type: String
focal_class.var_name: SLASH_SPLIT_PATTERN
focal_class.declarator: SET_COMMAND_PATTERN = "^\\s*SET\\s+\\w+\\s+\\w+\\s*$"
focal_class.modifier: private final
focal_class.original_string: private final String SET_COMMAND_PATTERN = "^\\s*SET\\s+\\w+\\s+\\w+\\s*$";
focal_class.type: String
focal_class.var_name: SET_COMMAND_PATTERN
focal_class.declarator: procPattern = Pattern.compile(PROCEDURE_PATTERN, Pattern.DOTALL)
focal_class.modifier: private
focal_class.original_string: private Pattern procPattern = Pattern.compile(PROCEDURE_PATTERN, Pattern.DOTALL);
focal_class.type: Pattern
focal_class.var_name: procPattern
focal_class.declarator: funcPattern = Pattern.compile(FUNCTION_PATTERN, Pattern.DOTALL)
focal_class.modifier: private
focal_class.original_string: private Pattern funcPattern = Pattern.compile(FUNCTION_PATTERN, Pattern.DOTALL);
focal_class.type: Pattern
focal_class.var_name: funcPattern
focal_class.declarator: triggerPattern = Pattern.compile(TRIGGER_PATTERN, Pattern.DOTALL)
focal_class.modifier: private
focal_class.original_string: private Pattern triggerPattern = Pattern.compile(TRIGGER_PATTERN, Pattern.DOTALL);
focal_class.type: Pattern
focal_class.var_name: triggerPattern
focal_class.declarator: packagePattern = Pattern.compile(PACKAGE_PATTERN, Pattern.DOTALL)
focal_class.modifier: private
focal_class.original_string: private Pattern packagePattern = Pattern.compile(PACKAGE_PATTERN, Pattern.DOTALL);
focal_class.type: Pattern
focal_class.var_name: packagePattern
focal_class.declarator: declPattern = Pattern.compile(DECLARE_PATTERN, Pattern.DOTALL)
focal_class.modifier: private
focal_class.original_string: private Pattern declPattern = Pattern.compile(DECLARE_PATTERN, Pattern.DOTALL);
focal_class.type: Pattern
focal_class.var_name: declPattern
focal_class.declarator: beginPattern = Pattern.compile(BEGIN_PATTERN, Pattern.DOTALL)
focal_class.modifier: private
focal_class.original_string: private Pattern beginPattern = Pattern.compile(BEGIN_PATTERN, Pattern.DOTALL);
focal_class.type: Pattern
focal_class.var_name: beginPattern
focal_class.declarator: slashPattern = Pattern.compile(SLASH_PATTERN, Pattern.DOTALL)
focal_class.modifier: private
focal_class.original_string: private Pattern slashPattern = Pattern.compile(SLASH_PATTERN, Pattern.DOTALL);
focal_class.type: Pattern
focal_class.var_name: slashPattern
focal_class.declarator: setPattern = Pattern.compile(SET_COMMAND_PATTERN, Pattern.DOTALL)
focal_class.modifier: private
focal_class.original_string: private Pattern setPattern = Pattern.compile(SET_COMMAND_PATTERN, Pattern.DOTALL);
focal_class.type: Pattern
focal_class.var_name: setPattern
focal_class.declarator: ORACLE_SCRIPT_INCLUDE_PREFIX = "@"
focal_class.modifier: private static final
focal_class.original_string: private static final String ORACLE_SCRIPT_INCLUDE_PREFIX = "@";
focal_class.type: String
focal_class.var_name: ORACLE_SCRIPT_INCLUDE_PREFIX
focal_class.declarator: _prefs = null
focal_class.modifier: private
focal_class.original_string: private IQueryTokenizerPreferenceBean _prefs = null;
focal_class.type: IQueryTokenizerPreferenceBean
focal_class.var_name: _prefs
focal_class.file: sql12/plugins/oracle/src/main/java/net/sourceforge/squirrel_sql/plugins/oracle/tokenizer/OracleQueryTokenizer.java
focal_class.identifier: OracleQueryTokenizer
focal_class.interfaces: implements IQueryTokenizer
focal_class.class_method_signature: OracleQueryTokenizer.OracleQueryTokenizer(IQueryTokenizerPreferenceBean prefs)
focal_class.full_signature: public  OracleQueryTokenizer(IQueryTokenizerPreferenceBean prefs)
focal_class.identifier: OracleQueryTokenizer
focal_class.modifiers: public
focal_class.parameters: (IQueryTokenizerPreferenceBean prefs)
focal_class.signature:  OracleQueryTokenizer(IQueryTokenizerPreferenceBean prefs)
focal_class.class_method_signature: OracleQueryTokenizer.setScriptToTokenize(String script)
focal_class.full_signature: public void setScriptToTokenize(String script)
focal_class.identifier: setScriptToTokenize
focal_class.modifiers: public
focal_class.parameters: (String script)
focal_class.return: void
focal_class.signature: void setScriptToTokenize(String script)
focal_class.class_method_signature: OracleQueryTokenizer.removeSqlPlusSetCommands()
focal_class.full_signature: private void removeSqlPlusSetCommands()
focal_class.identifier: removeSqlPlusSetCommands
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void removeSqlPlusSetCommands()
focal_class.class_method_signature: OracleQueryTokenizer.setFactory()
focal_class.full_signature: protected void setFactory()
focal_class.identifier: setFactory
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void setFactory()
focal_class.class_method_signature: OracleQueryTokenizer.removeRemainingSlashes()
focal_class.full_signature: private void removeRemainingSlashes()
focal_class.identifier: removeRemainingSlashes
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void removeRemainingSlashes()
focal_class.class_method_signature: OracleQueryTokenizer.breakApartNewLines()
focal_class.full_signature: private void breakApartNewLines()
focal_class.identifier: breakApartNewLines
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void breakApartNewLines()
focal_class.class_method_signature: OracleQueryTokenizer.joinFragments(Pattern pattern, boolean skipStraySlash)
focal_class.full_signature: private void joinFragments(Pattern pattern, boolean skipStraySlash)
focal_class.identifier: joinFragments
focal_class.modifiers: private
focal_class.parameters: (Pattern pattern, boolean skipStraySlash)
focal_class.return: void
focal_class.signature: void joinFragments(Pattern pattern, boolean skipStraySlash)
focal_class.class_method_signature: OracleQueryTokenizer.getTokenizerSessPropsInteractions()
focal_class.full_signature: @Override public TokenizerSessPropsInteractions getTokenizerSessPropsInteractions()
focal_class.identifier: getTokenizerSessPropsInteractions
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: TokenizerSessPropsInteractions
focal_class.signature: TokenizerSessPropsInteractions getTokenizerSessPropsInteractions()
focal_class.superclass: extends QueryTokenizer
focal_method.body: public void setScriptToTokenize(String script)
  	{
  		super.setScriptToTokenize(script);
  
  		removeSqlPlusSetCommands();
  
  		// Since it is likely to have "/" on it's own line, and it is key to
  		// letting us know that proceeding statements form a multi-statement
  		// procedure or function, it deserves it's own place in the _queries
  		// arraylist. If it is followed by other procedure or function creation
  		// blocks, we may fail to detect that, so this just goes through the
  		// list and breaks apart statements on newline so that this cannot
  		// happen.
  		breakApartNewLines();
  
  		// Oracle allows statement separators in PL/SQL blocks. The process
  		// of tokenizing above renders these procedure blocks as separate
  		// statements, which is invalid for Oracle. Since "/" is the way
  		// in SQL-Plus to denote the end of a procedure or function, we
  		// re-assemble any create procedure/function/trigger statements that we
  		// find. This should be done before expanding file includes. Otherwise,
  		// any create sql found in files will already be joined, causing this to
  		// find create SQL without matching "/". The process of
  		// expanding 'file includes' already joins the sql fragments that it
  		// finds.
  		joinFragments(procPattern, false);
  		joinFragments(funcPattern, false);
  		joinFragments(triggerPattern, false);
  		joinFragments(packagePattern, false);
  		joinFragments(declPattern, false);
  		joinFragments(beginPattern, true);
  
  		expandFileIncludes(ORACLE_SCRIPT_INCLUDE_PREFIX);
  
  		removeRemainingSlashes();
  
  		_queryIterator = _queries.iterator();
  	}
focal_method.class_method_signature: OracleQueryTokenizer.setScriptToTokenize(String script)
focal_method.full_signature: public void setScriptToTokenize(String script)
focal_method.identifier: setScriptToTokenize
focal_method.invocations: setScriptToTokenize removeSqlPlusSetCommands breakApartNewLines joinFragments joinFragments joinFragments joinFragments joinFragments joinFragments expandFileIncludes removeRemainingSlashes iterator
focal_method.modifiers: public
focal_method.parameters: (String script)
focal_method.return: void
focal_method.signature: void setScriptToTokenize(String script)