annotate src/main/java/de/mpiwg/itgroup/ismi/publicView/pages/WitnessDynamicPage.java @ 71:38dc1f0e2451

show instance name on public (publicCodex, publicWitness) pages.
author casties
date Thu, 17 Dec 2015 17:31:07 +0100
parents 2e911857a759
children 4aa8c425685d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
jurzua
parents:
diff changeset
1 package de.mpiwg.itgroup.ismi.publicView.pages;
jurzua
parents:
diff changeset
2
jurzua
parents:
diff changeset
3 import java.util.List;
jurzua
parents:
diff changeset
4
jurzua
parents:
diff changeset
5 import org.mpi.openmind.repository.bo.Attribute;
jurzua
parents:
diff changeset
6 import org.mpi.openmind.repository.bo.Entity;
jurzua
parents:
diff changeset
7 import org.mpi.openmind.repository.utils.RomanizationLoC;
jurzua
parents:
diff changeset
8
jurzua
parents:
diff changeset
9 public class WitnessDynamicPage extends JSPDynamicPage{
jurzua
parents:
diff changeset
10
jurzua
parents:
diff changeset
11 private Long titleId;
jurzua
parents:
diff changeset
12 private Long authorId;
jurzua
parents:
diff changeset
13 private String author;
jurzua
parents:
diff changeset
14 private String title;
jurzua
parents:
diff changeset
15 private String firstPage;
jurzua
parents:
diff changeset
16
jurzua
parents:
diff changeset
17 @Override
jurzua
parents:
diff changeset
18 public void load(Long witnessId){
jurzua
parents:
diff changeset
19 super.load(witnessId);
jurzua
parents:
diff changeset
20
jurzua
parents:
diff changeset
21 this.titleId = null;
jurzua
parents:
diff changeset
22 this.title = null;
jurzua
parents:
diff changeset
23 this.author = null;
jurzua
parents:
diff changeset
24 this.authorId = null;
jurzua
parents:
diff changeset
25
jurzua
parents:
diff changeset
26
jurzua
parents:
diff changeset
27 if(witnessId != null){
jurzua
parents:
diff changeset
28
jurzua
parents:
diff changeset
29 this.loadFirstPage();
jurzua
parents:
diff changeset
30
jurzua
parents:
diff changeset
31 //loading the digitalization object
jurzua
parents:
diff changeset
32 List<Entity> list = getWrapper().getTargetsForSourceRelation(witnessId, "is_part_of", "CODEX", 1);
jurzua
parents:
diff changeset
33 if (list.size() > 0) {
jurzua
parents:
diff changeset
34 Entity codex = list.get(0);
jurzua
parents:
diff changeset
35 List<Entity> list0 = getWrapper().getSourcesForTargetRelation(codex.getId(), "is_digitalization_of", "DIGITALIZATION", 1);
jurzua
parents:
diff changeset
36 this.digi = (list0.size() == 0) ? null : list0.get(0);
jurzua
parents:
diff changeset
37 }
jurzua
parents:
diff changeset
38
jurzua
parents:
diff changeset
39
jurzua
parents:
diff changeset
40 //loading witness
jurzua
parents:
diff changeset
41 List<Entity> list0 = getWrapper().getTargetsForSourceRelation(witnessId, "is_exemplar_of", "TEXT", 1);
jurzua
parents:
diff changeset
42 if (list0.size() > 0) {
jurzua
parents:
diff changeset
43
jurzua
parents:
diff changeset
44 this.titleId = list0.get(0).getId();
jurzua
parents:
diff changeset
45 this.title = RomanizationLoC.convert(list0.get(0).getOwnValue());
jurzua
parents:
diff changeset
46 System.out.println("&&&&&& " + this.title);
jurzua
parents:
diff changeset
47
jurzua
parents:
diff changeset
48 list0 = getWrapper().getTargetsForSourceRelation(this.titleId, "was_created_by", "PERSON", 1);
jurzua
parents:
diff changeset
49 if(list0.size() > 0){
jurzua
parents:
diff changeset
50 this.authorId = list0.get(0).getId();
jurzua
parents:
diff changeset
51 this.author = RomanizationLoC.convert(list0.get(0).getOwnValue());
jurzua
parents:
diff changeset
52 }
jurzua
parents:
diff changeset
53 }
jurzua
parents:
diff changeset
54 }
jurzua
parents:
diff changeset
55 }
jurzua
parents:
diff changeset
56
jurzua
parents:
diff changeset
57 /**
jurzua
parents:
diff changeset
58 * The start_page saves the first page of the witness in the codex.
jurzua
parents:
diff changeset
59 * start_page can contains number from the 1, however the diva viewer considers that the first page is 0.
jurzua
parents:
diff changeset
60 * For this reason, if a witness contains this attribute, then we must subtract 1 page.
jurzua
parents:
diff changeset
61 */
jurzua
parents:
diff changeset
62 public void loadFirstPage(){
jurzua
parents:
diff changeset
63 Attribute firstPageAtt = getWrapper().getAttributeByName(getCurrentEntId(), "start_page");
jurzua
parents:
diff changeset
64 Integer tmp = 0;
jurzua
parents:
diff changeset
65
jurzua
parents:
diff changeset
66 if(firstPageAtt != null){
jurzua
parents:
diff changeset
67 try {
jurzua
parents:
diff changeset
68 tmp = Integer.parseInt(firstPageAtt.getOwnValue());
jurzua
parents:
diff changeset
69 tmp = (tmp > 0) ? tmp-1 : tmp;
jurzua
parents:
diff changeset
70 } catch (Exception e) {}
jurzua
parents:
diff changeset
71 }
jurzua
parents:
diff changeset
72
jurzua
parents:
diff changeset
73 this.firstPage = tmp.toString();
jurzua
parents:
diff changeset
74 }
jurzua
parents:
diff changeset
75
jurzua
parents:
diff changeset
76 public void init(){
jurzua
parents:
diff changeset
77 try {
jurzua
parents:
diff changeset
78
jurzua
parents:
diff changeset
79 this.load(Long.parseLong(getRequest().getParameter("eid")));
jurzua
parents:
diff changeset
80
jurzua
parents:
diff changeset
81 } catch (Exception e) {
jurzua
parents:
diff changeset
82 e.printStackTrace();
jurzua
parents:
diff changeset
83 }
jurzua
parents:
diff changeset
84 }
jurzua
parents:
diff changeset
85
jurzua
parents:
diff changeset
86 public Long getTitleId() {
jurzua
parents:
diff changeset
87 return titleId;
jurzua
parents:
diff changeset
88 }
jurzua
parents:
diff changeset
89
jurzua
parents:
diff changeset
90 public void setTitleId(Long titleId) {
jurzua
parents:
diff changeset
91 this.titleId = titleId;
jurzua
parents:
diff changeset
92 }
jurzua
parents:
diff changeset
93
jurzua
parents:
diff changeset
94 public Long getAuthorId() {
jurzua
parents:
diff changeset
95 return authorId;
jurzua
parents:
diff changeset
96 }
jurzua
parents:
diff changeset
97
jurzua
parents:
diff changeset
98 public void setAuthorId(Long authorId) {
jurzua
parents:
diff changeset
99 this.authorId = authorId;
jurzua
parents:
diff changeset
100 }
jurzua
parents:
diff changeset
101
jurzua
parents:
diff changeset
102 public String getAuthor() {
jurzua
parents:
diff changeset
103 return author;
jurzua
parents:
diff changeset
104 }
jurzua
parents:
diff changeset
105
jurzua
parents:
diff changeset
106 public void setAuthor(String author) {
jurzua
parents:
diff changeset
107 this.author = author;
jurzua
parents:
diff changeset
108 }
jurzua
parents:
diff changeset
109
jurzua
parents:
diff changeset
110 public String getTitle() {
jurzua
parents:
diff changeset
111 return title;
jurzua
parents:
diff changeset
112 }
jurzua
parents:
diff changeset
113
jurzua
parents:
diff changeset
114 public void setTitle(String title) {
jurzua
parents:
diff changeset
115 this.title = title;
jurzua
parents:
diff changeset
116 }
jurzua
parents:
diff changeset
117
jurzua
parents:
diff changeset
118 public String getFirstPage(){
jurzua
parents:
diff changeset
119 return this.firstPage;
jurzua
parents:
diff changeset
120 }
jurzua
parents:
diff changeset
121 }