Search in sources :

Example 1 with SqliteDatabasePlatform

use of org.jumpmind.db.platform.sqlite.SqliteDatabasePlatform in project symmetric-ds by JumpMind.

the class JdbcSymmetricDialectFactory method create.

public ISymmetricDialect create() {
    AbstractSymmetricDialect dialect = null;
    if (platform instanceof MariaDBDatabasePlatform) {
        dialect = new MariaDBSymmetricDialect(parameterService, platform);
    } else if (platform instanceof MySqlDatabasePlatform) {
        dialect = new MySqlSymmetricDialect(parameterService, platform);
    } else if (platform instanceof OracleDatabasePlatform) {
        dialect = new OracleSymmetricDialect(parameterService, platform);
    } else if (platform instanceof MsSql2008DatabasePlatform) {
        dialect = new MsSqlSymmetricDialect(parameterService, platform);
    } else if (platform instanceof MsSql2005DatabasePlatform) {
        dialect = new MsSqlSymmetricDialect(parameterService, platform);
    } else if (platform instanceof MsSql2000DatabasePlatform) {
        dialect = new MsSql2000SymmetricDialect(parameterService, platform);
    } else if (platform instanceof GreenplumPlatform) {
        dialect = new GreenplumSymmetricDialect(parameterService, platform);
    } else if (platform instanceof RedshiftDatabasePlatform) {
        dialect = new RedshiftSymmetricDialect(parameterService, platform);
    } else if (platform instanceof PostgreSqlDatabasePlatform) {
        dialect = new PostgreSqlSymmetricDialect(parameterService, platform);
    } else if (platform instanceof DerbyDatabasePlatform) {
        dialect = new DerbySymmetricDialect(parameterService, platform);
    } else if (platform instanceof H2DatabasePlatform) {
        dialect = new H2SymmetricDialect(parameterService, platform);
    } else if (platform instanceof HsqlDbDatabasePlatform) {
        dialect = new HsqlDbSymmetricDialect(parameterService, platform);
    } else if (platform instanceof HsqlDb2DatabasePlatform) {
        dialect = new HsqlDb2SymmetricDialect(parameterService, platform);
    } else if (platform instanceof InformixDatabasePlatform) {
        dialect = new InformixSymmetricDialect(parameterService, platform);
    } else if (platform instanceof Db2zOsDatabasePlatform) {
        dialect = new Db2zOsSymmetricDialect(parameterService, platform);
    } else if (platform instanceof Db2As400DatabasePlatform) {
        dialect = new Db2As400SymmetricDialect(parameterService, platform);
    } else if (platform instanceof Db2DatabasePlatform) {
        int dbMajorVersion = platform.getSqlTemplate().getDatabaseMajorVersion();
        int dbMinorVersion = platform.getSqlTemplate().getDatabaseMinorVersion();
        if (dbMajorVersion < 9 || (dbMajorVersion == 9 && dbMinorVersion < 5)) {
            dialect = new Db2SymmetricDialect(parameterService, platform);
        } else {
            dialect = new Db2v9SymmetricDialect(parameterService, platform);
        }
    } else if (platform instanceof FirebirdDatabasePlatform) {
        int dbMajorVersion = platform.getSqlTemplate().getDatabaseMajorVersion();
        int dbMinorVersion = platform.getSqlTemplate().getDatabaseMinorVersion();
        if (dbMajorVersion == 2 && dbMinorVersion == 0) {
            dialect = new Firebird20SymmetricDialect(parameterService, platform);
        } else if (dbMajorVersion == 2) {
            dialect = new Firebird21SymmetricDialect(parameterService, platform);
        } else {
            dialect = new FirebirdSymmetricDialect(parameterService, platform);
        }
    } else if (platform instanceof AseDatabasePlatform) {
        dialect = new AseSymmetricDialect(parameterService, platform);
    } else if (platform instanceof SqlAnywhereDatabasePlatform) {
        dialect = new SqlAnywhereSymmetricDialect(parameterService, platform);
    } else if (platform instanceof InterbaseDatabasePlatform) {
        dialect = new InterbaseSymmetricDialect(parameterService, platform);
    } else if (platform instanceof SqliteDatabasePlatform) {
        dialect = new SqliteSymmetricDialect(parameterService, platform);
    } else {
        throw new DbNotSupportedException();
    }
    return dialect;
}
Also used : MySqlDatabasePlatform(org.jumpmind.db.platform.mysql.MySqlDatabasePlatform) MySqlSymmetricDialect(org.jumpmind.symmetric.db.mysql.MySqlSymmetricDialect) Db2DatabasePlatform(org.jumpmind.db.platform.db2.Db2DatabasePlatform) HsqlDb2DatabasePlatform(org.jumpmind.db.platform.hsqldb2.HsqlDb2DatabasePlatform) InformixSymmetricDialect(org.jumpmind.symmetric.db.informix.InformixSymmetricDialect) Firebird20SymmetricDialect(org.jumpmind.symmetric.db.firebird.Firebird20SymmetricDialect) InformixDatabasePlatform(org.jumpmind.db.platform.informix.InformixDatabasePlatform) Db2SymmetricDialect(org.jumpmind.symmetric.db.db2.Db2SymmetricDialect) HsqlDb2SymmetricDialect(org.jumpmind.symmetric.db.hsqldb2.HsqlDb2SymmetricDialect) AseDatabasePlatform(org.jumpmind.db.platform.ase.AseDatabasePlatform) AseSymmetricDialect(org.jumpmind.symmetric.db.ase.AseSymmetricDialect) InterbaseDatabasePlatform(org.jumpmind.db.platform.interbase.InterbaseDatabasePlatform) MsSqlSymmetricDialect(org.jumpmind.symmetric.db.mssql.MsSqlSymmetricDialect) InterbaseSymmetricDialect(org.jumpmind.symmetric.db.interbase.InterbaseSymmetricDialect) HsqlDbSymmetricDialect(org.jumpmind.symmetric.db.hsqldb.HsqlDbSymmetricDialect) OracleDatabasePlatform(org.jumpmind.db.platform.oracle.OracleDatabasePlatform) PostgreSqlSymmetricDialect(org.jumpmind.symmetric.db.postgresql.PostgreSqlSymmetricDialect) Db2zOsDatabasePlatform(org.jumpmind.db.platform.db2.Db2zOsDatabasePlatform) H2SymmetricDialect(org.jumpmind.symmetric.db.h2.H2SymmetricDialect) SqlAnywhereDatabasePlatform(org.jumpmind.db.platform.sqlanywhere.SqlAnywhereDatabasePlatform) RedshiftSymmetricDialect(org.jumpmind.symmetric.db.redshift.RedshiftSymmetricDialect) MsSql2008DatabasePlatform(org.jumpmind.db.platform.mssql.MsSql2008DatabasePlatform) FirebirdDatabasePlatform(org.jumpmind.db.platform.firebird.FirebirdDatabasePlatform) Firebird21SymmetricDialect(org.jumpmind.symmetric.db.firebird.Firebird21SymmetricDialect) MsSql2005DatabasePlatform(org.jumpmind.db.platform.mssql.MsSql2005DatabasePlatform) DerbySymmetricDialect(org.jumpmind.symmetric.db.derby.DerbySymmetricDialect) MariaDBSymmetricDialect(org.jumpmind.symmetric.db.mariadb.MariaDBSymmetricDialect) SqliteDatabasePlatform(org.jumpmind.db.platform.sqlite.SqliteDatabasePlatform) MsSql2000SymmetricDialect(org.jumpmind.symmetric.db.mssql2000.MsSql2000SymmetricDialect) Db2As400DatabasePlatform(org.jumpmind.db.platform.db2.Db2As400DatabasePlatform) Db2As400SymmetricDialect(org.jumpmind.symmetric.db.db2.Db2As400SymmetricDialect) RedshiftDatabasePlatform(org.jumpmind.db.platform.redshift.RedshiftDatabasePlatform) PostgreSqlDatabasePlatform(org.jumpmind.db.platform.postgresql.PostgreSqlDatabasePlatform) HsqlDb2SymmetricDialect(org.jumpmind.symmetric.db.hsqldb2.HsqlDb2SymmetricDialect) H2DatabasePlatform(org.jumpmind.db.platform.h2.H2DatabasePlatform) HsqlDbDatabasePlatform(org.jumpmind.db.platform.hsqldb.HsqlDbDatabasePlatform) HsqlDb2DatabasePlatform(org.jumpmind.db.platform.hsqldb2.HsqlDb2DatabasePlatform) Db2zOsSymmetricDialect(org.jumpmind.symmetric.db.db2.Db2zOsSymmetricDialect) FirebirdSymmetricDialect(org.jumpmind.symmetric.db.firebird.FirebirdSymmetricDialect) GreenplumPlatform(org.jumpmind.db.platform.greenplum.GreenplumPlatform) SqlAnywhereSymmetricDialect(org.jumpmind.symmetric.db.sqlanywhere.SqlAnywhereSymmetricDialect) MsSql2000DatabasePlatform(org.jumpmind.db.platform.mssql.MsSql2000DatabasePlatform) Db2v9SymmetricDialect(org.jumpmind.symmetric.db.db2.Db2v9SymmetricDialect) DerbyDatabasePlatform(org.jumpmind.db.platform.derby.DerbyDatabasePlatform) SqliteSymmetricDialect(org.jumpmind.symmetric.db.sqlite.SqliteSymmetricDialect) MariaDBDatabasePlatform(org.jumpmind.db.platform.mariadb.MariaDBDatabasePlatform) OracleSymmetricDialect(org.jumpmind.symmetric.db.oracle.OracleSymmetricDialect) GreenplumSymmetricDialect(org.jumpmind.symmetric.db.postgresql.GreenplumSymmetricDialect)

Example 2 with SqliteDatabasePlatform

use of org.jumpmind.db.platform.sqlite.SqliteDatabasePlatform in project symmetric-ds by JumpMind.

the class AbstractWriterTest method assertEquals.

protected void assertEquals(String[] name, String[] expected, Map<String, Object> results) {
    if (expected == null) {
        Assert.assertNull("Expected empty results. " + printDatabase(), results);
    } else {
        Assert.assertNotNull(String.format("Did not find the expected row: %s.", Arrays.toString(expected)), results);
        for (int i = 0; i < expected.length; i++) {
            Object resultObj = results.get(name[i]);
            String resultValue = null;
            char decimal = ((DecimalFormat) DecimalFormat.getInstance()).getDecimalFormatSymbols().getDecimalSeparator();
            if ((resultObj instanceof Double || resultObj instanceof BigDecimal) && expected[i].indexOf(decimal) != -1) {
                DecimalFormat df = new DecimalFormat("0.00####################################");
                resultValue = df.format(resultObj);
            } else if (resultObj instanceof Date) {
                SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.000");
                resultValue = df.format(resultObj);
            } else if (resultObj instanceof Boolean) {
                resultValue = ((Boolean) resultObj) ? "1" : "0";
            } else if (resultObj instanceof Double) {
                resultValue = resultObj.toString();
                if (platform instanceof SqliteDatabasePlatform) {
                    expected[i] = new Double(expected[i]).toString();
                }
            } else if (resultObj != null) {
                resultValue = resultObj.toString();
            }
            Assert.assertEquals(name[i] + ". " + printDatabase(), expected[i], resultValue);
        }
    }
}
Also used : SqliteDatabasePlatform(org.jumpmind.db.platform.sqlite.SqliteDatabasePlatform) DecimalFormat(java.text.DecimalFormat) SimpleDateFormat(java.text.SimpleDateFormat) BigDecimal(java.math.BigDecimal) Date(java.util.Date)

Aggregations

SqliteDatabasePlatform (org.jumpmind.db.platform.sqlite.SqliteDatabasePlatform)2 BigDecimal (java.math.BigDecimal)1 DecimalFormat (java.text.DecimalFormat)1 SimpleDateFormat (java.text.SimpleDateFormat)1 Date (java.util.Date)1 AseDatabasePlatform (org.jumpmind.db.platform.ase.AseDatabasePlatform)1 Db2As400DatabasePlatform (org.jumpmind.db.platform.db2.Db2As400DatabasePlatform)1 Db2DatabasePlatform (org.jumpmind.db.platform.db2.Db2DatabasePlatform)1 Db2zOsDatabasePlatform (org.jumpmind.db.platform.db2.Db2zOsDatabasePlatform)1 DerbyDatabasePlatform (org.jumpmind.db.platform.derby.DerbyDatabasePlatform)1 FirebirdDatabasePlatform (org.jumpmind.db.platform.firebird.FirebirdDatabasePlatform)1 GreenplumPlatform (org.jumpmind.db.platform.greenplum.GreenplumPlatform)1 H2DatabasePlatform (org.jumpmind.db.platform.h2.H2DatabasePlatform)1 HsqlDbDatabasePlatform (org.jumpmind.db.platform.hsqldb.HsqlDbDatabasePlatform)1 HsqlDb2DatabasePlatform (org.jumpmind.db.platform.hsqldb2.HsqlDb2DatabasePlatform)1 InformixDatabasePlatform (org.jumpmind.db.platform.informix.InformixDatabasePlatform)1 InterbaseDatabasePlatform (org.jumpmind.db.platform.interbase.InterbaseDatabasePlatform)1 MariaDBDatabasePlatform (org.jumpmind.db.platform.mariadb.MariaDBDatabasePlatform)1 MsSql2000DatabasePlatform (org.jumpmind.db.platform.mssql.MsSql2000DatabasePlatform)1 MsSql2005DatabasePlatform (org.jumpmind.db.platform.mssql.MsSql2005DatabasePlatform)1