diff --git a/src/covid19/blueprints/ecdc/ecdc_service.py b/src/covid19/blueprints/ecdc/ecdc_service.py index 384d455dcfa535cbd373687810bdfe95a73260e6..64412bf84156ecc7179d5944146395dc74f4cc7d 100644 --- a/src/covid19/blueprints/ecdc/ecdc_service.py +++ b/src/covid19/blueprints/ecdc/ecdc_service.py @@ -22,18 +22,12 @@ class EcdcService: app.logger.info(" ECDC Service [ready] ") def pretask_database_drop_create(self): - flash("ecdc_service.download started") - app.logger.info("ecdc_service.download started") self.service_download.download_file() - app.logger.info("ecdc_service.download done") - flash("ecdc_service.download done") return self def task_database_drop_create(self): - app.logger.info("ecdc_service.task_database_drop_create started") self.service_import.import_file() - self.service_update_full.full_update_star_schema_initial() - app.logger.info("ecdc_service.task_database_drop_create done") + self.service_update_full.full_update_star_schema() return self def run_download_only(self): @@ -44,30 +38,30 @@ class EcdcService: self.service_import.import_file() return self - def full_update_dimension_tables(self): - self.service_update_full.full_update_star_schema_initial() + def run_full_update_dimension_tables(self): + self.service_update_full.full_update_star_schema() return self - def run_update_dimension_tables_only(self): - self.service_update.update_dimension_tables_only() + def run_update_dimension_tables(self): + self.service_update.update_dimension_tables() return self - def run_update_fact_table_incremental_only(self): - self.service_update.update_fact_table_incremental_only() + def run_update_fact_table(self): + self.service_update.update_fact_table() return self - def run_update_fact_table_initial_only(self): - self.service_update_full.full_update_fact_table_initial_only() + def run_full_update_fact_table(self): + self.service_update_full.full_update_fact_table() return self - def run_update_star_schema_incremental(self): + def run_update_star_schema(self): self.service_import.import_file() - self.service_update.update_star_schema_incremental() + self.service_update.update_star_schema() return self - def run_update_star_schema_initial(self): + def run_full_update_star_schema(self): self.service_import.import_file() - self.service_update_full.full_update_star_schema_initial() + self.service_update_full.full_update_star_schema() return self def download_all_files(self): @@ -79,13 +73,13 @@ class EcdcService: return self def update_dimension_tables_only(self): - self.service_update.update_dimension_tables_only() + self.service_update.update_dimension_tables() return self def update_fact_table_initial_only(self): - self.service_update_full.full_update_fact_table_initial_only() + self.service_update_full.full_update_fact_table() return self def update_fact_table_incremental_only(self): - self.service_update.update_fact_table_incremental_only() + self.service_update.update_fact_table() return self diff --git a/src/covid19/blueprints/ecdc/ecdc_service_update.py b/src/covid19/blueprints/ecdc/ecdc_service_update.py index 4575b11df31505611abecb32f9dca872e9280cbd..fff5b5ee81b0a1cc92989a74ec1cb51f93a016d7 100644 --- a/src/covid19/blueprints/ecdc/ecdc_service_update.py +++ b/src/covid19/blueprints/ecdc/ecdc_service_update.py @@ -141,7 +141,7 @@ class EcdcServiceUpdateFull(EcdcServiceUpdateBase): ) return ecdc_country - def __full_update_data_initial(self): + def __full_update_data(self): app.logger.info(" __update_data_initial [begin]") app.logger.info("------------------------------------------------------------") EcdcData.remove_all() @@ -181,11 +181,11 @@ class EcdcServiceUpdateFull(EcdcServiceUpdateBase): app.logger.info("------------------------------------------------------------") return self - def full_update_fact_table_initial_only(self): - self.__full_update_data_initial() + def full_update_fact_table(self): + self.__full_update_data() return self - def full_update_star_schema_initial(self): + def full_update_star_schema(self): EcdcData.remove_all() EcdcCountry.remove_all() EcdcContinent.remove_all() @@ -193,7 +193,7 @@ class EcdcServiceUpdateFull(EcdcServiceUpdateBase): self.__full_update_date_reported() self.__full_update_continent() self.__full_update_country() - self.__full_update_data_initial() + self.__full_update_data() return self @@ -326,7 +326,7 @@ class EcdcServiceUpdate(EcdcServiceUpdateBase): dict_date_reported_from_import[item_date_str_from_ecdc_import_str] = my_ecdc_date_reported_obj return dict_date_reported_from_import - def update_dimension_tables_only(self): + def update_dimension_tables(self): EcdcData.remove_all() EcdcCountry.remove_all() EcdcContinent.remove_all() @@ -335,7 +335,7 @@ class EcdcServiceUpdate(EcdcServiceUpdateBase): self.__update_country() return self - def __update_data_initial(self): + def __update_data(self): app.logger.info(" __update_data_initial [begin]") app.logger.info("------------------------------------------------------------") EcdcData.remove_all() @@ -370,11 +370,11 @@ class EcdcServiceUpdate(EcdcServiceUpdateBase): app.logger.info("------------------------------------------------------------") return self - def update_fact_table_incremental_only(self): - self.__update_data_initial() + def update_fact_table(self): + self.__update_data() return self - def update_star_schema_incremental(self): + def update_star_schema(self): EcdcData.remove_all() EcdcCountry.remove_all() EcdcContinent.remove_all() @@ -382,6 +382,6 @@ class EcdcServiceUpdate(EcdcServiceUpdateBase): self.__update_date_reported() self.__update_continent() self.__update_country() - self.__update_data_initial() + self.__update_data() return self diff --git a/src/covid19/blueprints/ecdc/ecdc_views.py b/src/covid19/blueprints/ecdc/ecdc_views.py index 535d80f7e959b30fc25edddab80b1857bcb3de56..66e6c0530585d9553f44bc46ac791e3bff6e36b7 100644 --- a/src/covid19/blueprints/ecdc/ecdc_views.py +++ b/src/covid19/blueprints/ecdc/ecdc_views.py @@ -202,80 +202,106 @@ def task_ecdc_import_only(self): @celery.task(bind=True) -def task_ecdc_update_dimension_tables_only(self): +def task_ecdc_full_update_dimension_tables(self): logger = get_task_logger(__name__) self.update_state(state=states.STARTED) logger.info("------------------------------------------------------------") - logger.info(" Received: task_ecdc_update_dimension_tables_only [OK] ") + logger.info(" Received: task_ecdc_full_update_dimension_tables [OK] ") logger.info("------------------------------------------------------------") - ecdc_service.run_update_dimension_tables_only() + ecdc_service.run_full_update_dimension_tables() self.update_state(state=states.SUCCESS) - result = "OK (task_ecdc_update_dimension_tables_only)" + result = "OK (task_ecdc_full_update_dimension_tables)" return result @celery.task(bind=True) -def task_ecdc_update_fact_table_incremental_only(self): +def task_ecdc_update_dimension_tables(self): logger = get_task_logger(__name__) self.update_state(state=states.STARTED) logger.info("------------------------------------------------------------") - logger.info(" Received: task_ecdc_update_fact_table_incremental_only [OK] ") + logger.info(" Received: task_ecdc_update_dimension_tables [OK] ") logger.info("------------------------------------------------------------") - ecdc_service.run_update_fact_table_incremental_only() + ecdc_service.run_update_dimension_tables() self.update_state(state=states.SUCCESS) - result = "OK (task_ecdc_update_fact_table_incremental_only)" + result = "OK (task_ecdc_update_dimension_tables)" return result @celery.task(bind=True) -def task_ecdc_update_fact_table_incremental_only(self): +def task_ecdc_full_update_fact_table(self): logger = get_task_logger(__name__) self.update_state(state=states.STARTED) logger.info("------------------------------------------------------------") - logger.info(" Received: task_ecdc_update_fact_table_incremental_only [OK] ") + logger.info(" Received: task_ecdc_full_update_fact_table [OK] ") logger.info("------------------------------------------------------------") - ecdc_service.run_update_fact_table_incremental_only() + ecdc_service.run_full_update_fact_table() self.update_state(state=states.SUCCESS) - result = "OK (task_ecdc_update_fact_table_incremental_only)" + result = "OK (task_ecdc_full_update_fact_table)" return result @celery.task(bind=True) -def task_ecdc_update_fact_table_initial_only(self): +def task_ecdc_update_fact_table(self): logger = get_task_logger(__name__) self.update_state(state=states.STARTED) logger.info("------------------------------------------------------------") - logger.info(" Received: task_ecdc_update_fact_table_initial_only [OK] ") + logger.info(" Received: task_ecdc_update_fact_table [OK] ") logger.info("------------------------------------------------------------") - ecdc_service.run_update_fact_table_initial_only() + ecdc_service.run_update_fact_table() self.update_state(state=states.SUCCESS) - result = "OK (task_ecdc_update_fact_table_initial_only)" + result = "OK (task_ecdc_update_fact_table)" return result @celery.task(bind=True) -def task_ecdc_update_star_schema_incremental(self): +def task_ecdc_full_update_fact_table(self): logger = get_task_logger(__name__) self.update_state(state=states.STARTED) logger.info("------------------------------------------------------------") - logger.info(" Received: task_ecdc_update_star_schema_incremental [OK] ") + logger.info(" Received: task_ecdc_full_update_fact_table [OK] ") logger.info("------------------------------------------------------------") - ecdc_service.run_update_star_schema_incremental() + ecdc_service.run_full_update_fact_table() + self.update_state(state=states.SUCCESS) + result = "OK (task_ecdc_full_update_fact_table)" + return result + + +@celery.task(bind=True) +def task_ecdc_full_update_star_schema(self): + logger = get_task_logger(__name__) + self.update_state(state=states.STARTED) + logger.info("------------------------------------------------------------") + logger.info(" Received: task_ecdc_full_update_star_schema [OK] ") + logger.info("------------------------------------------------------------") + ecdc_service.run_full_update_star_schema() self.update_state(state=states.SUCCESS) result = "OK (task_ecdc_update_star_schema_incremental)" return result @celery.task(bind=True) -def task_ecdc_update_star_schema_initial(self): +def task_ecdc_update_star_schema(self): + logger = get_task_logger(__name__) + self.update_state(state=states.STARTED) + logger.info("------------------------------------------------------------") + logger.info(" Received: task_ecdc_update_star_schema [OK] ") + logger.info("------------------------------------------------------------") + ecdc_service.run_update_star_schema() + self.update_state(state=states.SUCCESS) + result = "OK (task_ecdc_update_star_schema)" + return result + + +@celery.task(bind=True) +def task_ecdc_full_update_star_schema(self): logger = get_task_logger(__name__) self.update_state(state=states.STARTED) logger.info("------------------------------------------------------------") - logger.info(" Received: task_ecdc_update_star_schema_initial [OK] ") + logger.info(" Received: task_ecdc_full_update_star_schema [OK] ") logger.info("------------------------------------------------------------") - ecdc_service.run_update_star_schema_initial() + ecdc_service.run_full_update_star_schema() self.update_state(state=states.SUCCESS) - result = "OK (task_ecdc_update_star_schema_initial)" + result = "OK (task_ecdc_full_update_star_schema)" return result # ---------------------------------------------------------------------------------------------------------------- @@ -303,7 +329,7 @@ def url_ecdc_task_import(): @app_ecdc.route('/task/update/dimension-tables') def url_ecdc_task_update_dimensiontables(): flash("url_ecdc_task_update_dimensiontables started") - task_ecdc_update_dimension_tables_only.apply_async() + task_ecdc_update_dimension_tables.apply_async() return redirect(url_for('ecdc.url_ecdc_tasks')) @@ -311,43 +337,43 @@ def url_ecdc_task_update_dimensiontables(): @app_ecdc.route('/task/update/full/dimension-tables') def url_ecdc_task_full_update_dimensiontables(): flash("url_ecdc_task_full_update_dimensiontables started") - task_ecdc_update_dimension_tables_only.apply_async() + task_ecdc_full_update_dimension_tables.apply_async() return redirect(url_for('ecdc.url_ecdc_tasks')) # url_ecdc_task_update_facttable_incremental_only # TODO: #168 implement url_ecdc_task_update_facttable_incremental_only in europe_views.py @app_ecdc.route('/task/update/fact-table') -def url_ecdc_task_update_facttable(): +def url_task_ecdc_update_fact_table(): flash("url_ecdc_task_update_facttable started") - task_ecdc_update_fact_table_incremental_only.apply_async() + task_ecdc_update_fact_table.apply_async() return redirect(url_for('ecdc.url_ecdc_tasks')) # url_ecdc_task_update_facttable_initial_only # TODO: #169 implement url_ecdc_task_update_facttable_initial_only in europe_views.py @app_ecdc.route('/task/full/update/fact-table') -def url_ecdc_task_full_update_facttable(): +def url_task_ecdc_full_update_fact_table(): flash("url_ecdc_task_full_update_facttable started") - task_ecdc_update_fact_table_initial_only.apply_async() + task_ecdc_full_update_fact_table.apply_async() return redirect(url_for('ecdc.url_ecdc_tasks')) # url_ecdc_task_update_star_schema_initial # TODO: #163 implement url_ecdc_task_update_star_schema_initial in europe_views.py @app_ecdc.route('/task/update/full/star_schema') -def url_ecdc_task_full_update_star_schema(): +def url_task_ecdc_full_update_star_schema(): flash("url_ecdc_task_full_update_star_schema started") ecdc_service.run_download_only() - task_ecdc_update_star_schema_initial.apply_async() + task_ecdc_full_update_star_schema.apply_async() return redirect(url_for('ecdc.url_ecdc_tasks')) # url_ecdc_task_update_starschema_incremental # TODO: #164 implement url_ecdc_task_update_starschema_incremental in europe_views.py @app_ecdc.route('/task/update/star_schema') -def url_ecdc_task_update_starschema(): +def url_task_ecdc_update_star_schema(): flash("url_ecdc_task_update_starschema started") ecdc_service.run_download_only() - task_ecdc_update_star_schema_incremental.apply_async() + task_ecdc_update_star_schema.apply_async() return redirect(url_for('ecdc.url_ecdc_tasks')) diff --git a/src/covid19/blueprints/ecdc/templates/ecdc/ecdc_tasks.html b/src/covid19/blueprints/ecdc/templates/ecdc/ecdc_tasks.html index c1b738653f2a1138614f0ca0bfe59405f207f1d1..c29e4bccfd64833a6627254964b6161cb22483a5 100644 --- a/src/covid19/blueprints/ecdc/templates/ecdc/ecdc_tasks.html +++ b/src/covid19/blueprints/ecdc/templates/ecdc/ecdc_tasks.html @@ -9,14 +9,14 @@ <div class="col"> <div class="btn-group-vertical" role="group" aria-label="Views"> <a class="btn btn-danger btn-lg btn-block text-left" - href="{{ url_for( 'ecdc.url_ecdc_task_full_update_star_schema') }}" + href="{{ url_for( 'ecdc.url_task_ecdc_full_update_star_schema') }}" role="button">ECDC :: Task :: update :: star_schema :: full</a> </div> </div> <div class="col"> <div class="btn-group-vertical" role="group" aria-label="Views"> <a class="btn btn-primary btn-lg btn-block text-left" - href="{{ url_for( 'ecdc.url_ecdc_task_update_starschema') }}" + href="{{ url_for( 'ecdc.url_task_ecdc_update_star_schema') }}" role="button">ECDC :: Task :: update :: star_schema</a> </div> </div> @@ -35,7 +35,7 @@ href="{{ url_for( 'ecdc.url_ecdc_task_full_update_dimensiontables') }}" role="button">ECDC :: Task :: update :: dimension-tables :: full</a> <a class="btn btn-secondary btn-lg btn-block text-left" - href="{{ url_for( 'ecdc.url_ecdc_task_full_update_facttable') }}" + href="{{ url_for( 'ecdc.url_task_ecdc_full_update_fact_table') }}" role="button">ECDC :: Task :: update :: fact-table :: full</a> </div> </div> @@ -51,7 +51,7 @@ href="{{ url_for( 'ecdc.url_ecdc_task_update_dimensiontables') }}" role="button">ECDC :: Task :: update :: dimension-tables</a> <a class="btn btn-secondary btn-lg btn-block text-left" - href="{{ url_for( 'ecdc.url_ecdc_task_update_facttable') }}" + href="{{ url_for( 'ecdc.url_task_ecdc_update_fact_table') }}" role="button">ECDC :: Task :: update :: fact-table</a> </div> </div>