Пример #1
0
    def sIOEnd(self, body):
        sendMessageBody = {"head":"IOEnd", "body":{}}
     
        self.taskMessage["info"] = body["info"]
        
        if "failTask" == body["taskName"]:
            self.taskMessage["status"] = "fail"
        else:
            for t in self.taskMessage["taskPipeline"]:
                if t["name"] != body["taskName"]:
                    continue

                t["status"] = body["taskStatus"]
                self.taskMessage["status"] = body["taskStatus"]
                break
            
        self.taskMessage["timeRealtime"] = gCom.getDataTime()        
        gCom.setTask(self.taskMessage)
        
        self.taskMessage = ""
        self.fInitTaskMessage()
            
        self.svZmq.zmqSendMessage(sendMessageBody) 

        #log            
        logName = "%s"%body["id"]  
        logData = body
        logInfo = "sIOEnd"  
        logError = body["error"]
        gCom.gtcLog(logName, data=logData, info=logInfo, error=logError) 
Пример #2
0
    def sIOHeart(self, body):
        sendMessageBody = {"head":"IOHeart", "body":{}}

        taskList = body["taskList"]

        if self.taskMessage != "":            
            for t in self.taskMessage["taskPipeline"]:
                if "running" == t["status"]:
                    break            
                elif "fail" == t["status"]:
                    sendMessageBody["body"]["taskName"] = "failTask"
                    sendMessageBody["body"]["id"] = self.taskMessage["id"]
                    sendMessageBody["body"]["data"] = self.taskMessage["data"]
                    sendMessageBody["body"]["info"] = self.taskMessage["info"]
                    sendMessageBody["body"]["status"] = self.taskMessage["status"]
                    
                    self.taskMessage["timeRealtime"] = gCom.getDataTime()
                    gCom.setTask(self.taskMessage)
                    
                    break
                elif "complete" == t["status"]:
                    continue 
                elif "idle" == t["status"]:
                    if t["name"] not in taskList:
                        break
                
                    sendMessageBody["body"]["taskName"] = t["name"]
                    sendMessageBody["body"]["id"] = self.taskMessage["id"]
                    sendMessageBody["body"]["data"] = self.taskMessage["data"]
                    sendMessageBody["body"]["info"] = self.taskMessage["info"]
                    sendMessageBody["body"]["status"] = self.taskMessage["status"]
                    
                    t["status"] = "running"
                    
                    self.taskMessage["timeRealtime"] = gCom.getDataTime()
                    gCom.setTask(self.taskMessage)
                    
                    break
   
        else:
            sendMessageBody["body"]["taskName"] = "orderTask"

        self.svZmq.zmqSendMessage(sendMessageBody)

        #log
        if sendMessageBody["body"] != {} and sendMessageBody["body"]["taskName"] != "orderTask":
            logName = "%s"%sendMessageBody["body"]["id"]
            logData = sendMessageBody["body"]
            logInfo = "sIOHeart"
            gCom.gtcLog(logName, data=logData, info=logInfo)        
Пример #3
0
    def sIOOrder(self, body):
        sendMessageBody = {"head":"IOEnd", "body":{}} 
        
        self.taskMessage = {"taskPipeline":body["taskPipeline"], "data":body["data"], "info":"",
                             "status":"running", "id":body["id"],"timeCreate":gCom.getDataTime(),
                             "timeRealtime":gCom.getDataTime()}  

        gCom.setTask(self.taskMessage)
        
        self.svZmq.zmqSendMessage(sendMessageBody)
        
        #log
        logName   = "%s"%body["id"]
        logData   = body
        logInfo   = "sIOOrder"
        gCom.gtcLog(logName, data=logData, info=logInfo)
Пример #4
0
    def fInitTaskMessage(self):
        taskMessageTemp = gCom.getTask()
        
        if taskMessageTemp == "" and self.taskMessage == "":
            return 
            
        if taskMessageTemp != "" and self.taskMessage == "":        
            for t in taskMessageTemp["taskPipeline"]:
                if t["status"] == "fail" or t["status"] == "running":
                    t["status"] = "fail"
                    taskMessageTemp["info"] = 204
                    break
                elif t["status"] == "idle":
                    t["status"] = "idle"
                    break
                    
            self.taskMessage = taskMessageTemp             
            self.taskMessage["timeRealtime"] = gCom.getDataTime()        
            gCom.setTask(self.taskMessage)  
            return 
        
        #TODO: under code unvalid       
        if taskMessageTemp == "" and self.taskMessage != "":
            for t in self.taskMessage["taskPipeline"]:
                if t["status"] == "fail" or t["status"] == "running":
                    t["status"] = "fail"
                    break
                elif t["status"] == "idle":
                    t["status"] = "running"
                    break
                    
            self.taskMessage["timeRealtime"] = gCom.getDataTime()        
            gCom.setTask(self.taskMessage)
            return   
        
        if taskMessageTemp["timeRealtime"] == self.taskMessage["timeRealtime"]:
            return 
        
        if taskMessageTemp["timeRealtime"] != self.taskMessage["timeRealtime"]:
            for t in self.taskMessage["taskPipeline"]:
                if t["status"] == "fail" or t["status"] == "running":
                    t["status"] = "fail"
                    break
                elif t["status"] == "idle":
                    t["status"] = "running"
                    break        

            self.taskMessage["timeRealtime"] = gCom.getDataTime()        
            gCom.setTask(self.taskMessage)    
            return