annotate src/main/java/de/mpiwg/itgroup/ismi/utils/templates/TitleTemplate.java @ 1:2e911857a759

(none)
author jurzua
date Wed, 29 Oct 2014 14:00:28 +0000
parents
children 54c1bb63a713
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
jurzua
parents:
diff changeset
1 package de.mpiwg.itgroup.ismi.utils.templates;
jurzua
parents:
diff changeset
2
jurzua
parents:
diff changeset
3 import java.util.ArrayList;
jurzua
parents:
diff changeset
4 import java.util.HashMap;
jurzua
parents:
diff changeset
5 import java.util.List;
jurzua
parents:
diff changeset
6 import java.util.Map;
jurzua
parents:
diff changeset
7
jurzua
parents:
diff changeset
8 import org.apache.log4j.Logger;
jurzua
parents:
diff changeset
9 import org.mpi.openmind.cache.WrapperService;
jurzua
parents:
diff changeset
10 import org.mpi.openmind.repository.bo.Attribute;
jurzua
parents:
diff changeset
11 import org.mpi.openmind.repository.bo.Entity;
jurzua
parents:
diff changeset
12 import org.mpi.openmind.repository.bo.Relation;
jurzua
parents:
diff changeset
13 import org.mpi.openmind.repository.utils.RomanizationLoC;
jurzua
parents:
diff changeset
14
jurzua
parents:
diff changeset
15 import de.mpiwg.itgroup.ismi.util.guiComponents.Calendar;
jurzua
parents:
diff changeset
16
jurzua
parents:
diff changeset
17 public class TitleTemplate extends AbstractTemplate{
jurzua
parents:
diff changeset
18
jurzua
parents:
diff changeset
19 private static Logger logger = Logger.getLogger(TitleTemplate.class);
jurzua
parents:
diff changeset
20
jurzua
parents:
diff changeset
21 public String ov;
jurzua
parents:
diff changeset
22 public String privacity;
jurzua
parents:
diff changeset
23 public String fullTitle;
jurzua
parents:
diff changeset
24 public String fullTitleTranslit;
jurzua
parents:
diff changeset
25 public String language;
jurzua
parents:
diff changeset
26 public String notes;
jurzua
parents:
diff changeset
27 public String category;
jurzua
parents:
diff changeset
28 public String createIn;
jurzua
parents:
diff changeset
29 public String incipit;
jurzua
parents:
diff changeset
30 public String explicit;
jurzua
parents:
diff changeset
31 public String dedication;
jurzua
parents:
diff changeset
32 public String tableOfContents;
jurzua
parents:
diff changeset
33 public String author;
jurzua
parents:
diff changeset
34 public Long authorId;
jurzua
parents:
diff changeset
35 //extra
jurzua
parents:
diff changeset
36 public List<String> aliasList;
jurzua
parents:
diff changeset
37 public List<String> authorMisattributionList;
jurzua
parents:
diff changeset
38 public String personDedicatedTo;
jurzua
parents:
diff changeset
39 public String commentaryOnText;
jurzua
parents:
diff changeset
40 public String translationOfText;
jurzua
parents:
diff changeset
41 public String versionOfText;
jurzua
parents:
diff changeset
42
jurzua
parents:
diff changeset
43
jurzua
parents:
diff changeset
44 public String creationDate;
jurzua
parents:
diff changeset
45
jurzua
parents:
diff changeset
46 public TitleTemplate(Entity entity, WrapperService om, boolean useRomanization){
jurzua
parents:
diff changeset
47
jurzua
parents:
diff changeset
48 //logger.info("Diplaying " + entity);
jurzua
parents:
diff changeset
49
jurzua
parents:
diff changeset
50 this.aliasList = new ArrayList<String>();
jurzua
parents:
diff changeset
51 this.authorMisattributionList = new ArrayList<String>();
jurzua
parents:
diff changeset
52
jurzua
parents:
diff changeset
53 if(entity != null){
jurzua
parents:
diff changeset
54
jurzua
parents:
diff changeset
55 this.privacity = entity.getPrivacity();
jurzua
parents:
diff changeset
56
jurzua
parents:
diff changeset
57 //attributes
jurzua
parents:
diff changeset
58 Attribute att = om.getAttributeByName(entity.getId(), "full_title");
jurzua
parents:
diff changeset
59 this.fullTitle = (att != null) ? att.getOwnValue() : null;
jurzua
parents:
diff changeset
60 this.fullTitle = (useRomanization) ? RomanizationLoC.convert(fullTitle) : fullTitle;
jurzua
parents:
diff changeset
61
jurzua
parents:
diff changeset
62 att = om.getAttributeByName(entity.getId(), "full_title_translit");
jurzua
parents:
diff changeset
63 this.fullTitleTranslit = (att != null) ? att.getOwnValue() : null;
jurzua
parents:
diff changeset
64 this.fullTitleTranslit = (useRomanization) ? RomanizationLoC.convert(fullTitleTranslit) : fullTitleTranslit;
jurzua
parents:
diff changeset
65
jurzua
parents:
diff changeset
66 att = om.getAttributeByName(entity.getId(), "creation_date");
jurzua
parents:
diff changeset
67 if(att != null){
jurzua
parents:
diff changeset
68 Calendar creationDate = new Calendar(att.getOwnValue());
jurzua
parents:
diff changeset
69 this.creationDate = creationDate.getCalendarAsHtml();
jurzua
parents:
diff changeset
70 }
jurzua
parents:
diff changeset
71
jurzua
parents:
diff changeset
72 att = om.getAttributeByName(entity.getId(), "language");
jurzua
parents:
diff changeset
73 this.language = (att != null) ? att.getOwnValue() : null;
jurzua
parents:
diff changeset
74
jurzua
parents:
diff changeset
75 att = om.getAttributeByName(entity.getId(), "notes");
jurzua
parents:
diff changeset
76 this.notes = (att != null) ? att.getOwnValue() : null;
jurzua
parents:
diff changeset
77
jurzua
parents:
diff changeset
78 att = om.getAttributeByName(entity.getId(), "incipit");
jurzua
parents:
diff changeset
79 this.incipit = (att != null) ? att.getOwnValue() : null;
jurzua
parents:
diff changeset
80
jurzua
parents:
diff changeset
81 att = om.getAttributeByName(entity.getId(), "explicit");
jurzua
parents:
diff changeset
82 this.explicit = (att != null) ? att.getOwnValue() : null;
jurzua
parents:
diff changeset
83
jurzua
parents:
diff changeset
84 att = om.getAttributeByName(entity.getId(), "dedication");
jurzua
parents:
diff changeset
85 this.dedication = (att != null) ? att.getOwnValue() : null;
jurzua
parents:
diff changeset
86
jurzua
parents:
diff changeset
87 att = om.getAttributeByName(entity.getId(), "table_of_contents");
jurzua
parents:
diff changeset
88 this.tableOfContents = (att != null) ? att.getOwnValue() : null;
jurzua
parents:
diff changeset
89
jurzua
parents:
diff changeset
90 List<Entity> tarList = om.getTargetsForSourceRelation(entity.getId(), "has_subject", "SUBJECT", 1);
jurzua
parents:
diff changeset
91 this.category = (tarList.size() > 0) ? tarList.get(0).getOwnValue() : null ;
jurzua
parents:
diff changeset
92
jurzua
parents:
diff changeset
93 tarList = om.getTargetsForSourceRelation(entity.getId(), "was_created_in", "PLACE", 1);
jurzua
parents:
diff changeset
94 this.createIn = (tarList.size() > 0) ? tarList.get(0).getOwnValue() : null ;
jurzua
parents:
diff changeset
95
jurzua
parents:
diff changeset
96 List<Entity> list0 = om.getSourcesForTargetRelation(entity.getId(), "is_reference_of", "REFERENCE", -1);
jurzua
parents:
diff changeset
97 for(Entity ref : list0){
jurzua
parents:
diff changeset
98 this.refEntityList.add(om.getEntityContent(ref));
jurzua
parents:
diff changeset
99 }
jurzua
parents:
diff changeset
100
jurzua
parents:
diff changeset
101
jurzua
parents:
diff changeset
102
jurzua
parents:
diff changeset
103 list0 = om.getTargetsForSourceRelation(entity.getId(), "was_created_by", "PERSON", -1);
jurzua
parents:
diff changeset
104 if(list0.size() > 0){
jurzua
parents:
diff changeset
105 this.author = list0.get(0).getOwnValue();
jurzua
parents:
diff changeset
106 this.author = (useRomanization) ? RomanizationLoC.convert(author) : author;
jurzua
parents:
diff changeset
107 this.authorId = list0.get(0).getId();
jurzua
parents:
diff changeset
108 }
jurzua
parents:
diff changeset
109
jurzua
parents:
diff changeset
110 //extra fields ...
jurzua
parents:
diff changeset
111
jurzua
parents:
diff changeset
112 list0 = om.getSourcesForTargetRelation(entity, "is_alias_title_of", "ALIAS", -1);
jurzua
parents:
diff changeset
113 for(Entity alias : list0){
jurzua
parents:
diff changeset
114 this.aliasList.add(alias.getOwnValue());
jurzua
parents:
diff changeset
115 }
jurzua
parents:
diff changeset
116
jurzua
parents:
diff changeset
117 list0 = om.getTargetsForSourceRelation(entity, "has_author_misattribution", "MISATTRIBUTION", -1);
jurzua
parents:
diff changeset
118 for(Entity misatt : list0){
jurzua
parents:
diff changeset
119 List<Entity> authorMissattList = om.getTargetsForSourceRelation(misatt, "misattributed_to", "PERSON", 1);
jurzua
parents:
diff changeset
120 if(authorMissattList.size() == 1){
jurzua
parents:
diff changeset
121 String authorMiss = authorMissattList.get(0).getOwnValue();
jurzua
parents:
diff changeset
122 authorMiss = (useRomanization) ? RomanizationLoC.convert(authorMiss) : authorMiss;
jurzua
parents:
diff changeset
123 this.authorMisattributionList.add(authorMiss);
jurzua
parents:
diff changeset
124 }
jurzua
parents:
diff changeset
125 }
jurzua
parents:
diff changeset
126
jurzua
parents:
diff changeset
127 list0 = om.getTargetsForSourceRelation(entity, "was_dedicated_to", "PERSON", 1);
jurzua
parents:
diff changeset
128 this.personDedicatedTo = (list0.size() == 1) ? list0.get(0).getOwnValue() : null;
jurzua
parents:
diff changeset
129 this.personDedicatedTo = (useRomanization) ? RomanizationLoC.convert(personDedicatedTo) : personDedicatedTo;
jurzua
parents:
diff changeset
130
jurzua
parents:
diff changeset
131 list0 = om.getTargetsForSourceRelation(entity, "is_commentary_on", "TEXT", 1);
jurzua
parents:
diff changeset
132 this.commentaryOnText = (list0.size() == 1) ? list0.get(0).getOwnValue() : null;
jurzua
parents:
diff changeset
133 this.commentaryOnText = (useRomanization) ? RomanizationLoC.convert(commentaryOnText) : commentaryOnText;
jurzua
parents:
diff changeset
134
jurzua
parents:
diff changeset
135 list0 = om.getTargetsForSourceRelation(entity, "is_translation_of", "TEXT", 1);
jurzua
parents:
diff changeset
136 this.translationOfText = (list0.size() == 1) ? list0.get(0).getOwnValue() : null;
jurzua
parents:
diff changeset
137 this.translationOfText = (useRomanization) ? RomanizationLoC.convert(translationOfText) : translationOfText;
jurzua
parents:
diff changeset
138
jurzua
parents:
diff changeset
139 list0 = om.getTargetsForSourceRelation(entity, "is_version_of", "TEXT", 1);
jurzua
parents:
diff changeset
140 this.versionOfText = (list0.size() == 1) ? list0.get(0).getOwnValue() : null;
jurzua
parents:
diff changeset
141 this.versionOfText = (useRomanization) ? RomanizationLoC.convert(versionOfText) : versionOfText;
jurzua
parents:
diff changeset
142 }
jurzua
parents:
diff changeset
143
jurzua
parents:
diff changeset
144 this.loadRefernces();
jurzua
parents:
diff changeset
145
jurzua
parents:
diff changeset
146 }
jurzua
parents:
diff changeset
147
jurzua
parents:
diff changeset
148 public String getOv() {
jurzua
parents:
diff changeset
149 return ov;
jurzua
parents:
diff changeset
150 }
jurzua
parents:
diff changeset
151 public String getPrivacity() {
jurzua
parents:
diff changeset
152 return privacity;
jurzua
parents:
diff changeset
153 }
jurzua
parents:
diff changeset
154 public String getFullTitle() {
jurzua
parents:
diff changeset
155 return fullTitle;
jurzua
parents:
diff changeset
156 }
jurzua
parents:
diff changeset
157 public String getFullTitleTranslit() {
jurzua
parents:
diff changeset
158 return fullTitleTranslit;
jurzua
parents:
diff changeset
159 }
jurzua
parents:
diff changeset
160 public String getLanguage() {
jurzua
parents:
diff changeset
161 return language;
jurzua
parents:
diff changeset
162 }
jurzua
parents:
diff changeset
163 public String getNotes() {
jurzua
parents:
diff changeset
164 return notes;
jurzua
parents:
diff changeset
165 }
jurzua
parents:
diff changeset
166 public String getCategory() {
jurzua
parents:
diff changeset
167 return category;
jurzua
parents:
diff changeset
168 }
jurzua
parents:
diff changeset
169 public String getCreateIn() {
jurzua
parents:
diff changeset
170 return createIn;
jurzua
parents:
diff changeset
171 }
jurzua
parents:
diff changeset
172 public String getIncipit() {
jurzua
parents:
diff changeset
173 return incipit;
jurzua
parents:
diff changeset
174 }
jurzua
parents:
diff changeset
175 public String getExplicit() {
jurzua
parents:
diff changeset
176 return explicit;
jurzua
parents:
diff changeset
177 }
jurzua
parents:
diff changeset
178 public String getDedication() {
jurzua
parents:
diff changeset
179 return dedication;
jurzua
parents:
diff changeset
180 }
jurzua
parents:
diff changeset
181 public String getTableOfContents() {
jurzua
parents:
diff changeset
182 return tableOfContents;
jurzua
parents:
diff changeset
183 }
jurzua
parents:
diff changeset
184 public List<String> getAliasList() {
jurzua
parents:
diff changeset
185 return aliasList;
jurzua
parents:
diff changeset
186 }
jurzua
parents:
diff changeset
187 public String getCreationDate() {
jurzua
parents:
diff changeset
188 return creationDate;
jurzua
parents:
diff changeset
189 }
jurzua
parents:
diff changeset
190 public String getAuthor() {
jurzua
parents:
diff changeset
191 return author;
jurzua
parents:
diff changeset
192 }
jurzua
parents:
diff changeset
193 public Long getAuthorId() {
jurzua
parents:
diff changeset
194 return authorId;
jurzua
parents:
diff changeset
195 }
jurzua
parents:
diff changeset
196
jurzua
parents:
diff changeset
197 public boolean getHasAuthor(){
jurzua
parents:
diff changeset
198 return this.authorId != null;
jurzua
parents:
diff changeset
199 }
jurzua
parents:
diff changeset
200
jurzua
parents:
diff changeset
201 public List<String> getAuthorMisattributionList() {
jurzua
parents:
diff changeset
202 return authorMisattributionList;
jurzua
parents:
diff changeset
203 }
jurzua
parents:
diff changeset
204 }