/**
* Generated by DragonFly
*
*/
package gpsalarmclock.servicetracker;
import org.osgi.framework.BundleContext;
import com.buglabs.application.AbstractServiceTracker;
import com.buglabs.bug.module.gps.pub.*;
import com.buglabs.bug.module.lcd.pub.*;
import gpsalarmclock.app.*;
import gpsutilities.pub.IGPSUtilProvider;
/**
* Service tracker for the BugApp Bundle;
*
*/
public class GPSAlarmClockServiceTracker extends AbstractServiceTracker {
private IGPSUtilProvider gpsUtil;
private IModuleDisplay display;
private IPositionProvider position;
public GPSAlarmClockServiceTracker(BundleContext context) {
super(context);
}
/**
* Determines if the application can start.
*/
public boolean canStart() {
return super.canStart();
}
/**
* If canStart returns true
* this method is called to start the application.
* Place your fun logic here.
*/
public void doStart() {
System.out.println("GPSAlarmClockServiceTracker: start");
gpsUtil = (IGPSUtilProvider) getService(IGPSUtilProvider.class);
position = (IPositionProvider) getService(IPositionProvider.class);
display = (IModuleDisplay) getService(IModuleDisplay.class);
GPSAlarmClockApp app = new GPSAlarmClockApp(position, display, gpsUtil);
}
/**
* Called when a service that this application depends is unregistered.
*/
public void doStop() {
System.out.println("GPSAlarmClockServiceTracker: stop");
}
/**
* Allows the user to set the service dependencies by
* adding them to services list returned by getServices().
* i.e.nl getServices().add(MyService.class.getName());
*/
public void initServices() {
getServices().add("com.buglabs.bug.module.gps.pub.IPositionProvider");
getServices().add("com.buglabs.bug.module.lcd.pub.IModuleDisplay");
getServices().add("gpsutilities.pub.IGPSUtilProvider");
}
}