Search in sources :

Example 6 with DfTakeFinallyFinalInfo

use of org.dbflute.logic.replaceschema.finalinfo.DfTakeFinallyFinalInfo in project dbflute-core by dbflute.

the class DfReplaceSchemaTask method buildReplaceSchemaFinalMessage.

protected String buildReplaceSchemaFinalMessage() {
    final StringBuilder sb = new StringBuilder();
    if (_cancelled) {
        sb.append("    * * * * * * *").append(ln());
        sb.append("    * Cancelled *").append(ln());
        sb.append("    * * * * * * *");
        return sb.toString();
    }
    // null allowed
    final DfReplaceSchemaFinalInfo finalInfo = _replaceSchemaFinalInfo;
    boolean firstDone = false;
    // AlterFailure
    boolean alterFailure = false;
    {
        final DfAlterCheckFinalInfo alterCheckFinalInfo = _alterCheckFinalInfo;
        if (alterCheckFinalInfo != null && alterCheckFinalInfo.isValidInfo()) {
            alterFailure = alterCheckFinalInfo.isFailure();
        }
    }
    // CreateSchema
    if (finalInfo != null) {
        final DfCreateSchemaFinalInfo createSchemaFinalInfo = finalInfo.getCreateSchemaFinalInfo();
        if (createSchemaFinalInfo != null && createSchemaFinalInfo.isValidInfo()) {
            if (!alterFailure || createSchemaFinalInfo.isFailure()) {
                if (firstDone) {
                    sb.append(ln()).append(ln());
                }
                firstDone = true;
                buildSchemaTaskContents(sb, createSchemaFinalInfo);
            }
        }
    }
    // LoadData
    if (finalInfo != null) {
        final DfLoadDataFinalInfo loadDataFinalInfo = finalInfo.getLoadDataFinalInfo();
        if (loadDataFinalInfo != null && loadDataFinalInfo.isValidInfo()) {
            if (!alterFailure || loadDataFinalInfo.isFailure()) {
                if (firstDone) {
                    sb.append(ln()).append(ln());
                }
                firstDone = true;
                buildSchemaTaskContents(sb, loadDataFinalInfo);
            }
        }
    }
    // TakeFinally
    boolean assertionFailure = false;
    if (finalInfo != null) {
        final DfTakeFinallyFinalInfo takeFinallyFinalInfo = finalInfo.getTakeFinallyFinalInfo();
        if (takeFinallyFinalInfo != null) {
            assertionFailure = (takeFinallyFinalInfo.getAssertionEx() != null);
            if (takeFinallyFinalInfo.isValidInfo()) {
                if (!alterFailure || takeFinallyFinalInfo.isFailure()) {
                    if (firstDone) {
                        sb.append(ln()).append(ln());
                    }
                    firstDone = true;
                    buildSchemaTaskContents(sb, takeFinallyFinalInfo);
                }
            }
        }
    }
    // AlterCheck (AlterSchema, SavePrevious)
    {
        final DfAlterCheckFinalInfo alterCheckFinalInfo = _alterCheckFinalInfo;
        if (alterCheckFinalInfo != null && alterCheckFinalInfo.isValidInfo()) {
            if (firstDone) {
                sb.append(ln()).append(ln());
            }
            firstDone = true;
            buildSchemaTaskContents(sb, alterCheckFinalInfo);
        }
    }
    if (alterFailure) {
        // alter or create in AlterCheck
        sb.append(ln()).append("    * * * * * * * * * * *");
        sb.append(ln()).append("    * Migration Failure *");
        sb.append(ln()).append("    * * * * * * * * * * *");
    } else if (assertionFailure) {
        // assertion in normal time
        sb.append(ln()).append("    * * * * * * * * * * *");
        sb.append(ln()).append("    * Assertion Failure *");
        sb.append(ln()).append("    * * * * * * * * * * *");
    } else if (finalInfo != null && finalInfo.hasFailure()) {
        // as default
        sb.append(ln()).append("    * * * * * *");
        sb.append(ln()).append("    * Failure *");
        sb.append(ln()).append("    * * * * * *");
    }
    return sb.toString();
}
Also used : DfLoadDataFinalInfo(org.dbflute.logic.replaceschema.finalinfo.DfLoadDataFinalInfo) DfTakeFinallyFinalInfo(org.dbflute.logic.replaceschema.finalinfo.DfTakeFinallyFinalInfo) DfReplaceSchemaFinalInfo(org.dbflute.logic.replaceschema.finalinfo.DfReplaceSchemaFinalInfo) DfAlterCheckFinalInfo(org.dbflute.logic.replaceschema.finalinfo.DfAlterCheckFinalInfo) DfCreateSchemaFinalInfo(org.dbflute.logic.replaceschema.finalinfo.DfCreateSchemaFinalInfo)

Aggregations

DfTakeFinallyFinalInfo (org.dbflute.logic.replaceschema.finalinfo.DfTakeFinallyFinalInfo)6 DfTakeFinallyAssertionFailureException (org.dbflute.exception.DfTakeFinallyAssertionFailureException)2 DfRunnerInformation (org.dbflute.helper.jdbc.DfRunnerInformation)1 DfSqlFileFireResult (org.dbflute.helper.jdbc.sqlfile.DfSqlFileFireResult)1 DfAlterCheckFinalInfo (org.dbflute.logic.replaceschema.finalinfo.DfAlterCheckFinalInfo)1 DfCreateSchemaFinalInfo (org.dbflute.logic.replaceschema.finalinfo.DfCreateSchemaFinalInfo)1 DfLoadDataFinalInfo (org.dbflute.logic.replaceschema.finalinfo.DfLoadDataFinalInfo)1 DfReplaceSchemaFinalInfo (org.dbflute.logic.replaceschema.finalinfo.DfReplaceSchemaFinalInfo)1 DfTakeFinallyProcess (org.dbflute.logic.replaceschema.process.DfTakeFinallyProcess)1