示例#1
0
                                   count=False,
                                   serialization_tag=serialization_tag)
      message_list = []
      for line in result:
        m = self.loadMessage(line.message,
                             line=line,
                             uid=line.uid,
                             date=line.date,
                             processing_node=line.processing_node)
        if not hasattr(m, 'order_validation_text'): # BBB
          m.order_validation_text = self.getOrderValidationText(m)
        message_list.append(m)
      return message_list
    else:
      return []

  # Required for tests (time shift)
  def timeShift(self, activity_tool, delay, processing_node = None):
    """
      To simulate timeShift, we simply substract delay from
      all dates in SQLQueue message table
    """
    activity_tool.SQLQueue_timeShift(delay=delay, processing_node=processing_node)

  def getPriority(self, activity_tool):
    method = activity_tool.SQLQueue_getPriority
    default =  SQLBase.getPriority(self, activity_tool)
    return self._getPriority(activity_tool, method, default)

registerActivity(SQLQueue)
示例#2
0
文件: RAMQueue.py 项目: smetsjp/erp5
          if invoke:
            activity_tool.invoke(m)
            if m.getExecutionState() == MESSAGE_EXECUTED:
              activity_tool.unregisterMessage(self, m)
          else:
            activity_tool.unregisterMessage(self, m)
    # Parse each message in queue
    path = activity_tool.getPhysicalPath()
    for m in self.getQueue(path):
      if object_path == m.object_path and (method_id is None or method_id == m.method_id):
        if m.validate(self, activity_tool) is not VALID:
          self.deleteMessage(activity_tool, m) # Trash messages which are not validated (no error handling)
        else:
          if invoke:
            activity_tool.invoke(m)
            if m.getExecutionState() == MESSAGE_EXECUTED:
              self.deleteMessage(activity_tool, m) # Only delete if no error happens
          else:
            self.deleteMessage(activity_tool, m)

  def getMessageList(self, activity_tool, processing_node=None,**kw):
    new_queue = []
    path = activity_tool.getPhysicalPath()
    for m in self.getQueue(path):
      m.processing_node = 1
      m.priority = 0
      new_queue.append(m)
    return new_queue

registerActivity(RAMQueue)
示例#3
0
文件: SQLQueue.py 项目: poses/erp5
                                   count=False,
                                   serialization_tag=serialization_tag)
      message_list = []
      for line in result:
        m = Message.load(line.message,
                             line=line,
                             uid=line.uid,
                             date=line.date,
                             processing_node=line.processing_node)
        if not hasattr(m, 'order_validation_text'): # BBB
          m.order_validation_text = self.getOrderValidationText(m)
        message_list.append(m)
      return message_list
    else:
      return []

  # Required for tests (time shift)
  def timeShift(self, activity_tool, delay, processing_node = None):
    """
      To simulate timeShift, we simply substract delay from
      all dates in SQLQueue message table
    """
    activity_tool.SQLQueue_timeShift(delay=delay, processing_node=processing_node)

  def getPriority(self, activity_tool):
    method = activity_tool.SQLQueue_getPriority
    default =  SQLBase.getPriority(self, activity_tool)
    return self._getPriority(activity_tool, method, default)

registerActivity(SQLQueue)
示例#4
0
文件: RAMDict.py 项目: smetsjp/erp5
        else:
          method_dict[m.method_id] = 1
          activity_tool.unregisterMessage(self, m)
    # Parse each message in RAM dict
    path = activity_tool.getPhysicalPath()
    for key, m in self.getDict(path).items():
      if object_path == m.object_path and (method_id is None or method_id == m.method_id):
        if not method_dict.has_key(m.method_id):
          LOG('CMFActivity RAMDict: ', 0, 'flushing object %s' % '/'.join(m.object_path))
          if invoke:
            activity_tool.invoke(m)
            if m.getExecutionState() == MESSAGE_EXECUTED:
              method_dict[m.method_id] = 1
              self.deleteMessage(activity_tool, m)
          else:
            method_dict[m.method_id] = 1
            self.deleteMessage(activity_tool, m)
        else:
          self.deleteMessage(activity_tool, m)

  def getMessageList(self, activity_tool, processing_node=None,**kw):
    new_queue = []
    path = activity_tool.getPhysicalPath()
    for m in self.getDict(path).values():
      m.processing_node = 1
      m.priority = 0
      new_queue.append(m)
    return new_queue

registerActivity(RAMDict)
示例#5
0
      path = [path]
    if isinstance(method_id, str):
      method_id = [method_id]
    result = activity_tool.SQLDict_validateMessageList(method_id=method_id, 
                                                       path=path,
                                                       message_uid=message_uid, 
                                                       tag=tag,
                                                       serialization_tag=None,
                                                       count=1)
    return result[0].uid_count

  def countMessageWithTag(self, activity_tool, value):
    """Return the number of messages which match the given tag.
    """
    return self.countMessage(activity_tool, tag=value)

  # Required for tests (time shift)
  def timeShift(self, activity_tool, delay, processing_node=None, retry=None):
    """
      To simulate timeShift, we simply substract delay from
      all dates in SQLDict message table
    """
    activity_tool.SQLDict_timeShift(delay=delay, processing_node=processing_node,retry=retry)

  def getPriority(self, activity_tool):
    method = activity_tool.SQLDict_getPriority
    default =  SQLBase.getPriority(self, activity_tool)
    return self._getPriority(activity_tool, method, default)

registerActivity(SQLDict)