package migrations.service.mcs; import com.contrastsecurity.cassandra.migration.api.JavaMigration; import com.datastax.driver.core.PreparedStatement; import com.datastax.driver.core.Row; import com.datastax.driver.core.Session; import migrations.common.CopyTable; /** * @author krystian. */ public class V2_4__copyDataFromTemporaryTable___data_set_assignments_MCS extends CopyTable implements JavaMigration { private static final String sourceTable = "data_set_assignments_copy"; private static final String targetTable = "data_set_assignments"; private static final String select = "SELECT " + " provider_dataset_id, cloud_id, schema_id, version_id, creation_date " + " FROM " + sourceTable +" ;\n"; private static final String insert = "INSERT INTO " + targetTable + " (provider_dataset_id, cloud_id, schema_id, version_id, " + "creation_date) " + "VALUES (?,?,?,?,?);\n"; @Override public void migrate(Session session) { PreparedStatement selectStatement = session.prepare(select); PreparedStatement insertStatement = session.prepare(insert); copyTable(session, selectStatement, insertStatement); } @Override public void insert(PreparedStatement insertStatement, Row r, Session session) { session.execute(insertStatement.bind( r.getString("provider_dataset_id"), r.getString("cloud_id"), r.getString("schema_id"), r.getUUID("version_id"), r.getDate("creation_date"))); } }