Mercurial > hg > ismi-richfaces
comparison src/main/java/de/mpiwg/itgroup/ismi/merge/MissingRelationsBean.java @ 180:0d31c8be7c31
new MissingRelations feature and UI.
including searchByRelations() with Filter in FullEntityRepositoryBean.
author | Robert Casties <casties@mpiwg-berlin.mpg.de> |
---|---|
date | Wed, 13 Jun 2018 14:57:13 +0200 |
parents | |
children | 52aa06772336 |
comparison
equal
deleted
inserted
replaced
179:c9dec00f0f17 | 180:0d31c8be7c31 |
---|---|
1 package de.mpiwg.itgroup.ismi.merge; | |
2 | |
3 import java.io.Serializable; | |
4 import java.util.ArrayList; | |
5 import java.util.List; | |
6 | |
7 import org.apache.log4j.Logger; | |
8 import org.mpi.openmind.repository.services.utils.RelationFilter; | |
9 | |
10 import de.mpiwg.itgroup.ismi.browse.EntityRepositoryBean; | |
11 import de.mpiwg.itgroup.ismi.browse.FullEntityRepositoryBean; | |
12 import de.mpiwg.itgroup.ismi.entry.beans.AbstractISMIBean; | |
13 | |
14 public class MissingRelationsBean extends AbstractISMIBean implements Serializable{ | |
15 | |
16 private static Logger logger = Logger.getLogger(MissingRelationsBean.class); | |
17 | |
18 private static final long serialVersionUID = 1L; | |
19 | |
20 private FullEntityRepositoryBean browseBean; | |
21 | |
22 | |
23 public MissingRelationsBean(){ | |
24 //logger.info("AdvancedSearchBean"); | |
25 this.reset(); | |
26 } | |
27 | |
28 public synchronized void reset(){ | |
29 logger.info("MissingRelationsBean.reset()"); | |
30 browseBean = new FullEntityRepositoryBean(); | |
31 browseBean.setObjectClass(TEXT); | |
32 | |
33 logger.info("MissingRelationsBean.reset() Done."); | |
34 } | |
35 | |
36 | |
37 public void actionReset() { | |
38 reset(); | |
39 } | |
40 | |
41 | |
42 public void actionFindMissingAuthors() { | |
43 logger.debug("Start findMissingAuthors..."); | |
44 List<RelationFilter> relFilters = new ArrayList<RelationFilter>(); | |
45 /* | |
46 * find TEXT without was_created_by PERSON relation | |
47 */ | |
48 browseBean.setObjectClass(TEXT); | |
49 RelationFilter relFilter = new RelationFilter(); | |
50 relFilter.relObjectClass = "was_created_by"; | |
51 relFilter.tarObjectClass = "PERSON"; | |
52 relFilter.relationMissing = true; | |
53 relFilters.add(relFilter); | |
54 try { | |
55 browseBean.searchByRelations(relFilters); | |
56 } catch (Exception e) { | |
57 logger.error(e); | |
58 } | |
59 logger.debug("Done findMissingAuthors."); | |
60 } | |
61 | |
62 public void actionFindMissingTexts() { | |
63 logger.debug("Start findMissingTexts..."); | |
64 List<RelationFilter> relFilters = new ArrayList<RelationFilter>(); | |
65 /* | |
66 * find WITNESS without is_exemplar_of TEXT relation | |
67 */ | |
68 browseBean.setObjectClass(WITNESS); | |
69 RelationFilter relFilter = new RelationFilter(); | |
70 relFilter.relObjectClass = "is_exemplar_of"; | |
71 relFilter.tarObjectClass = "TEXT"; | |
72 relFilter.relationMissing = true; | |
73 relFilters.add(relFilter); | |
74 try { | |
75 browseBean.searchByRelations(relFilters); | |
76 } catch (Exception e) { | |
77 logger.error(e); | |
78 } | |
79 logger.debug("Done findMissingTexts."); | |
80 } | |
81 | |
82 public void actionFindMissingCodices() { | |
83 logger.debug("Start findMissingCodices..."); | |
84 List<RelationFilter> relFilters = new ArrayList<RelationFilter>(); | |
85 /* | |
86 * find WITNESS without is_part_of CODEX relation | |
87 */ | |
88 browseBean.setObjectClass(WITNESS); | |
89 RelationFilter relFilter = new RelationFilter(); | |
90 relFilter.relObjectClass = "is_part_of"; | |
91 relFilter.tarObjectClass = "CODEX"; | |
92 relFilter.relationMissing = true; | |
93 relFilters.add(relFilter); | |
94 try { | |
95 browseBean.searchByRelations(relFilters); | |
96 } catch (Exception e) { | |
97 logger.error(e); | |
98 } | |
99 logger.debug("Done findMissingCodices."); | |
100 } | |
101 | |
102 /** | |
103 * @return the browseBean | |
104 */ | |
105 public EntityRepositoryBean getBrowseBean() { | |
106 return browseBean; | |
107 } | |
108 | |
109 | |
110 } |