Apply formatting
[proteocache.git] / engine / compbio / engine / Job.java
1 package compbio.engine;
2
3 import java.text.ParseException;
4 import java.text.SimpleDateFormat;
5 import java.util.Date;
6
7 public class Job {
8         private String jobid;
9         private String ExecutionStatus;
10         private String FinalStatus;
11         private String IP;
12         private String Email;
13
14         private String StartingDateStr;
15         private long StartingDate;
16         private String EndTimeStr;
17         private long EndTime;
18         private String StartingTimeStr;
19         private long StartingTime;
20         private long ExecutionTime;
21
22         static SimpleDateFormat dateformatter = new SimpleDateFormat("yyyy/MM/dd");;
23         static SimpleDateFormat timeformatter = new SimpleDateFormat("yyyy/MM/dd:H:m:s");
24
25         public Job() {
26                 ExecutionStatus = "OK";
27                 FinalStatus = "OK";
28                 jobid = "";
29
30                 StartingDateStr = "1970/1/1";
31                 StartingTimeStr = "1970/1/1:0:0:0";
32                 EndTimeStr = "1970/1/1:0:0:0";
33                 StartingDate = 0L;
34                 StartingTime = 0L;
35                 EndTime = 0L;
36                 ExecutionTime = 0L;
37         }
38
39         public Job(String id, String date1, String date2) {
40                 jobid = id;
41                 ExecutionStatus = "OK";
42                 FinalStatus = "OK";
43                 setDates(date1, date2);
44         }
45
46         protected void setDates(String d1, String d2) {
47                 StartingTimeStr = d1;
48                 StartingDateStr = d1.substring(0, d1.indexOf(":"));
49                 StartingTime = convertTime(StartingTimeStr);
50                 StartingDate = convertDate(StartingDateStr);
51
52                 EndTimeStr = d2;
53                 EndTime = convertTime(d2);
54                 ExecutionTime = EndTime - StartingTime;
55         }
56
57         protected long convertDate(String d) {
58                 try {
59                         if (null != d) {
60                                 Date startdate = dateformatter.parse(d);
61                                 return startdate.getTime();
62                         }
63                 } catch (ParseException e) {
64                         e.printStackTrace();
65                 }
66                 return 0L;
67         }
68
69         protected long convertTime(String d) {
70                 try {
71                         if (null != d) {
72                                 Date startdate = timeformatter.parse(d);
73                                 return startdate.getTime();
74                         }
75                 } catch (ParseException e) {
76                         e.printStackTrace();
77                 }
78                 return 0L;
79         }
80
81         public void setStartingDate(String date) {
82                 this.StartingDateStr = date;
83                 StartingDate = convertDate(date);
84                 StartingTime = convertTime(date);
85                 if (0 < EndTime) {
86                         ExecutionTime = EndTime - StartingTime;
87                 }
88         }
89
90         public void setEndTime(String date) {
91                 this.EndTimeStr = date;
92                 EndTime = convertTime(date);
93                 if (0 < StartingTime) {
94                         ExecutionTime = EndTime - StartingTime;
95                 }
96         }
97
98         public String getStartingDateStr() {
99                 return StartingDateStr;
100         }
101
102         public String getStartingTimeStr() {
103                 return StartingTimeStr;
104         }
105
106         public long getStartingDate() {
107                 return StartingDate;
108         }
109
110         public long getStartingTime() {
111                 return StartingTime;
112         }
113
114         public String getEndTimeStr() {
115                 return EndTimeStr;
116         }
117
118         public long getEndTime() {
119                 return EndTime;
120         }
121
122         public void setExecutionStatus(String status) {
123                 ExecutionStatus = status;
124         }
125
126         public void setFinalStatus(String status) {
127                 FinalStatus = status;
128         }
129
130         public String getExecutionStatus() {
131                 return ExecutionStatus;
132         }
133
134         public String getFinalStatus() {
135                 return FinalStatus;
136         }
137
138         public long getExecutionTime() {
139                 return ExecutionTime;
140         }
141
142         public void setIP(String IP) {
143                 this.IP = IP;
144         }
145
146         public String getIP() {
147                 if (null != IP)
148                         return IP;
149                 return "127.0.0.1";
150         }
151
152         public void setEmail(String email) {
153                 this.Email = email;
154         }
155
156         public String getEmail() {
157                 if (null != Email)
158                         return Email;
159                 return "user@localhost";
160         }
161
162         public void setJobId(String id) {
163                 this.jobid = id;
164         }
165
166         public String getJobID() {
167                 return jobid;
168         }
169 }