|
20 | 20 | import org.alliancegenome.api.entity.DiseaseAnnotationDocument; |
21 | 21 | import org.alliancegenome.api.entity.GeneDiseaseAnnotationDocument; |
22 | 22 | import org.alliancegenome.core.helpers.DiseaseAnnotationHelper; |
23 | | -import org.alliancegenome.core.config.ConfigHelper; |
24 | 23 | import org.alliancegenome.curation_api.model.entities.AGMDiseaseAnnotation; |
25 | 24 | import org.alliancegenome.curation_api.model.entities.AffectedGenomicModel; |
26 | 25 | import org.alliancegenome.curation_api.model.entities.Allele; |
|
32 | 31 | import org.alliancegenome.curation_api.model.entities.Gene; |
33 | 32 | import org.alliancegenome.curation_api.model.entities.GeneDiseaseAnnotation; |
34 | 33 | import org.alliancegenome.curation_api.model.entities.Reference; |
35 | | -import org.alliancegenome.curation_api.model.entities.Species; |
36 | 34 | import org.alliancegenome.curation_api.model.entities.VocabularyTerm; |
37 | 35 | import org.alliancegenome.curation_api.model.entities.base.SubmittedObject; |
38 | 36 | import org.alliancegenome.curation_api.model.entities.ontology.DOTerm; |
|
42 | 40 | import org.alliancegenome.es.util.ProcessDisplayHelper; |
43 | 41 | import org.alliancegenome.indexer.config.IndexerConfig; |
44 | 42 | import org.alliancegenome.indexer.indexers.Indexer; |
45 | | -import org.alliancegenome.indexer.indexers.curation.interfaces.SpeciesInterface; |
46 | 43 | import org.alliancegenome.indexer.indexers.curation.service.AGMDiseaseAnnotationService; |
47 | 44 | import org.alliancegenome.indexer.indexers.curation.service.AlleleDiseaseAnnotationService; |
48 | 45 | import org.alliancegenome.indexer.indexers.curation.service.GeneDiseaseAnnotationService; |
49 | 46 | import org.alliancegenome.indexer.indexers.curation.service.VocabularyTermService; |
50 | 47 |
|
51 | | -import si.mazi.rescu.RestProxyFactory; |
52 | 48 | import org.alliancegenome.neo4j.repository.DiseaseRepository; |
53 | 49 | import org.apache.commons.collections4.CollectionUtils; |
54 | 50 | import org.apache.commons.lang3.tuple.Pair; |
|
60 | 56 | @Slf4j |
61 | 57 | public class DiseaseAnnotationCurationIndexer extends Indexer { |
62 | 58 |
|
63 | | - private final SpeciesInterface speciesApi = RestProxyFactory.createProxy(SpeciesInterface.class, ConfigHelper.getCurationApiUrl(), RestConfig.config); |
64 | | - |
65 | 59 | private GeneDiseaseAnnotationService geneService; |
66 | 60 | private AlleleDiseaseAnnotationService alleleService; |
67 | 61 | private AGMDiseaseAnnotationService agmService; |
68 | 62 | private VocabularyTermService vocabTermService; |
69 | 63 |
|
70 | | - // taxonIdPart (e.g. "9606") -> phylogeneticOrder |
71 | | - private Map<String, Integer> speciesOrderLookup; |
72 | | - |
73 | 64 | private Map<String, Set<String>> closureMap; |
74 | 65 | private Map<String, Pair<Gene, ArrayList<DiseaseAnnotation>>> geneMap = new HashMap<>(); |
75 | 66 | private Map<String, Pair<Gene, ArrayList<DiseaseAnnotation>>> generatedImplicatedGeneMap = new HashMap<>(); |
@@ -104,15 +95,7 @@ protected void index(ProcessDisplayHelper display) { |
104 | 95 | DiseaseRepository diseaseRepository = new DiseaseRepository(); |
105 | 96 | closureMap = diseaseRepository.getDOClosureChildMapping(); |
106 | 97 |
|
107 | | - speciesOrderLookup = new HashMap<>(); |
108 | | - List<Species> allSpecies = speciesApi.findForPublic(0, 100, "FieldsOnly", new HashMap<>()).getResults(); |
109 | | - for (Species species : allSpecies) { |
110 | | - if (species.getTaxon() != null && species.getPhylogeneticOrder() != null) { |
111 | | - String taxonIdPart = species.getTaxon().getCurie().replace("NCBITaxon:", ""); |
112 | | - speciesOrderLookup.put(taxonIdPart, species.getPhylogeneticOrder()); |
113 | | - } |
114 | | - } |
115 | | - log.info("Loaded " + speciesOrderLookup.size() + " species for speciesOrder lookup"); |
| 98 | + loadSpeciesOrderLookup(); |
116 | 99 |
|
117 | 100 | indexGenes(); |
118 | 101 | indexAlleles(); |
@@ -390,17 +373,6 @@ private List<AGMDiseaseAnnotationDocument> createAGMDiseaseAnnotationDocuments() |
390 | 373 | return ret; |
391 | 374 | } |
392 | 375 |
|
393 | | - private HashMap<String, Integer> buildSpeciesOrder(String taxonCurie) { |
394 | | - HashMap<String, Integer> order = new HashMap<>(); |
395 | | - String subjectTaxonIdPart = taxonCurie.replace("NCBITaxon:", ""); |
396 | | - Integer subjectOrder = speciesOrderLookup.getOrDefault(subjectTaxonIdPart, 0); |
397 | | - for (String key : speciesOrderLookup.keySet()) { |
398 | | - order.put(key, subjectOrder); |
399 | | - } |
400 | | - order.put(subjectTaxonIdPart, 0); |
401 | | - return order; |
402 | | - } |
403 | | - |
404 | 376 | private void populateBaseDiseaseAnnotationDocument(BiologicalEntity biologicalEntity, DiseaseAnnotation da, DiseaseAnnotationDocument dad) { |
405 | 377 | if (dad.getCountId() == null) { |
406 | 378 | dad.setCountId(uniqueAnnotationCounter.getAndIncrement()); |
|
0 commit comments