def create(self, serializableDBTask = None): logInfo("found DBTask constructor", 5) if serializableDBTask is not None: self.taskId = serializableDBTask._taskId self.system = serializableDBTask._system self.ids = serializableDBTask._aliasIds self.subtasks = serializableDBTask._subtasks self.name = serializableDBTask._name self.displayName = serializableDBTask._displayName self.kcs = serializableDBTask._kcs self.baseURL = serializableDBTask._baseURL if serializableDBTask._assistmentsItem is not None: self.assistmentsItemCache = DBSerializable.convert(serializableDBTask._assistmentsItem) self.assistmentsItemId = serializableDBTask._assistmentsItem.getId() else: self.assistmentsItemCache = None self.assistmentsItemId = None self.description = serializableDBTask._description self.canBeRecommendedIndividually = serializableDBTask._canBeRecommendedIndividually return self
def create(self, serializableDBTask=None): logInfo("found DBTask constructor", 5) if serializableDBTask is not None: self.taskId = serializableDBTask._taskId self.system = serializableDBTask._system self.ids = serializableDBTask._aliasIds self.subtasks = serializableDBTask._subtasks self.name = serializableDBTask._name self.displayName = serializableDBTask._displayName self.kcs = serializableDBTask._kcs self.baseURL = serializableDBTask._baseURL if serializableDBTask._assistmentsItem is not None: self.assistmentsItemCache = DBSerializable.convert( serializableDBTask._assistmentsItem) self.assistmentsItemId = serializableDBTask._assistmentsItem.getId( ) else: self.assistmentsItemCache = None self.assistmentsItemId = None self.description = serializableDBTask._description self.canBeRecommendedIndividually = serializableDBTask._canBeRecommendedIndividually return self
def processStorageInform(self, bucket, verb, key=None, value=None, tags=None, aType=None, allowCreate=None, name=None, description=None, dataType=None): if verb == self.VALUE_VERB: logWarning("IS SETTING", value) if isinstance(value, Serializable): logWarning("IS SERIALIZABLE") if key is None: key = value.getId() elif key != value.getId(): logWarning('BAD KEY for Storage (%s != %s)'%(key, value.getId())) return False if isinstance(value, NamedSerializable): if name is None: name = value.getName() elif name != value.getName(): logWarning('BAD NAME for Storage(%s != %s)'%(name, value.getName())) return False #NOTE we are assuming that the value class and dbValue class have the toDB and saveToDB functions respectively. #If they do not have them they must be implemented or the system will not save the data. try: if isinstance(value, list): for valueObject in value: logInfo("saving task {0} to database".format(valueObject._name), 4) dbValue = DBSerializable.convert(valueObject) dbValue.saveToDB() except NotImplementedError: logInfo('failed to serialize object', 1) dbValue = JSONtoDBSerializable(value) dbValue.saveToDB() return True #GLUDB does not currently allow for deletion of items so this should always return false elif verb == self.VOID_VERB: return False