def init_db_command(): from geobox.config import GeoBoxState from geobox.model.fixtures import add_fixtures app_state = GeoBoxState.initialize() if os.path.exists(app_state.db_filename): os.remove(app_state.db_filename) app_state = GeoBoxState.initialize() session = app_state.user_db_session() session.commit()
def main(): from geobox.config import GeoBoxConfig, GeoBoxState config = GeoBoxConfig.from_file('./geobox.ini') if not config: sys.exit(1) app_state = GeoBoxState(config) session = app_state.user_db_session() # create test tasks tasks = [] # tasks.append(VectorImportTask(db_name='foobar', file_name=path('../example_data/points.shp'), mapping_name='Points')) # tasks.append(VectorImportTask(db_name='foobar', file_name=path('../example_data/lines.shp'), mapping_name='Lines')) # tasks.append(ReplicationTask(db_name='foobar', remote_db_url='http://127.0.0.1:5984', remote_db_name='foobar2', push=True)) # tasks.append(ReplicationTask(db_name='foobar', remote_db_url='http://127.0.0.1:5984', remote_db_name='foobar2', pull=True)) source = model.ExternalWMTSSource( name='test', url="http://a.tile.openstreetmap.org/%(z)s/%(x)s/%(y)s.png", format='png') layer = session.query(model.RasterLayer).filter_by(name='osm').all() if layer: layer = layer[0] else: layer = model.RasterLayer(name='osm') import_task = model.RasterImportTask(source=source, layer=layer, zoom_level_start=0, zoom_level_end=5) tasks.append(import_task) tasks.append( ExportProject(title="test project", download_level_start=2, download_level_end=10, raster_tasks=[ RasterExportTask( layer=RasterLayer(name='test raster layer'), export_format='jpeg') ])) for t in tasks: session.add(t) session.commit() # list all tasks for t in session.query(model.Task).with_polymorphic('*'): print t
def main(): from geobox.config import GeoBoxConfig, GeoBoxState config = GeoBoxConfig.from_file('./geobox.ini') if not config: sys.exit(1) app_state = GeoBoxState(config) session = app_state.user_db_session() # create test tasks tasks = [] # tasks.append(VectorImportTask(db_name='foobar', file_name=path('../example_data/points.shp'), mapping_name='Points')) # tasks.append(VectorImportTask(db_name='foobar', file_name=path('../example_data/lines.shp'), mapping_name='Lines')) # tasks.append(ReplicationTask(db_name='foobar', remote_db_url='http://127.0.0.1:5984', remote_db_name='foobar2', push=True)) # tasks.append(ReplicationTask(db_name='foobar', remote_db_url='http://127.0.0.1:5984', remote_db_name='foobar2', pull=True)) source = model.ExternalWMTSSource(name='test', url="http://a.tile.openstreetmap.org/%(z)s/%(x)s/%(y)s.png", format='png') layer = session.query(model.RasterLayer).filter_by(name='osm').all() if layer: layer = layer[0] else: layer = model.RasterLayer(name='osm') import_task = model.RasterImportTask(source=source, layer=layer, zoom_level_start=0, zoom_level_end=5) tasks.append(import_task) tasks.append(ExportProject(title="test project", download_level_start=2, download_level_end=10, raster_tasks=[ RasterExportTask(layer= RasterLayer(name = 'test raster layer') , export_format='jpeg') ])) for t in tasks: session.add(t) session.commit() # list all tasks for t in session.query(model.Task).with_polymorphic('*'): print t
def webserver_command(config='./geobox.ini'): from geobox.config import GeoBoxConfig, GeoBoxState config = GeoBoxConfig.from_file(config) if not config: sys.exit(1) app_state = GeoBoxState(config) app = create_app(app_state) # scriptine removed sub-command from argv, # but Flask reloader needs complete sys.argv sys.argv[1:1] = ['webserver'] app.run(port=config.get('web', 'port'))
def server(): import time from geobox.config import GeoBoxState app_state = GeoBoxState.initialize() from geobox.process.base import ProcessThread p = ProcessThread(app_state=app_state, task_class_mapping=task_class_mapping, task_process_mapping=task_process_mapping) p.start() while True: try: time.sleep(1) except KeyboardInterrupt: break app_state.shutdown_app()