perform-service_broken/src/main/java/org/gcube/application/perform/service/engine/Queries.java

69 lines
2.8 KiB
Java

package org.gcube.application.perform.service.engine;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.gcube.application.perform.service.engine.model.DBField;
import org.gcube.application.perform.service.engine.model.anagraphic.Batch;
import org.gcube.application.perform.service.engine.model.anagraphic.Farm;
import org.gcube.application.perform.service.engine.model.importer.ImportRoutineDescriptor;
public class Queries {
public static final Query GET_BATCH_BY_DESCRIPTIVE_KEY= new Query("Select * from batches where farmid=? AND type=? AND name= ?",
new DBField[] {});
public static final Query INSERT_BATCH=new Query("INSERT INTO batches (id,uuid,farmid,type,name) VALUES (SELECT (max(id)+1 from batches),?,?,?,?) ON CONFLICT DO NOTHING",
new DBField[] {});
public static final Query GET_FARM_BY_ID=new Query(String.format("SELECT f.farmid as $1%s, f.uuid as %2$s, c.companyid as %3$s, c.uuid as %4$s, a.associationid as %5$s, a.uuid as %6$s FROM "
+ "farms as f INNER JOIN companies as c ON f.companyid=c.companyid INNER JOIN associations as a ON c.associationid=a.associationid WHERE f.farmid = ?",
DBField.Farm.FARM_ID,DBField.Farm.UUID,DBField.Farm.COMPANY_ID,DBField.Farm.COMPANY_UUID,DBField.Farm.ASSOCIATION_ID,DBField.Farm.ASSOCIATION_UUID),
new DBField[] {});
public static final Query GET_BATCH_BY_ID=new Query("Select * from batches where id = ?",
new DBField[] {});
// "acquire"
// set lock = hostname where ID =? and LOCK is null
// Acquired = updated rows == 1
public static final Query ORPHAN_IMPORTS=new Query("",new DBField[]{});
public static final Query ACQUIRE_PS=new Query("",new DBField[]{});
public static final Query GET_BY_ID=new Query("",new DBField[]{});
public static final Query INSERT_ROUTINE=new Query("",new DBField[]{});
public static final Query FILTER_IMPORTS=new Query("",new DBField[]{});
// LOADERS
public static Batch rowToBatch(ResultSet rs) throws SQLException {
Batch toReturn=new Batch();
toReturn.setFarmId(rs.getLong(DBField.Batch.FARM_ID));
toReturn.setId(rs.getLong(DBField.Batch.BATCH_ID));
toReturn.setName(rs.getString(DBField.Batch.BATCH_NAME));
toReturn.setType(rs.getString(DBField.Batch.BATCH_TYPE));
return toReturn;
}
public static Farm rowToFarm(ResultSet rs) throws SQLException {
Farm toReturn=new Farm();
toReturn.setAssociationId(rs.getLong(DBField.Farm.ASSOCIATION_ID));
toReturn.setAssociationUUID(rs.getString(DBField.Farm.ASSOCIATION_UUID));
toReturn.setCompanyId(rs.getLong(DBField.Farm.COMPANY_ID));
toReturn.setCompanyUUID(rs.getString(DBField.Farm.COMPANY_UUID));
toReturn.setId(rs.getLong(DBField.Farm.FARM_ID));
toReturn.setUUID(rs.getString(DBField.Farm.UUID));
return toReturn;
}
public static ImportRoutineDescriptor rowToDescriptor(ResultSet rs) {
throw new RuntimeException("IMPLEMENT THIS SHIT");
}
}