def modifyData(self, option, name, value, upd_from): if option == "UPDATE": time_label = datetime.now().isoformat() self.mMongoAgent.update_one({ "_tp": self.mSolKind, "name": name }, { "$set": { self.mSolKind: value, "_tp": self.mSolKind, "time": time_label, "from": upd_from } }, upsert=True) self.mData[name] = [ value, AnfisaConfig.normalizeTime(time_label), upd_from ] self.mIntVersion += 1 return True if option == "DELETE" and name in self.mData: self.mMongoAgent.delete_many({"_tp": self.mSolKind, "name": name}) del self.mData[name] self.mIntVersion += 1 return True return False
def _getRecData(self, rec_no): rec_key = self.getWS().getRecKey(rec_no) rec_data = self.getWS().getMongoRecData(rec_key) if rec_data is None: return (dict(), None, None) return (dict(filter(self._goodPair, rec_data.items())), rec_data.get('_h'), AnfisaConfig.normalizeTime(rec_data.get('_t')))
def getFilters(self): ret = [] for it in self.mAgent.find({"_tp": "flt"}): it_id = it["_id"] if it_id.startswith("flt-"): ret.append((it_id[4:], it["seq"], AnfisaConfig.normalizeTime(it.get("time")))) return ret
def __init__(self, sol_kind, mongo_agent): self.mSolKind = sol_kind self.mMongoAgent = mongo_agent self.mData = dict() self.mIntVersion = 0 for it in self.mMongoAgent.find({"_tp": self.mSolKind}): name = it["name"] self.mData[name] = [ it[self.mSolKind], AnfisaConfig.normalizeTime(it.get("time")), it["from"] ]
def getNote(self): it = self.mAgent.find_one({"_tp": "dsinfo"}) if it is not None: return (it.get("note", "").strip(), AnfisaConfig.normalizeTime(it.get("note-time"))) return ("", None)
def getCreationDate(self): it = self.mAgent.find_one({"_tp": "dsinfo"}) if it is not None: return AnfisaConfig.normalizeTime(it.get("upd-time")) return None
def getNote(self): it = self.mAgent.find_one({"_id": "note"}) if it is not None: return (it["note"].strip(), AnfisaConfig.normalizeTime(it.get("time"))) return ("", None)
def getCreationDate(self): it = self.mAgent.find_one({"_id": "created"}) if it is not None: return AnfisaConfig.normalizeTime(it.get("time")) return None