From 2ff697e7dde78a1bcbaa39941d672265d3bd110d Mon Sep 17 00:00:00 2001 From: Alexandre Maurel Date: Fri, 1 Mar 2024 17:19:35 +0100 Subject: [PATCH] impl : add meta functions --- tercen/model/impl.py | 47 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/tercen/model/impl.py b/tercen/model/impl.py index 100cd5f..7a068a6 100644 --- a/tercen/model/impl.py +++ b/tercen/model/impl.py @@ -864,3 +864,50 @@ class GroupByRelation(GroupByRelationBase): def __init__(self, m=None): super().__init__(m) + +def removeMeta(self, key): + for i in range(0, len(self.meta)): + m = self.meta[i] + if m.key == key: + self.meta.pop(i) + break + +def hasMeta(self, key): + for i in range(0, len(self.meta)): + m = self.meta[i] + if m.key == key: + return True + return False + + +def getMetaPair(self, key): + for i in range(0, len(self.meta)): + m = self.meta[i] + if m.key == key: + return m + +def getMeta(self, key, defaultValue=None): + for i in range(0, len(self.meta)): + m = self.meta[i] + if m.key == key: + return m.value + return defaultValue + +def addMeta(self, key:str, value:str): + p = Pair({"key":key, "value":value}) + self.removeMeta(p.key) + self.meta.append(p) + + +Task.removeMeta = removeMeta +Task.addMeta = addMeta +Task.hasMeta = hasMeta +Task.getMetaPair = getMetaPair +Task.getMeta = getMeta + + +Document.removeMeta = removeMeta +Document.addMeta = addMeta +Document.hasMeta = hasMeta +Document.getMetaPair = getMetaPair +Document.getMeta = getMeta