pull/56/head
Konstantin Gründger 2016-07-01 07:00:17 +02:00
rodzic f9c88a9cd7
commit 5446ff6ffd
1 zmienionych plików z 12 dodań i 5 usunięć

Wyświetl plik

@ -9,11 +9,14 @@ from ogn.collect.celery import app
logger = get_task_logger(__name__) logger = get_task_logger(__name__)
def update_device_infos(session, address_origin, device_infos): def delete_device_infos(session, address_origin):
session.query(DeviceInfo) \ session.query(DeviceInfo) \
.filter(DeviceInfo.address_origin == address_origin) \ .filter(DeviceInfo.address_origin == address_origin) \
.delete() .delete()
session.commit()
def update_device_infos(session, device_infos):
session.bulk_save_objects(device_infos) session.bulk_save_objects(device_infos)
session.commit() session.commit()
@ -25,8 +28,10 @@ def import_ddb():
"""Import registered devices from the DDB.""" """Import registered devices from the DDB."""
logger.info("Import registered devices fom the DDB...") logger.info("Import registered devices fom the DDB...")
counter = update_device_infos(app.session, AddressOrigin.ogn_ddb, address_origin = AddressOrigin.ogn_ddb
get_ddb())
delete_device_infos(app.session, address_origin)
counter = update_device_infos(app.session, get_ddb(address_origin=address_origin))
logger.info("Imported {} devices.".format(counter)) logger.info("Imported {} devices.".format(counter))
@ -35,6 +40,8 @@ def import_file(path='tests/custom_ddb.txt'):
"""Import registered devices from a local file.""" """Import registered devices from a local file."""
logger.info("Import registered devices from '{}'...".format(path)) logger.info("Import registered devices from '{}'...".format(path))
counter = update_device_infos(app.session, AddressOrigin.user_defined, address_origin = AddressOrigin.user_defined
get_ddb(path))
delete_device_infos(app.session, address_origin)
counter = update_device_infos(app.session, get_ddb(csvfile=path, address_origin=address_origin))
logger.info("Imported {} devices.".format(counter)) logger.info("Imported {} devices.".format(counter))