クラス DbVersionHandler
- java.lang.Object
-
- com.sqlapp.data.db.command.version.DbVersionHandler
-
public class DbVersionHandler extends java.lang.Object
-
-
フィールドの概要
フィールド 修飾子とタイプ フィールド 説明 static java.lang.StringCOL_MIGRATIONstatic java.lang.StringCOL_VERSION_DOWN_SQLstatic java.lang.StringCOL_VERSION_UP_SQL
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 DbVersionHandler()
-
メソッドの概要
すべてのメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 voidappend(com.sqlapp.data.schemas.Table table, com.sqlapp.util.OutputTextBuilder builder)booleancreateTable(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table)com.sqlapp.data.schemas.TablecreateVersionTableDefinition()デフォルトの名前でバージョン管理テーブル定義を作成します。com.sqlapp.data.schemas.TablecreateVersionTableDefinition(java.lang.String name)名前を指定してバージョン管理テーブルを取得します。intdeleteVersion(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table, long id)intdeleteVersion(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table, com.sqlapp.data.schemas.Row row)booleandropTable(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table)booleanexists(com.sqlapp.data.db.dialect.Dialect dialect, java.sql.Connection connection, com.sqlapp.data.schemas.Table table, java.lang.Long id)voidexists(com.sqlapp.data.db.dialect.Dialect dialect, java.sql.Connection connection, com.sqlapp.data.schemas.Table table, java.lang.Long id, java.util.function.Consumer<com.sqlapp.jdbc.ExResultSet> cons)protected java.util.DategetAppliedAt(com.sqlapp.data.schemas.Row row)java.lang.StringgetAppliedAtColumnName()java.lang.StringgetAppliedByColumnName()protected java.lang.StringgetDescription(com.sqlapp.data.schemas.Row row)java.lang.StringgetDescriptionColumnName()protected java.lang.LonggetId(com.sqlapp.data.schemas.Row row)java.lang.StringgetIdColumnName()java.lang.LonggetLastApplied(com.sqlapp.data.schemas.Table table)java.util.List<com.sqlapp.data.schemas.Row>getRowsForVersionDown(com.sqlapp.data.schemas.Table table, java.lang.Long version)最後に適用されたバージョンを返します。java.util.List<com.sqlapp.data.schemas.Row>getRowsForVersionDownSeries(com.sqlapp.data.schemas.Table table)一括適用されたバージョンを返します。java.util.List<com.sqlapp.data.schemas.Row>getRowsForVersionMerge(com.sqlapp.data.schemas.Table table, java.util.List<DbVersionFileHandler.SqlFile> sqlFiles)Merge用のバージョンを返します。com.sqlapp.data.schemas.RowgetRowsForVersionRepair(com.sqlapp.data.schemas.Table table)Repair対象バージョンを返します。java.util.List<com.sqlapp.data.schemas.Row>getRowsForVersionUp(com.sqlapp.data.schemas.Table table, java.lang.Long version)java.lang.StringgetSchemaChangeLogTableName()protected java.lang.LonggetSeriesNumber(com.sqlapp.data.schemas.Row row)java.lang.StringgetSeriesNumberColumnName()protected StatusgetStatus(com.sqlapp.data.schemas.Row row)java.lang.StringgetStatusColumnName()protected com.sqlapp.data.schemas.TablegetTable(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table)intinsertVersion(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table, com.sqlapp.data.schemas.Row row, java.lang.Long seriesNumber, Status status)booleanisWithSeriesNumber()voidload(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table)com.sqlapp.data.schemas.RowmarkCurrentVersion(com.sqlapp.data.schemas.Table table)voidmergeSqlFiles(java.util.List<DbVersionFileHandler.SqlFile> sqlFiles, com.sqlapp.data.schemas.Table table)voidsetAppliedAtColumnName(java.lang.String appliedAtColumnName)voidsetAppliedByColumnName(java.lang.String appliedByColumnName)voidsetDescriptionColumnName(java.lang.String descriptionColumnName)voidsetIdColumnName(java.lang.String idColumnName)voidsetSchemaChangeLogTableName(java.lang.String schemaChangeLogTableName)voidsetSeriesNumberColumnName(java.lang.String seriesNumberColumnName)voidsetStatusColumnName(java.lang.String statusColumnName)voidsetWithSeriesNumber(boolean withSeriesNumber)intupdateVersion(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table, com.sqlapp.data.schemas.Row row, java.lang.Long id, Status from, Status to)
-
-
-
メソッドの詳細
-
getIdColumnName
public java.lang.String getIdColumnName()
- 戻り値:
- the idColumnName
-
setIdColumnName
public void setIdColumnName(java.lang.String idColumnName)
- パラメータ:
idColumnName- the idColumnName to set
-
getAppliedByColumnName
public java.lang.String getAppliedByColumnName()
- 戻り値:
- the appliedByColumnName
-
setAppliedByColumnName
public void setAppliedByColumnName(java.lang.String appliedByColumnName)
- パラメータ:
appliedByColumnName- the appliedByColumnName to set
-
getAppliedAtColumnName
public java.lang.String getAppliedAtColumnName()
- 戻り値:
- the appliedAtColumnName
-
setAppliedAtColumnName
public void setAppliedAtColumnName(java.lang.String appliedAtColumnName)
- パラメータ:
appliedAtColumnName- the appliedAtColumnName to set
-
getStatusColumnName
public java.lang.String getStatusColumnName()
- 戻り値:
- the statusColumnName
-
setStatusColumnName
public void setStatusColumnName(java.lang.String statusColumnName)
- パラメータ:
statusColumnName- the statusColumnName to set
-
getDescriptionColumnName
public java.lang.String getDescriptionColumnName()
- 戻り値:
- the descriptionColumnName
-
setDescriptionColumnName
public void setDescriptionColumnName(java.lang.String descriptionColumnName)
- パラメータ:
descriptionColumnName- the descriptionColumnName to set
-
getSeriesNumberColumnName
public java.lang.String getSeriesNumberColumnName()
- 戻り値:
- the seriesNumberColumnName
-
setSeriesNumberColumnName
public void setSeriesNumberColumnName(java.lang.String seriesNumberColumnName)
- パラメータ:
seriesNumberColumnName- the seriesNumberColumnName to set
-
createVersionTableDefinition
public com.sqlapp.data.schemas.Table createVersionTableDefinition(java.lang.String name)
名前を指定してバージョン管理テーブルを取得します。- パラメータ:
name- 名前- 戻り値:
- バージョン管理テーブル定義
-
mergeSqlFiles
public void mergeSqlFiles(java.util.List<DbVersionFileHandler.SqlFile> sqlFiles, com.sqlapp.data.schemas.Table table)
-
getId
protected java.lang.Long getId(com.sqlapp.data.schemas.Row row)
-
getAppliedAt
protected java.util.Date getAppliedAt(com.sqlapp.data.schemas.Row row)
-
getStatus
protected Status getStatus(com.sqlapp.data.schemas.Row row)
-
getSeriesNumber
protected java.lang.Long getSeriesNumber(com.sqlapp.data.schemas.Row row)
-
getDescription
protected java.lang.String getDescription(com.sqlapp.data.schemas.Row row)
-
append
public void append(com.sqlapp.data.schemas.Table table, com.sqlapp.util.OutputTextBuilder builder)
-
createVersionTableDefinition
public com.sqlapp.data.schemas.Table createVersionTableDefinition()
デフォルトの名前でバージョン管理テーブル定義を作成します。- 戻り値:
- バージョン管理テーブル定義
-
getLastApplied
public java.lang.Long getLastApplied(com.sqlapp.data.schemas.Table table)
-
markCurrentVersion
public com.sqlapp.data.schemas.Row markCurrentVersion(com.sqlapp.data.schemas.Table table)
-
getRowsForVersionUp
public java.util.List<com.sqlapp.data.schemas.Row> getRowsForVersionUp(com.sqlapp.data.schemas.Table table, java.lang.Long version)
-
getRowsForVersionDown
public java.util.List<com.sqlapp.data.schemas.Row> getRowsForVersionDown(com.sqlapp.data.schemas.Table table, java.lang.Long version)最後に適用されたバージョンを返します。- パラメータ:
table- バージョン管理テーブルversion- バージョン- 戻り値:
- 最後に適用されたバージョン
-
getRowsForVersionMerge
public java.util.List<com.sqlapp.data.schemas.Row> getRowsForVersionMerge(com.sqlapp.data.schemas.Table table, java.util.List<DbVersionFileHandler.SqlFile> sqlFiles)Merge用のバージョンを返します。- パラメータ:
table- バージョン管理テーブルsqlFiles- 対象のSQL- 戻り値:
- 未適用のバージョン
-
getRowsForVersionRepair
public com.sqlapp.data.schemas.Row getRowsForVersionRepair(com.sqlapp.data.schemas.Table table)
Repair対象バージョンを返します。- パラメータ:
table- バージョン管理テーブル- 戻り値:
- Repair対象バージョン
-
exists
public boolean exists(com.sqlapp.data.db.dialect.Dialect dialect, java.sql.Connection connection, com.sqlapp.data.schemas.Table table, java.lang.Long id) throws java.sql.SQLException- 例外:
java.sql.SQLException
-
exists
public void exists(com.sqlapp.data.db.dialect.Dialect dialect, java.sql.Connection connection, com.sqlapp.data.schemas.Table table, java.lang.Long id, java.util.function.Consumer<com.sqlapp.jdbc.ExResultSet> cons) throws java.sql.SQLException- 例外:
java.sql.SQLException
-
getRowsForVersionDownSeries
public java.util.List<com.sqlapp.data.schemas.Row> getRowsForVersionDownSeries(com.sqlapp.data.schemas.Table table)
一括適用されたバージョンを返します。- パラメータ:
table- バージョン管理テーブル- 戻り値:
- 一括適用されたバージョン
-
getTable
protected com.sqlapp.data.schemas.Table getTable(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table) throws java.sql.SQLException- 例外:
java.sql.SQLException
-
createTable
public boolean createTable(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table) throws java.sql.SQLException- 例外:
java.sql.SQLException
-
dropTable
public boolean dropTable(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table) throws java.sql.SQLException- 例外:
java.sql.SQLException
-
load
public void load(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table) throws java.sql.SQLException- 例外:
java.sql.SQLException
-
insertVersion
public int insertVersion(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table, com.sqlapp.data.schemas.Row row, java.lang.Long seriesNumber, Status status) throws java.sql.SQLException- 例外:
java.sql.SQLException
-
updateVersion
public int updateVersion(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table, com.sqlapp.data.schemas.Row row, java.lang.Long id, Status from, Status to) throws java.sql.SQLException- 例外:
java.sql.SQLException
-
deleteVersion
public int deleteVersion(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table, com.sqlapp.data.schemas.Row row) throws java.sql.SQLException- 例外:
java.sql.SQLException
-
deleteVersion
public int deleteVersion(java.sql.Connection connection, com.sqlapp.data.db.dialect.Dialect dialect, com.sqlapp.data.schemas.Table table, long id) throws java.sql.SQLException- 例外:
java.sql.SQLException
-
getSchemaChangeLogTableName
public java.lang.String getSchemaChangeLogTableName()
- 戻り値:
- the schemaChangeLogTableName
-
setSchemaChangeLogTableName
public void setSchemaChangeLogTableName(java.lang.String schemaChangeLogTableName)
- パラメータ:
schemaChangeLogTableName- the schemaChangeLogTableName to set
-
isWithSeriesNumber
public boolean isWithSeriesNumber()
- 戻り値:
- the withSeriesNumber
-
setWithSeriesNumber
public void setWithSeriesNumber(boolean withSeriesNumber)
- パラメータ:
withSeriesNumber- the withSeriesNumber to set
-
-