/[projects]/android/TrainInfo/src/dk/thoerup/traininfo/provider/ProviderFactory.java
ViewVC logotype

Annotation of /android/TrainInfo/src/dk/thoerup/traininfo/provider/ProviderFactory.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1160 - (hide annotations) (download)
Mon Oct 4 08:42:12 2010 UTC (13 years, 7 months ago) by torben
File size: 1941 byte(s)
Make cache cleanup code a little more elegant
1 torben 237 package dk.thoerup.traininfo.provider;
2    
3    
4 torben 1027
5    
6 torben 253 public class ProviderFactory {
7     private static DepartureProvider departureProvider = null;
8     private static StationProvider stationProvider = null;
9 torben 352 private static TimetableProvider timetableProvider = null;
10 torben 1053 private static MetroProvider metroProvider = null;
11 torben 237
12 torben 365 private static final boolean DEBUG = false;
13 torben 363
14 torben 1160 //TODO: this one really doesn't belong here ... but where should it go ?
15 torben 1027 public static void purgeOldEntries() {
16     synchronized (ProviderFactory.class) {
17 torben 1160 if (stationProvider != null ) {
18     stationProvider.purgeOldEntries();
19 torben 1027 }
20    
21 torben 1160 if (departureProvider != null ) {
22     departureProvider.purgeOldEntries();
23 torben 1027 }
24    
25 torben 1160 if (timetableProvider != null ) {
26     timetableProvider.purgeOldEntries();
27 torben 1027 }
28 torben 1160 if (metroProvider != null ) {
29     metroProvider.purgeOldEntries();
30 torben 1053 }
31    
32 torben 1027 }
33    
34     }
35    
36 torben 253 public static DepartureProvider getDepartureProvider() {
37     if (departureProvider == null) {
38 torben 363 if (!DEBUG) {
39     departureProvider = new XmlDepartureProvider();
40     } else {
41     departureProvider = new DebugProvider();
42     }
43 torben 237 }
44    
45 torben 253 return departureProvider;
46 torben 237 }
47 torben 253
48     public static StationProvider getStationProvider() {
49     if (stationProvider == null) {
50 torben 363 if (!DEBUG) {
51     stationProvider = new XmlStationProvider();
52     } else {
53     stationProvider = new DebugProvider();
54     }
55 torben 253 }
56    
57     return stationProvider;
58     }
59 torben 352
60     public static TimetableProvider getTimetableProvider() {
61     if (timetableProvider == null) {
62 torben 363 if (!DEBUG) {
63     timetableProvider = new XmlTimetableProvider();
64     } else {
65     timetableProvider = new DebugProvider();
66     }
67 torben 352 }
68     return timetableProvider;
69     }
70 torben 1053
71     public static MetroProvider getMetroProvider() {
72     if (metroProvider == null) {
73     if (!DEBUG) {
74     metroProvider = new XmlMetroProvider();
75     } else {
76     metroProvider = new DebugProvider();
77     }
78     }
79     return metroProvider;
80     }
81 torben 237 }

  ViewVC Help
Powered by ViewVC 1.1.20