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
Beispiel #2
0
 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
Beispiel #3
0
 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