예제 #1
0
 def out(self, msgnode):
     (msgid, tick, fileno, sessionid, msgdata) = msgnode
     request = msgdata
     #request=Protocol.REQUEST_PACKET()
     request.delay_tick = Utils.gettickcount()
     #logger.debug("Worker|PrefetchWeather,key:%s",request.request_key)
     if not request.request_key:
         logger.error("Worker|invalid requestKey")
         return
     data = ""
     if "TEST" == request.request_type:
         data = DataSource.get_weather_data(request.request_key)
     else:
         data = DataSource.get_enc_weather_data(request.request_key)
     request.process_tick = Utils.gettickcount()
     result = Protocol.RESPONSE_PACKET()
     result.copyHeader(request)
     result.data = data
     msgnode = (fileno, sessionid, msgid, result)
     MsgPipe.FeedbackPipe.push(msgnode)
     pass