org.h2.util
Class ScriptReader

java.lang.Object
  extended by org.h2.util.ScriptReader

public class ScriptReader
extends java.lang.Object

This class can split SQL scripts to single SQL statements. Each SQL statement ends with the character ';', however it is ignored in comments and quotes.


Constructor Summary
ScriptReader(java.io.Reader reader)
          Create a new SQL script reader from the given reader
 
Method Summary
 void close()
          Close the underlying reader.
 boolean isBlockRemark()
          If currently inside a remark, this method tells if it is a block comment (true) or single line comment (false)
 boolean isInsideRemark()
          Check if this is the last statement, and if the single line or block comment is not finished yet.
 java.lang.String readStatement()
          Read a statement from the reader.
 void setSkipRemarks(boolean skipRemarks)
          If comments should be skipped completely by this reader.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ScriptReader

public ScriptReader(java.io.Reader reader)
Create a new SQL script reader from the given reader

Parameters:
reader - the reader
Method Detail

close

public void close()
Close the underlying reader.


readStatement

public java.lang.String readStatement()
Read a statement from the reader. This method returns null if the end has been reached.

Returns:
the SQL statement or null

isInsideRemark

public boolean isInsideRemark()
Check if this is the last statement, and if the single line or block comment is not finished yet.

Returns:
true if the current position is inside a remark

isBlockRemark

public boolean isBlockRemark()
If currently inside a remark, this method tells if it is a block comment (true) or single line comment (false)

Returns:
true if inside a block comment

setSkipRemarks

public void setSkipRemarks(boolean skipRemarks)
If comments should be skipped completely by this reader.

Parameters:
skipRemarks - true if comments should be skipped