Skip to content

Commit a04fb84

Browse files
committed
#6 Reverting unproper changes, adding support for both resource_uuid and sourcefileid in ImportLog model. Reflected changes on the database scripts.
1 parent 0d11359 commit a04fb84

22 files changed

+171
-125
lines changed

Diff for: src/main/java/net/canadensys/dataportal/occurrence/dao/ImportLogDAO.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,5 @@ public interface ImportLogDAO {
3232
* Load the last inserted ImportLogModel for a specific resource_uuid
3333
* @return ImportLogModel or null if nothing is found
3434
*/
35-
public ImportLogModel loadLastFrom(String resource_uuid);
35+
public ImportLogModel loadLastFrom(String sourceFileId);
3636
}

Diff for: src/main/java/net/canadensys/dataportal/occurrence/dao/OccurrenceDAO.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,12 @@ public interface OccurrenceDAO {
4040

4141
/**
4242
* Load a specific Occurrence into an OccurrenceModel
43-
* @param resource_uuid
43+
* @param sourceFileId
4444
* @param dwcaId
4545
* @param deepLoad Do we need to load the raw model?
4646
* @return
4747
*/
48-
public OccurrenceModel load(String resource_uuid, String dwcaId, boolean deepLoad);
48+
public OccurrenceModel load(String sourceFileId, String dwcaId, boolean deepLoad);
4949

5050
/**
5151
* Load a specific Occurrence into an OccurrenceModel but only filled columns specified by columnList.

Diff for: src/main/java/net/canadensys/dataportal/occurrence/dao/OccurrenceExtensionDAO.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public interface OccurrenceExtensionDAO {
2727
* @param dwcaId
2828
* @return list of matching OccurrenceExtensionModel or empty list
2929
*/
30-
public List<OccurrenceExtensionModel> load(String extensionType, String resourceUUID, String dwcaId);
30+
public List<OccurrenceExtensionModel> load(String extensionType, String sourcefileid, String dwcaId);
3131

3232
/**
3333
* Save a OccurrenceExtensionModel

Diff for: src/main/java/net/canadensys/dataportal/occurrence/dao/impl/HibernateImportLogDAO.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,9 @@ public ImportLogModel loadLast(){
5757
}
5858

5959
@Override
60-
public ImportLogModel loadLastFrom(String resource_uuid){
60+
public ImportLogModel loadLastFrom(String sourceFileId){
6161
Criteria c = sessionFactory.getCurrentSession().createCriteria(ImportLogModel.class);
62-
c.add(Restrictions.eq(OccurrenceFieldConstants.RESOURCE_UUID, resource_uuid));
62+
c.add(Restrictions.eq(OccurrenceFieldConstants.SOURCE_FILE_ID, sourceFileId));
6363
c.addOrder(Order.desc(MANAGED_ID));
6464
c.setMaxResults(1);
6565
return (ImportLogModel)c.uniqueResult();

Diff for: src/main/java/net/canadensys/dataportal/occurrence/dao/impl/HibernateOccurrenceDAO.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -91,9 +91,9 @@ public OccurrenceModel load(int auto_id, boolean deepLoad) {
9191
}
9292

9393
@Override
94-
public OccurrenceModel load(String resource_uuid, String dwcaId, boolean deepLoad){
94+
public OccurrenceModel load(String sourceFileId, String dwcaId, boolean deepLoad){
9595
Criteria searchCriteria = sessionFactory.getCurrentSession().createCriteria(OccurrenceModel.class);
96-
searchCriteria.add(Restrictions.eq(OccurrenceFieldConstants.RESOURCE_UUID, resource_uuid));
96+
searchCriteria.add(Restrictions.eq(OccurrenceFieldConstants.SOURCE_FILE_ID, sourceFileId));
9797
searchCriteria.add(Restrictions.eq(OccurrenceFieldConstants.DWCA_ID, dwcaId));
9898

9999
if(deepLoad){

Diff for: src/main/java/net/canadensys/dataportal/occurrence/dao/impl/HibernateOccurrenceExtensionDAO.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,11 @@ public OccurrenceExtensionModel load(Long id) {
5151

5252
@SuppressWarnings("unchecked")
5353
@Override
54-
public List<OccurrenceExtensionModel> load(String extensionType, String resourceUUID, String dwcaId) {
54+
public List<OccurrenceExtensionModel> load(String extensionType, String sourcefileid, String dwcaId) {
5555
Criteria searchCriteria = sessionFactory.getCurrentSession().createCriteria(OccurrenceExtensionModel.class);
5656

5757
searchCriteria.add(Restrictions.eq(EXTENSION_TYPE, extensionType));
58-
searchCriteria.add(Restrictions.eq(OccurrenceFieldConstants.RESOURCE_UUID, resourceUUID));
58+
searchCriteria.add(Restrictions.eq(OccurrenceFieldConstants.SOURCE_FILE_ID, sourcefileid));
5959
searchCriteria.add(Restrictions.eq(OccurrenceFieldConstants.DWCA_ID, dwcaId));
6060
return searchCriteria.list();
6161
}

Diff for: src/main/java/net/canadensys/dataportal/occurrence/dao/impl/HibernateResourceDAO.java

+14-13
Original file line numberDiff line numberDiff line change
@@ -16,43 +16,44 @@
1616

1717
@Repository("resourceDAO")
1818
public class HibernateResourceDAO implements ResourceDAO {
19-
20-
//get log4j handler
19+
20+
// get log4j handler
2121
private static final Logger LOGGER = Logger.getLogger(HibernateResourceDAO.class);
22-
22+
2323
@Autowired
2424
private SessionFactory sessionFactory;
25-
25+
2626
@Override
27-
public List<ResourceModel> loadResources(){
27+
public List<ResourceModel> loadResources() {
2828
Criteria searchCriteria = sessionFactory.getCurrentSession().createCriteria(ResourceModel.class);
2929
return searchCriteria.list();
3030
}
31-
31+
3232
@Override
3333
public boolean save(ResourceModel resourceModel) {
34-
try{
34+
try {
3535
sessionFactory.getCurrentSession().saveOrUpdate(resourceModel);
3636
}
37-
catch(HibernateException hEx){
37+
catch (HibernateException hEx) {
3838
LOGGER.fatal("Couldn't save ResourceModel", hEx);
3939
return false;
4040
}
4141
return true;
4242
}
4343

4444
@Override
45-
public ResourceModel load(String resource_uuid) {
45+
public ResourceModel load(String sourceFileId) {
4646
Criteria searchCriteria = sessionFactory.getCurrentSession().createCriteria(ResourceModel.class);
47-
searchCriteria.add(Restrictions.eq(OccurrenceFieldConstants.RESOURCE_UUID, resource_uuid));
48-
return (ResourceModel)searchCriteria.uniqueResult();
47+
searchCriteria.add(Restrictions.eq(OccurrenceFieldConstants.SOURCE_FILE_ID, sourceFileId));
48+
return (ResourceModel) searchCriteria.uniqueResult();
4949
}
50-
50+
5151
public SessionFactory getSessionFactory() {
5252
return sessionFactory;
5353
}
54+
5455
public void setSessionFactory(SessionFactory sessionFactory) {
5556
this.sessionFactory = sessionFactory;
5657
}
57-
58+
5859
}

Diff for: src/main/java/net/canadensys/dataportal/occurrence/model/ImportLogModel.java

+33-17
Original file line numberDiff line numberDiff line change
@@ -12,76 +12,92 @@
1212

1313
import org.apache.commons.lang3.builder.ToStringBuilder;
1414

15-
1615
/**
1716
* Model to track the import of DwcA
17+
*
1818
* @author canadensys
1919
*/
2020
@Entity
2121
@Table(name = "import_log")
22-
//allocationSize=1 is a workaround to avoid improper behavior
23-
//http://acodapella.blogspot.ca/2011/06/hibernate-annotation-postgresql.html
24-
@SequenceGenerator(name = "import_log_id_seq", sequenceName = "import_log_id_seq", allocationSize=1)
25-
public class ImportLogModel implements Serializable{
26-
22+
// allocationSize=1 is a workaround to avoid improper behavior
23+
// http://acodapella.blogspot.ca/2011/06/hibernate-annotation-postgresql.html
24+
@SequenceGenerator(name = "import_log_id_seq", sequenceName = "import_log_id_seq", allocationSize = 1)
25+
public class ImportLogModel implements Serializable {
26+
2727
private static final long serialVersionUID = 8675980642316964256L;
28-
28+
2929
@Id
3030
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "import_log_id_seq")
3131
private Integer id;
32+
private String sourcefileid;
3233
private String resource_uuid;
3334
private Integer record_quantity;
3435
private String updated_by;
3536
private Integer import_process_duration_ms;
3637
private Date event_end_date_time;
37-
38+
3839
public Integer getId() {
3940
return id;
4041
}
42+
4143
public void setId(Integer id) {
4244
this.id = id;
4345
}
44-
46+
4547
public Integer getRecord_quantity() {
4648
return record_quantity;
4749
}
50+
4851
public void setRecord_quantity(Integer record_quantity) {
4952
this.record_quantity = record_quantity;
5053
}
54+
5155
public String getUpdated_by() {
5256
return updated_by;
5357
}
58+
5459
public void setUpdated_by(String updated_by) {
5560
this.updated_by = updated_by;
5661
}
62+
5763
public Integer getImport_process_duration_ms() {
5864
return import_process_duration_ms;
5965
}
66+
6067
public void setImport_process_duration_ms(Integer import_process_duration_ms) {
6168
this.import_process_duration_ms = import_process_duration_ms;
6269
}
70+
6371
public Date getEvent_end_date_time() {
6472
return event_end_date_time;
6573
}
74+
6675
public void setEvent_end_date_time(Date event_end_date_time) {
6776
this.event_end_date_time = event_end_date_time;
6877
}
69-
78+
7079
public String toString() {
71-
return new ToStringBuilder(this).
72-
append("id", id).
73-
append("resource_uuid", resource_uuid).
74-
append("recordQuantity", record_quantity).
75-
append("updated_by", updated_by).
76-
toString();
77-
}
80+
return new ToStringBuilder(this).append("id", id).append("resource_uuid", resource_uuid).append("recordQuantity", record_quantity)
81+
.append("updated_by", updated_by).toString();
82+
}
83+
7884
public String getResource_uuid() {
7985
return resource_uuid;
8086
}
87+
8188
public void setResource_uuid(String resource_uuid) {
8289
this.resource_uuid = resource_uuid;
8390
}
91+
8492
public static long getSerialversionuid() {
8593
return serialVersionUID;
8694
}
95+
96+
public String getSourcefileid() {
97+
return sourcefileid;
98+
}
99+
100+
public void setSourcefileid(String sourcefileid) {
101+
this.sourcefileid = sourcefileid;
102+
}
87103
}

Diff for: src/main/java/net/canadensys/dataportal/occurrence/model/OccurrenceExtensionModel.java

+31-23
Original file line numberDiff line numberDiff line change
@@ -10,68 +10,76 @@
1010
import org.hibernate.annotations.Type;
1111

1212
/**
13-
* Model containing data related to a DarwinCore occurrence extension. Data are stored in a key/value map allowing to abstract specific extension columns.
13+
* Model containing data related to a DarwinCore occurrence extension. Data are stored in a key/value map allowing to abstract specific extension
14+
* columns.
15+
*
1416
* @author cgendreau
15-
*
17+
*
1618
*/
1719
@Entity
1820
@Table(name = "occurrence_extension")
1921
public class OccurrenceExtensionModel {
20-
22+
2123
@Id
2224
private long auto_id;
23-
25+
2426
@NaturalId
2527
private String dwcaid;
2628
@NaturalId
27-
private String resource_uuid;
28-
29+
private String sourcefileid;
30+
2931
private String ext_type;
3032
private String ext_version;
31-
32-
@Type(type="net.canadensys.databaseutils.hibernate.KeyValueType")
33-
private Map<String,String> ext_data;
34-
33+
34+
@Type(type = "net.canadensys.databaseutils.hibernate.KeyValueType")
35+
private Map<String, String> ext_data;
36+
3537
public long getAuto_id() {
3638
return auto_id;
3739
}
40+
3841
public void setAuto_id(long auto_id) {
3942
this.auto_id = auto_id;
4043
}
41-
44+
4245
public String getDwcaid() {
4346
return dwcaid;
4447
}
48+
4549
public void setDwcaid(String dwcaid) {
4650
this.dwcaid = dwcaid;
4751
}
48-
49-
public String getResource_uuid() {
50-
return resource_uuid;
51-
}
52-
public void setResource_uuid(String resource_uuid) {
53-
this.resource_uuid = resource_uuid;
54-
}
55-
52+
5653
public String getExt_type() {
5754
return ext_type;
5855
}
56+
5957
public void setExt_type(String ext_type) {
6058
this.ext_type = ext_type;
6159
}
62-
60+
6361
public String getExt_version() {
6462
return ext_version;
6563
}
64+
6665
public void setExt_version(String ext_version) {
6766
this.ext_version = ext_version;
6867
}
69-
70-
public Map<String,String> getExt_data() {
68+
69+
public Map<String, String> getExt_data() {
7170
return ext_data;
7271
}
73-
public void setExt_data(Map<String,String> ext_data) {
72+
73+
public void setExt_data(Map<String, String> ext_data) {
7474
this.ext_data = ext_data;
7575
}
7676

77+
public String getSourcefileid() {
78+
return sourcefileid;
79+
}
80+
81+
public void setSourcefileid(String sourcefileid) {
82+
this.sourcefileid = sourcefileid;
83+
}
84+
7785
}

Diff for: src/main/java/net/canadensys/dataportal/occurrence/model/OccurrenceFieldConstants.java

+4-2
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,14 @@
22

33
/**
44
* Constants definitions for model fields(rows) name.
5+
*
56
* @author cgendreau
6-
*
7+
*
78
*/
89
public class OccurrenceFieldConstants {
9-
10+
1011
public static final String DWCA_ID = "dwcaid";
12+
public static final String SOURCE_FILE_ID = "sourcefileid";
1113
public static final String RESOURCE_UUID = "resource_uuid";
1214

1315
}

Diff for: src/main/java/net/canadensys/dataportal/occurrence/model/OccurrenceModel.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ public class OccurrenceModel {
9191
private String dwcaid;
9292

9393
// name of the file that was read
94-
private String resource_uuid;
94+
private String sourcefileid;
9595

9696
public int getAuto_id() {
9797
return auto_id;
@@ -525,11 +525,11 @@ public void setDwcaid(String dwcaid) {
525525
this.dwcaid = dwcaid;
526526
}
527527

528-
public String getResource_uuid() {
529-
return resource_uuid;
528+
public String getSourcefileid() {
529+
return sourcefileid;
530530
}
531531

532-
public void setResource_uuid(String resource_uuid) {
533-
this.resource_uuid = resource_uuid;
532+
public void setSourcefileid(String sourcefileid) {
533+
this.sourcefileid = sourcefileid;
534534
}
535535
}

0 commit comments

Comments
 (0)