]> git.openstreetmap.org Git - nominatim.git/blobdiff - nominatim/clicmd/freeze.py
block search queries with too many tokens
[nominatim.git] / nominatim / clicmd / freeze.py
index 8bca04b995f1240782ab27c92e4326db2f1ad9f3..5dfdd255c8736768713ee3f3532ffb3bf2b3dbb0 100644 (file)
@@ -1,8 +1,16 @@
+# 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.
 """
 Implementation of the 'freeze' subcommand.
 """
+import argparse
 
-from ..db.connection import connect
+from nominatim.db.connection import connect
+from nominatim.clicmd.args import NominatimArgs
 
 # Do not repeat documentation of subcommand classes.
 # pylint: disable=C0111
@@ -21,17 +29,15 @@ class SetupFreeze:
     This command has the same effect as the `--no-updates` option for imports.
     """
 
-    @staticmethod
-    def add_args(parser):
+    def add_args(self, parser: argparse.ArgumentParser) -> None:
         pass # No options
 
-    @staticmethod
-    def run(args):
+
+    def run(self, args: NominatimArgs) -> int:
         from ..tools import freeze
 
-        conn = connect(args.config.get_libpq_dsn())
-        freeze.drop_update_tables(conn)
-        freeze.drop_flatnode_file(args.config.FLATNODE_FILE)
-        conn.close()
+        with connect(args.config.get_libpq_dsn()) as conn:
+            freeze.drop_update_tables(conn)
+        freeze.drop_flatnode_file(args.config.get_path('FLATNODE_FILE'))
 
         return 0