1 package org.gnomekr.potron.web.view;
2
3 import java.util.List;
4
5 import org.gnomekr.potron.service.IStatisticsManager;
6 import org.gnomekr.potron.statistics.StatusOverview;
7 import org.gnomekr.potron.statistics.TranslationStatus;
8 import org.gnomekr.potron.statistics.TranslatorStatus;
9
10 import de.laures.cewolf.DatasetProducer;
11
12 /***
13 * StatisticsView.java
14 * @author Xavier Cho
15 * @version $Revision 1.1 $ $Date: 2005/07/22 07:25:33 $
16 * @jsf.bean
17 * name = "statistics"
18 * scope = "request"
19 */
20 public class StatisticsView extends AbstractFacesView {
21
22 private static final long serialVersionUID = 1424698655581831298L;
23
24 private IStatisticsManager manager;
25
26 private StatusOverview statusOverview;
27 private TranslationStatus projectStatus;
28 private TranslationStatus templateStatus;
29 private TranslationStatus translationStatus;
30
31 private List<TranslatorStatus> topTranslators;
32
33 private String projectId;
34 private long templateId;
35 private long translationId;
36
37 /***
38 * @return
39 * @jsf.managed-property
40 * value = "#{statisticsManager}"
41 */
42 public IStatisticsManager getManager() {
43 return manager;
44 }
45
46 /***
47 * @param manager The manager to set.
48 */
49 public void setManager(IStatisticsManager manager) {
50 this.manager = manager;
51 }
52
53 /***
54 * @return Returns the statusOverview.
55 */
56 public StatusOverview getStatusOverview() {
57 if (statusOverview == null) {
58 this.statusOverview = manager.getStatusOverview();
59 }
60
61 return statusOverview;
62 }
63
64 /***
65 * @return.
66 */
67 public DatasetProducer getStatusOverviewDataset() {
68 return new TranslationStatusDataset(getStatusOverview());
69 }
70
71 /***
72 * @return Returns the projectStatus.
73 */
74 public TranslationStatus getProjectStatus() {
75 if (projectStatus == null) {
76 this.projectStatus = manager.getProjectStatus(projectId);
77 }
78
79 return projectStatus;
80 }
81
82 /***
83 * @return.
84 */
85 public DatasetProducer getProjectStatusDataset() {
86 return new TranslationStatusDataset(getProjectStatus());
87 }
88
89 /***
90 * @return Returns the templateStatus.
91 */
92 public TranslationStatus getTemplateStatus() {
93 if (templateStatus == null) {
94 this.templateStatus = manager.getTemplateStatus(templateId);
95 }
96
97 return templateStatus;
98 }
99
100 /***
101 * @return.
102 */
103 public DatasetProducer getTemplateStatusDataset() {
104 return new TranslationStatusDataset(getTemplateStatus());
105 }
106
107 /***
108 * @return Returns the translationStatus.
109 */
110 public TranslationStatus getTranslationStatus() {
111 if (translationStatus == null) {
112 this.translationStatus = manager
113 .getTranslationStatus(translationId);
114 }
115
116 return translationStatus;
117 }
118
119 /***
120 * @return.
121 */
122 public DatasetProducer getTranslationStatusDataset() {
123 return new TranslationStatusDataset(getTranslationStatus());
124 }
125
126 /***
127 * @return Returns the topTranslators.
128 */
129 public List<TranslatorStatus> getTopTranslators() {
130 if (topTranslators == null) {
131 this.topTranslators = manager.getTopTranslators(5);
132 }
133
134 return topTranslators;
135 }
136
137 /***
138 * @return.
139 */
140 public DatasetProducer getTopTranslatorsDataset() {
141 return new TopTranslatorsDataset(getTopTranslators());
142 }
143
144 /***
145 * @return Returns the projectId.
146 */
147 public String getProjectId() {
148 return projectId;
149 }
150
151 /***
152 * @param projectId The projectId to set.
153 */
154 public void setProjectId(String projectId) {
155 this.projectId = projectId;
156 }
157
158 /***
159 * @return Returns the templateId.
160 */
161 public long getTemplateId() {
162 return templateId;
163 }
164
165 /***
166 * @param templateId The templateId to set.
167 */
168 public void setTemplateId(long templateId) {
169 this.templateId = templateId;
170 }
171
172 /***
173 * @return Returns the translationId.
174 */
175 public long getTranslationId() {
176 return translationId;
177 }
178
179 /***
180 * @param translationId The translationId to set.
181 */
182 public void setTranslationId(long translationId) {
183 this.translationId = translationId;
184 }
185 }