--- android/TrainInfo/src/dk/thoerup/traininfo/provider/DepartureFactory.java 2009/08/08 19:02:20 237 +++ android/TrainInfo/src/dk/thoerup/traininfo/provider/ProviderFactory.java 2009/09/30 06:01:39 363 @@ -1,16 +1,45 @@ package dk.thoerup.traininfo.provider; -public class DepartureFactory { - private static DepartureProvider provider = null; +public class ProviderFactory { + private static DepartureProvider departureProvider = null; + private static StationProvider stationProvider = null; + private static TimetableProvider timetableProvider = null; + private static final boolean DEBUG = true; - public static DepartureProvider getProvider() { - if (provider == null) { - //provider = new DebugProvider(); - provider = new XmlDepartureProvider(); + public static DepartureProvider getDepartureProvider() { + if (departureProvider == null) { + if (!DEBUG) { + departureProvider = new XmlDepartureProvider(); + } else { + departureProvider = new DebugProvider(); + } } - return provider; + return departureProvider; + } + + public static StationProvider getStationProvider() { + if (stationProvider == null) { + if (!DEBUG) { + stationProvider = new XmlStationProvider(); + } else { + stationProvider = new DebugProvider(); + } + } + + return stationProvider; + } + + public static TimetableProvider getTimetableProvider() { + if (timetableProvider == null) { + if (!DEBUG) { + timetableProvider = new XmlTimetableProvider(); + } else { + timetableProvider = new DebugProvider(); + } + } + return timetableProvider; } }