*
* @param dbCtx
* Used to access the database.
*/
protected void runImpl(DatabaseContext2 dbCtx) {
Replicator replicator;
ReplicationSource source;
TransactionManager txnSnapshotLoader;
SystemTimeLoader systemTimeLoader;
new SchemaVersionValidator(loginCredentials, preferences)
.validateVersion(ApidbVersionConstants.SCHEMA_MIGRATIONS);
source = new AllEntityDao(dbCtx.getJdbcTemplate());
txnSnapshotLoader = new TransactionDao(dbCtx);
systemTimeLoader = new TimeDao(dbCtx.getJdbcTemplate());
replicator = new Replicator(source, changeSink, txnSnapshotLoader, systemTimeLoader, iterations, minInterval,
maxInterval);
replicator.replicate();
}