com.googlecode.flyway.core.dbsupport.h2
Class H2SqlScript

java.lang.Object
  extended by com.googlecode.flyway.core.migration.sql.SqlScript
      extended by com.googlecode.flyway.core.dbsupport.h2.H2SqlScript

public class H2SqlScript
extends SqlScript

SqlScript supporting Hsql-specific delimiter changes.


Field Summary
 
Fields inherited from class com.googlecode.flyway.core.migration.sql.SqlScript
DEFAULT_STATEMENT_DELIMITER
 
Constructor Summary
H2SqlScript(java.lang.String sqlScriptSource, PlaceholderReplacer placeholderReplacer)
          Creates a new sql script from this source with these placeholders to replace.
 
Method Summary
protected  java.lang.String changeDelimiterIfNecessary(java.lang.String statement, java.lang.String line, java.lang.String delimiter)
          Checks whether this line in the sql script indicates that the statement delimiter will be different from the current one.
 
Methods inherited from class com.googlecode.flyway.core.migration.sql.SqlScript
execute, getSqlStatements, isCommentDirective, isDelimiterChangeExplicit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

H2SqlScript

public H2SqlScript(java.lang.String sqlScriptSource,
                   PlaceholderReplacer placeholderReplacer)
Creates a new sql script from this source with these placeholders to replace.

Parameters:
sqlScriptSource - The sql script as a text block with all placeholders still present.
placeholderReplacer - The placeholder replacer to apply to sql migration scripts.
Throws:
java.lang.IllegalStateException - Thrown when the script could not be read from this resource.
Method Detail

changeDelimiterIfNecessary

protected java.lang.String changeDelimiterIfNecessary(java.lang.String statement,
                                                      java.lang.String line,
                                                      java.lang.String delimiter)
Description copied from class: SqlScript
Checks whether this line in the sql script indicates that the statement delimiter will be different from the current one. Useful for database-specific stored procedures and block constructs.

Overrides:
changeDelimiterIfNecessary in class SqlScript
Parameters:
statement - The statement assembled so far, reduced to a single line with all linebreaks replaced by spaces.
line - The line to analyse.
delimiter - The current delimiter.
Returns:
The new delimiter to use (can be the same as the current one) or null for no delimiter.


Copyright © 2011. All Rights Reserved.