Skip to content
Snippets Groups Projects
Commit 7d0f66d2 authored by Alexander Schlemmer's avatar Alexander Schlemmer
Browse files

ENH: refactored checking of extern and allow other entity types

parent 9af13ec9
No related branches found
No related tags found
2 merge requests!39Release 0.4.0,!30F extend yaml model
Pipeline #19159 passed
...@@ -25,7 +25,7 @@ import yaml ...@@ -25,7 +25,7 @@ import yaml
from .data_model import DataModel from .data_model import DataModel
# Keywords which are allowed in data model descriptions. # Keywords which are allowed in data model descriptions.
KEYWORDS = ["parent", KEYWORDS = ["parent", # TODO: can we remove that, see: #36
"importance", "importance",
"datatype", # for example TEXT, INTEGER or REFERENCE "datatype", # for example TEXT, INTEGER or REFERENCE
"unit", "unit",
...@@ -177,13 +177,11 @@ class Parser(object): ...@@ -177,13 +177,11 @@ class Parser(object):
ymlmodel["extern"] = [] ymlmodel["extern"] = []
for name in ymlmodel["extern"]: for name in ymlmodel["extern"]:
if db.execute_query("COUNT Property {}".format(name)) > 0: for role in ("Property", "RecordType", "Record", "File"):
self.model[name] = db.execute_query( if db.execute_query("COUNT {} {}".format(role, name)) > 0:
"FIND Property WITH name={}".format(name), unique=True) self.model[name] = db.execute_query(
"FIND {} WITH name={}".format(role, name), unique=True)
elif db.execute_query("COUNT RecordType {}".format(name)) > 0: break
self.model[name] = db.execute_query(
"FIND RecordType WITH name={}".format(name), unique=True)
else: else:
raise Exception("Did not find {}".format(name)) raise Exception("Did not find {}".format(name))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment