+# SPDX-License-Identifier: GPL-2.0-only
+#
+# This file is part of Nominatim. (https://nominatim.org)
+#
+# Copyright (C) 2022 by the Nominatim developer community.
+# For a full list of authors see the git log.
"""
Contains the class which handles statistics for the
import of special phrases.
LOG = logging.getLogger()
class SpecialPhrasesImporterStatistics():
- # pylint: disable-msg=too-many-instance-attributes
"""
Class handling statistics of the import
process of special phrases.
"""
- def __init__(self):
- self._set_lang_values_to_0()
- self._set_global_values_to_0()
+ def __init__(self) -> None:
+ self._intialize_values()
- def _set_global_values_to_0(self):
+ def _intialize_values(self) -> None:
"""
Set all counts for the global
import to 0.
self.tables_created = 0
self.tables_deleted = 0
self.tables_ignored = 0
- self.global_phrases_invalid = 0
+ self.invalids = 0
- def _set_lang_values_to_0(self):
- """
- Set all counts for the current
- lang to 0.
- """
- self.lang_phrases_invalid = 0
-
- def notify_one_phrase_invalid(self):
+ def notify_one_phrase_invalid(self) -> None:
"""
Add +1 to the count of invalid entries
fetched from the wiki.
"""
- self.lang_phrases_invalid += 1
- self.global_phrases_invalid += 1
+ self.invalids += 1
- def notify_one_table_created(self):
+ def notify_one_table_created(self) -> None:
"""
Add +1 to the count of created tables.
"""
self.tables_created += 1
- def notify_one_table_deleted(self):
+ def notify_one_table_deleted(self) -> None:
"""
Add +1 to the count of deleted tables.
"""
self.tables_deleted += 1
- def notify_one_table_ignored(self):
+ def notify_one_table_ignored(self) -> None:
"""
Add +1 to the count of ignored tables.
"""
self.tables_ignored += 1
-
- def notify_import_done(self):
+ def notify_import_done(self) -> None:
"""
Print stats for the whole import process
and reset all values.
"""
LOG.info('====================================================================')
LOG.info('Final statistics of the import:')
- LOG.info('- %s phrases were invalid.', self.global_phrases_invalid)
- if self.global_phrases_invalid > 0:
+ LOG.info('- %s phrases were invalid.', self.invalids)
+ if self.invalids > 0:
LOG.info(' Those invalid phrases have been skipped.')
LOG.info('- %s tables were ignored as they already exist on the database',
self.tables_ignored)
if self.tables_deleted > 0:
LOG.info(' They were deleted as they are not valid anymore.')
- if self.global_phrases_invalid > 0:
+ if self.invalids > 0:
LOG.warning('%s phrases were invalid and have been skipped during the whole process.',
- self.global_phrases_invalid)
-
- self._set_global_values_to_0()
-
- def notify_current_lang_done(self, lang):
- """
- Print stats for the current lang
- and then reset lang values.
- """
- LOG.info('====================================================================')
- LOG.info('Statistics for the import of %s:', lang)
- LOG.info('- %s phrases were invalid.', self.lang_phrases_invalid)
- if self.lang_phrases_invalid > 0:
- LOG.info(' Those invalid phrases have been skipped.')
- LOG.info('====================================================================')
-
- if self.lang_phrases_invalid > 0:
- LOG.warning('%s phrases were invalid and have been skipped for the import of lang %s.',
- self.lang_phrases_invalid, lang)
+ self.invalids)
- self._set_lang_values_to_0()
+ self._intialize_values()