View Javadoc

1   package org.gnomekr.potron.statistics;
2   
3   import java.io.Serializable;
4   import java.util.Date;
5   
6   /***
7    * TranslationStatus.java
8    * @author Xavier Cho
9    * @version $Revision 1.1 $ $Date: 2005/07/16 11:02:22 $
10   */
11  public class TranslationStatus implements Serializable {
12  
13      private static final long serialVersionUID = -7318405209354101200L;
14  
15      private long entries;
16      private long translatedEntries;
17      private long checkedOutEntries;
18      private long fuzzyEntries;
19      private long workingTimeInMillis;
20  
21      /***
22       * @param entries
23       * @param checkedOutEntries
24       * @param translatedEntries
25       * @param fuzzyEntries
26       * @param workingTimeInMillis
27       */
28      public TranslationStatus(
29              long entries,
30              long checkedOutEntries,
31              long translatedEntries,
32              long fuzzyEntries,
33              long workingTimeInMillis) {
34          this.entries = entries;
35          this.checkedOutEntries = checkedOutEntries;
36          this.translatedEntries = translatedEntries;
37          this.fuzzyEntries = fuzzyEntries;
38          this.workingTimeInMillis = workingTimeInMillis;
39      }
40  
41      /***
42       * @return Returns the checkedOutEntries.
43       */
44      public long getCheckedOutEntries() {
45          return checkedOutEntries;
46      }
47  
48      /***
49       * @return Returns the entries.
50       */
51      public long getEntries() {
52          return entries;
53      }
54  
55      /***
56       * @return Returns the translatedEntries.
57       */
58      public long getTranslatedEntries() {
59          return translatedEntries;
60      }
61  
62      /***
63       * @return Returns the fuzzyEntries.
64       */
65      public long getFuzzyEntries() {
66          return fuzzyEntries;
67      }
68  
69      /***
70       * @return Returns the workingTimeInMillis.
71       */
72      public long getWorkingTimeInMillis() {
73          return workingTimeInMillis;
74      }
75  
76      /***
77       * @return Returns the workingTime.
78       */
79      public Date getWorkingTime() {
80          return new Date(workingTimeInMillis);
81      }
82  
83      public float getTranslatedRate() {
84          return (entries != 0) ? (float) ((double) translatedEntries / (double) entries)
85                  : 0;
86      }
87  
88      public float getFuzzyRate() {
89          return (entries != 0) ? (float) ((double) fuzzyEntries / (double) entries)
90                  : 0;
91      }
92  
93      public float getCheckOutRate() {
94          return (entries != 0) ? (float) ((double) checkedOutEntries / (double) entries)
95                  : 0;
96      }
97  }