Project

General

Profile

1
package eu.dnetlib.data.claims.migration.handler;
2

    
3
import eu.dnetlib.data.claims.migration.entity.ContextRelation;
4
import eu.dnetlib.data.claims.migration.parser.DMFParser;
5
import eu.dnetlib.data.claimsDemo.QueryGenerator;
6
import eu.dnetlib.data.claimsDemo.SQLStoreException;
7
import eu.dnetlib.data.claimsDemo.SqlDAO;
8

    
9
import java.sql.ResultSet;
10
import java.util.ArrayList;
11
import java.util.List;
12

    
13
/**
14
 * Created by argirok on 10/2/2016.
15
 */
16
public class ContextRelationHandler {
17

    
18
    QueryGenerator queryGenerator = null;
19
    SqlDAO sqlDAO = null;
20
    DMFParser dmfParser = null;
21

    
22
    public List<ContextRelation> fetchAllConceptRelations() throws Exception, SQLStoreException {
23
        List<ContextRelation> relations = null;
24
        ResultSet rs = sqlDAO.executePreparedQuery(queryGenerator.generateSelectConceptClaimsEnrichedWithDMFClaimsQuery(-1));
25
//        ResultSet rs = sqlDAO.executePreparedQuery(queryGenerator.generateSelectConceptClaimsForLattestClaimsQuery(-1));
26

    
27
        relations = new ArrayList<ContextRelation>();
28

    
29
        while(rs.next()) {
30
            ContextRelation relation = new ContextRelation();
31
            relation.setClaimId(rs.getString("id"));
32
            relation.setClaimedBy(rs.getString("agent"));
33
            relation.setClaimDate(rs.getDate("date"));
34
            String xml = rs.getString("xml");
35
            relation.setContextId( dmfParser.getContextIdFromDMF(xml));
36
            String resultId = rs.getString("resultid");
37
            relation.setResultId(resultId);
38
            relation.setContextDmf(xml);
39

    
40
            String dmf=rs.getString("dmf");
41
            if(dmf!=null){
42
                relation.setResultDmf(dmf);
43
                relation.setHasDMF(true);
44
                relation.setCollectedFrom(DMFResultHandler.identifyCollectedFrom(resultId));
45

    
46
            }
47

    
48
            relations.add(relation);
49
        }
50
        return relations;
51
    }
52
    public List<ContextRelation> fetchConceptRelationById() throws Exception, SQLStoreException {
53
        List<ContextRelation> relations = null;
54
        ResultSet rs = sqlDAO.executePreparedQuery(queryGenerator.generateSelectConceptClaimByIDEnrichedWithDMFClaimsQuery(-1,"169112"));
55
        relations = new ArrayList<ContextRelation>();
56

    
57
        while(rs.next()) {
58
            ContextRelation relation = new ContextRelation();
59
            relation.setClaimId(rs.getString("id"));
60
            relation.setClaimedBy(rs.getString("agent"));
61
            relation.setClaimDate(rs.getDate("date"));
62

    
63
            relation.setContextId( dmfParser.getContextIdFromDMF(rs.getString("xml")));
64
            relation.setResultId((rs.getString("resultid")));
65
            relation.setContextDmf(rs.getString("xml"));
66

    
67
            String dmf=rs.getString("dmf");
68
            if(dmf!=null){
69
                relation.setResultDmf(dmf);
70
                relation.setHasDMF(true);
71
                relation.setCollectedFrom(DMFResultHandler.identifyCollectedFrom(rs.getString("resultid")));
72

    
73
            }
74

    
75
            relations.add(relation);
76
        }
77
        return relations;
78
    }
79

    
80
    public QueryGenerator getQueryGenerator() {
81
        return queryGenerator;
82
    }
83

    
84
    public void setQueryGenerator(QueryGenerator queryGenerator) {
85
        this.queryGenerator = queryGenerator;
86
    }
87

    
88
    public SqlDAO getSqlDAO() {
89
        return sqlDAO;
90
    }
91

    
92
    public void setSqlDAO(SqlDAO sqlDAO) {
93
        this.sqlDAO = sqlDAO;
94
    }
95

    
96
    public DMFParser getDmfParser() {
97
        return dmfParser;
98
    }
99

    
100
    public void setDmfParser(DMFParser dmfParser) {
101
        this.dmfParser = dmfParser;
102
    }
103
}
(2-2/12)