DatabasePreferences preferences, boolean keepInvalidWays) {
dbCtx = new DatabaseContext(loginCredentials);
changeWriter = new ChangeWriter(dbCtx);
actionWriterMap = new HashMap<ChangeAction, ActionChangeWriter>();
actionWriterMap.put(ChangeAction.Create,
new ActionChangeWriter(changeWriter, ChangeAction.Create, keepInvalidWays));
actionWriterMap.put(ChangeAction.Modify,
new ActionChangeWriter(changeWriter, ChangeAction.Modify, keepInvalidWays));
actionWriterMap.put(ChangeAction.Delete,
new ActionChangeWriter(changeWriter, ChangeAction.Delete, keepInvalidWays));
schemaVersionValidator = new SchemaVersionValidator(dbCtx.getJdbcTemplate(), preferences);
initialized = false;
}