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

ENH: it is now possible to deserialize records using the high level api...

ENH: it is now possible to deserialize records using the high level api without giving parents or metadata
parent 5d81222a
No related branches found
No related tags found
1 merge request!107ENH: add entity getters and cached functions
Pipeline #37347 passed
...@@ -629,18 +629,20 @@ class CaosDBPythonEntity(object): ...@@ -629,18 +629,20 @@ class CaosDBPythonEntity(object):
else: else:
entity = CaosDBPythonRecord() entity = CaosDBPythonRecord()
for parent in serialization["parents"]: if "parents" in serialization:
if "unresolved" in parent: for parent in serialization["parents"]:
id = None if "unresolved" in parent:
name = None id = None
if "id" in parent: name = None
id = parent["id"] if "id" in parent:
if "name" in parent: id = parent["id"]
name = parent["name"] if "name" in parent:
entity.add_parent(CaosDBPythonUnresolvedParent( name = parent["name"]
id=id, name=name)) entity.add_parent(CaosDBPythonUnresolvedParent(
else: id=id, name=name))
raise NotImplementedError() else:
raise NotImplementedError(
"Currently, only unresolved parents can be deserialized.")
for baseprop in ("name", "id", "description", "version"): for baseprop in ("name", "id", "description", "version"):
if baseprop in serialization: if baseprop in serialization:
...@@ -673,7 +675,8 @@ class CaosDBPythonEntity(object): ...@@ -673,7 +675,8 @@ class CaosDBPythonEntity(object):
if f.name in metadata: if f.name in metadata:
propmeta.__setattr__(f.name, metadata[f.name]) propmeta.__setattr__(f.name, metadata[f.name])
else: else:
raise NotImplementedError() pass
# raise NotImplementedError()
return entity return entity
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment