Skip to content

Commit

Permalink
Fix Vector info bug #359 (#364)
Browse files Browse the repository at this point in the history
* added case distinction for no-single-multiple layers
  • Loading branch information
linakrisztian authored Jan 16, 2023
1 parent 3aa8df2 commit 652982f
Showing 1 changed file with 38 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -57,30 +57,54 @@ def _execute(self):
vector_name = self.rdc.map_name
self.required_mapsets.append(self.mapset_name)

pc = {}
pc["1"] = {
"module": "v.info",
pc_1 = {}
pc_1["1"] = {
"module": "v.db.connect",
"inputs": {"map": vector_name + "@" + self.mapset_name},
"flags": "gte",
"flags": "g"
}

pc["2"] = {
self.skip_region_check = True
process_list = (
self._create_temporary_grass_environment_and_process_list(
process_chain=pc_1, skip_permission_check=True
)
)
self._execute_process_list(process_list)

kv_list = self.module_output_log[0]["stdout"].split("\n")

pc_2 = {}
pc_2["1"] = {
"module": "v.info",
"inputs": {"map": vector_name + "@" + self.mapset_name},
"flags": "h",
"flags": "gte",
}

pc["3"] = {
pc_2["2"] = {
"module": "v.info",
"inputs": {"map": vector_name + "@" + self.mapset_name},
"flags": "c",
"flags": "h",
}

self.skip_region_check = True
process_list = (
self._create_temporary_grass_environment_and_process_list(
process_chain=pc, skip_permission_check=True
)
# case 1: no layer (len(kv_list)==1)
# ==> nothing to be added to the results
if len(kv_list) == 2:
# case 2: single layer
pc_2["3"] = {
"module": "v.info",
"inputs": {"map": vector_name + "@" + self.mapset_name},
"flags": "c",
}
elif len(kv_list) > 2:
# case 3: multiple layers
pc_2["3"] = {
"module": "v.db.connect",
"inputs": {"map": vector_name + "@" + self.mapset_name},
"flags": "g",
}

process_list = self._validate_process_chain(
process_chain=pc_2, skip_permission_check=True
)
self._execute_process_list(process_list)

Expand Down

0 comments on commit 652982f

Please sign in to comment.