fixing lib

This commit is contained in:
Luca Frosini 2021-03-18 17:05:23 +01:00
parent 59adc08fcb
commit 3c27c95cf3
2 changed files with 12 additions and 6 deletions

View File

@ -55,7 +55,7 @@ public class PostgreSQLQuery {
public String getSQLInsertCommand(Record record) throws Exception {
stringBuffer = new StringBuffer();
RecordToDBFields recordToDBFields = RecordToDBMapping.getRecordToDB(record.getClass());
RecordToDBFields recordToDBFields = RecordToDBMapping.getRecordToDBFields(record.getClass());
stringBuffer.append("INSERT INTO ");
stringBuffer.append(recordToDBFields.getTableName());

View File

@ -6,6 +6,7 @@ import java.util.Map;
import org.gcube.documentstore.persistence.PersistenceBackendConfiguration;
import org.gcube.documentstore.records.AggregatedRecord;
import org.gcube.documentstore.records.Record;
import org.gcube.documentstore.records.RecordUtility;
public class RecordToDBMapping {
@ -29,17 +30,22 @@ public class RecordToDBMapping {
recordToDBInfo= new HashMap<>();
}
public static synchronized void addRecordToDB(Class<? extends AggregatedRecord<?, ?>> clz, PersistenceBackendConfiguration configuration) throws Exception {
public static void addRecordToDB(Class<? extends AggregatedRecord<?, ?>> clz, PersistenceBackendConfiguration configuration) throws Exception {
String type = getRecordTypeByClass(clz);
RecordToDBFields recordToDBMapper = new RecordToDBFields(type, clz);
classToRecordToDBMapper.put(type, recordToDBMapper);
getRecordToDBFields(clz);
RecordToDBConnection recordDBInfo = new RecordToDBConnection(type, clz, configuration);
recordToDBInfo.put(type, recordDBInfo);
}
public static synchronized RecordToDBFields getRecordToDB(Class<? extends Record> clz) throws Exception {
public static synchronized RecordToDBFields getRecordToDBFields(Class<? extends Record> clz) throws Exception {
String type = getRecordTypeByClass(clz);
return classToRecordToDBMapper.get(type);
RecordToDBFields recordToDBFields = classToRecordToDBMapper.get(type);
if(recordToDBFields == null) {
Class<? extends AggregatedRecord<?,?>> aggregatedRecordClass = RecordUtility.getAggregatedRecordClass(type);
recordToDBFields = new RecordToDBFields(type, aggregatedRecordClass);
classToRecordToDBMapper.put(type, recordToDBFields);
}
return recordToDBFields;
}
public static synchronized RecordToDBConnection getRecordDBInfo(Class<? extends Record> clz) throws Exception {