fixed Execution Time Statistics report
[proteocache.git] / engine / compbio / engine / ExecutionInterval.java
1 package compbio.engine;
2
3 import compbio.cassandra.Pair;
4
5
6 /**
7  * List of all possible execution time intervals for statistics
8  * 
9  */
10 public enum ExecutionInterval {
11                 ZERO_THIRTY_SEC, THIRTY_SIXTY_SEC, ONE_TWO_MIN, TWO_TEN_MIN, MORE_THEN_TEN_MIN;
12                 
13                 public static ExecutionInterval getExecutionInterval(String interval) {
14                         interval = interval.trim().toLowerCase();
15                         for (ExecutionInterval execInterval : ExecutionInterval.values()) {
16                                 if (execInterval.toString().equalsIgnoreCase(interval)) {
17                                         return execInterval;
18                                 }
19                         }
20                         return null;
21                 }
22                 
23                 public static Pair<Integer, Integer> getBoundsInterval(String interval) {
24                         ExecutionInterval execInterval = getExecutionInterval(interval);
25                         if (execInterval != null)
26                                 switch (execInterval) {
27                     case ZERO_THIRTY_SEC:
28                         return  Pair.createPair(0, 30);
29                     case THIRTY_SIXTY_SEC:
30                         return Pair.createPair(30, 60);
31                     case ONE_TWO_MIN:
32                         return Pair.createPair(60, 120);
33                     case TWO_TEN_MIN:
34                         return Pair.createPair(120, 600);
35                     case MORE_THEN_TEN_MIN:
36                         return Pair.createPair(120, Integer.MAX_VALUE);
37                     default:
38                         return null;
39                         }
40                         return null;
41                 }
42
43                 
44 }