com.googlecode.flyway.core.dbsupport.mysql
Class MySQLSqlScript

java.lang.Object
  extended by com.googlecode.flyway.core.migration.sql.SqlScript
      extended by com.googlecode.flyway.core.dbsupport.mysql.MySQLSqlScript

public class MySQLSqlScript
extends SqlScript

SqlScript supporting MySQL-specific delimiter changes.


Constructor Summary
MySQLSqlScript(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 checkForNewDelimiter(java.lang.String line)
          Checks whether this line in the sql script indicates that the statement delimiter will be different from the default one.
protected  boolean isDelimiterChangeExplicit()
           
 
Methods inherited from class com.googlecode.flyway.core.migration.sql.SqlScript
execute, getChecksum, getSqlStatements
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MySQLSqlScript

public MySQLSqlScript(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

checkForNewDelimiter

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

Overrides:
checkForNewDelimiter in class SqlScript
Parameters:
line - The line to analyse.
Returns:
The new delimiter to use or null if no change in delimiter is required.

isDelimiterChangeExplicit

protected boolean isDelimiterChangeExplicit()
Overrides:
isDelimiterChangeExplicit in class SqlScript
Returns:
true if this database uses an explicit delimiter change statement. false if a delimiter change is implied by certain statements.


Copyright © 2010. All Rights Reserved.