@Override
public void start(BundleContext bc) {
for(Function function : H2GISFunctions.getBuiltInsFunctions()) {
bc.registerService(Function.class, function, null);
if(function instanceof DriverFunction) {
bc.registerService(DriverFunction.class, (DriverFunction) function, null);
}
}
bc.registerService(DriverFunction.class, new DBFDriverFunction(), null);
bc.registerService(DriverFunction.class, new SHPDriverFunction(), null);
bc.registerService(DriverFunction.class, new GPXDriverFunction(), null);
bc.registerService(DriverFunction.class, new GeoJsonDriverFunction(), null);
bc.registerService(DriverFunction.class, new OSMDriverFunction(), null);
bc.registerService(DriverFunction.class, new KMLDriverFunction(), null);
bc.registerService(DriverFunction.class, new CSVDriverFunction(), null);
bc.registerService(DriverFunction.class, new TSVDriverFunction(), null);
DataSourceTracker dataSourceTracker = new DataSourceTracker(bc);
databaseTracker = new ServiceTracker<>(bc,DataSource.class,dataSourceTracker);
databaseTracker.open();
}