File indexing completed on 2026-04-19 08:00:01
0001 """
0002 Queue Config dump class
0003
0004 """
0005 import copy
0006 import hashlib
0007 import json
0008
0009 from .spec_base import SpecBase
0010
0011
0012 class QueueConfigDumpSpec(SpecBase):
0013
0014 attributesWithTypes = (
0015 "configID:integer primary key",
0016 "queueName:text / index",
0017 "checksum:text",
0018 "dumpUniqueName:text / unique",
0019 "creationTime:timestamp / index",
0020 "data:blob",
0021 )
0022
0023
0024 def __init__(self):
0025 SpecBase.__init__(self)
0026
0027
0028 def set_data(self, data):
0029 self.data = copy.deepcopy(data)
0030
0031 try:
0032 del self.data["queueStatus"]
0033 except Exception:
0034 pass
0035
0036 m = hashlib.md5()
0037 m.update(json.dumps(self.data).encode("utf-8"))
0038 self.checksum = m.hexdigest()
0039
0040 self.dumpUniqueName = f"{self.queueName}_{self.checksum}"