Revision b142d49c
Added by Andreas Kohlbecker over 8 years ago
src/main/java/org/cybertaxonomy/utis/checklist/EEA_BDC_Client.java | ||
---|---|---|
11 | 11 |
import org.cybertaxonomy.utis.client.ServiceProviderInfo; |
12 | 12 |
import org.cybertaxonomy.utis.query.TinkerPopClient; |
13 | 13 |
import org.cybertaxonomy.utis.store.Neo4jStore; |
14 |
import org.cybertaxonomy.utis.store.Store;
|
|
14 |
import org.cybertaxonomy.utis.store.Neo4jStoreUpdater;
|
|
15 | 15 |
import org.cybertaxonomy.utis.tnr.msg.Classification; |
16 | 16 |
import org.cybertaxonomy.utis.tnr.msg.NameType; |
17 | 17 |
import org.cybertaxonomy.utis.tnr.msg.Query; |
18 |
import org.cybertaxonomy.utis.tnr.msg.Query.Request; |
|
18 | 19 |
import org.cybertaxonomy.utis.tnr.msg.Response; |
19 | 20 |
import org.cybertaxonomy.utis.tnr.msg.Source; |
20 | 21 |
import org.cybertaxonomy.utis.tnr.msg.Synonym; |
... | ... | |
22 | 23 |
import org.cybertaxonomy.utis.tnr.msg.TaxonBase; |
23 | 24 |
import org.cybertaxonomy.utis.tnr.msg.TaxonName; |
24 | 25 |
import org.cybertaxonomy.utis.tnr.msg.TnrMsg; |
25 |
import org.cybertaxonomy.utis.tnr.msg.Query.Request; |
|
26 | 26 |
import org.cybertaxonomy.utis.utils.IdentifierUtils; |
27 | 27 |
import org.cybertaxonomy.utis.utils.Profiler; |
28 | 28 |
import org.cybertaxonomy.utis.utils.TnrMsgUtils; |
... | ... | |
51 | 51 |
private static final String LEGALREFS_RDF_FILE_URL = "http://localhost/download/legalrefs.rdf.gz"; // http://eunis.eea.europa.eu/rdf/legalrefs.rdf.gz |
52 | 52 |
private static final String REFERENCES_RDF_FILE_URL = "http://localhost/download/references.rdf.gz"; // http://eunis.eea.europa.eu/rdf/references.rdf.gz |
53 | 53 |
|
54 |
private static final boolean REFRESH_TDB = false; |
|
54 |
/** |
|
55 |
* check for updates once a day |
|
56 |
*/ |
|
57 |
private static final int CHECK_UPDATE_MINUTES = 1; //60 * 24; |
|
55 | 58 |
|
56 | 59 |
public static final EnumSet<SearchMode> SEARCH_MODES = EnumSet.of( |
57 | 60 |
SearchMode.scientificNameExact, |
... | ... | |
135 | 138 |
Neo4jStore neo4jStore; |
136 | 139 |
try { |
137 | 140 |
neo4jStore = new Neo4jStore(); |
141 |
Neo4jStoreUpdater updater = new Neo4jStoreUpdater(neo4jStore, SPECIES_RDF_FILE_URL); |
|
142 |
updater.addResources(SPECIES_RDF_FILE_URL, TAXONOMY_RDF_FILE_URL, LEGALREFS_RDF_FILE_URL, REFERENCES_RDF_FILE_URL); |
|
143 |
updater.watch(CHECK_UPDATE_MINUTES); |
|
138 | 144 |
} catch (Exception e1) { |
139 | 145 |
throw new RuntimeException("Creation of Neo4jStore failed", e1); |
140 | 146 |
} |
141 |
if(REFRESH_TDB) { |
|
142 |
updateStore(neo4jStore); |
|
143 |
} |
|
144 | 147 |
queryClient = new TinkerPopClient(neo4jStore); |
145 | 148 |
} |
146 | 149 |
|
147 |
/** |
|
148 |
* @param neo4jStore |
|
149 |
*/ |
|
150 |
private void updateStore(Store neo4jStore) { |
|
151 |
try { |
|
152 |
neo4jStore.loadIntoStore( |
|
153 |
// SPECIES_RDF_FILE_URL, |
|
154 |
TAXONOMY_RDF_FILE_URL |
|
155 |
// LEGALREFS_RDF_FILE_URL, |
|
156 |
// REFERENCES_RDF_FILE_URL |
|
157 |
); |
|
158 |
} catch (Exception e) { |
|
159 |
throw new RuntimeException("Loading " |
|
160 |
+ SPECIES_RDF_FILE_URL + ", " |
|
161 |
+ TAXONOMY_RDF_FILE_URL + ", " |
|
162 |
+ LEGALREFS_RDF_FILE_URL + ", " |
|
163 |
+ REFERENCES_RDF_FILE_URL + |
|
164 |
" into Neo4jStore failed", e); |
|
165 |
} |
|
166 |
} |
|
167 |
|
|
168 | 150 |
@Override |
169 | 151 |
public ServiceProviderInfo buildServiceProviderInfo() { |
170 | 152 |
|
Also available in: Unified diff
automatic updating of the eea rdf data implemented (poll interval at 1 minute for testing)