コード例 #1
0
 def __init__(self, host, conf):
     Actor.__init__(self)
     momip = conf[IP]
     momport = conf[PORT]
     self.namespace = conf[NAMESPACE]
     self.session = Session(momip,momport)
     self.host = host
     self.name = conf[NAME]
     self.session.subs(self,self.namespace,{'selector':"HOST='%s'"%self.name})
     self.callback = {}
コード例 #2
0
class MOMDispatcher(Actor):
                    #,ConnectionListener):

    def __init__(self, host, conf):
        Actor.__init__(self)
        momip = conf[IP]
        momport = conf[PORT]
        self.namespace = conf[NAMESPACE]
        self.session = Session(momip,momport)
        self.host = host
        self.name = conf[NAME]
        self.session.subs(self,self.namespace,{'selector':"HOST='%s'"%self.name})
        self.callback = {}

        
    def receive(self,msg):
        if msg[MODE]==SYNC and msg[TYPE]==CALL:
            self.callback[msg[RPC_ID]]= msg[SRC]
            del msg[SRC]
        parsed_msg = cPickle.dumps(msg)
        try:
            self.session.pub(parsed_msg,self.namespace,{'HOST':msg[TARGET],SRC:self.name})
        except Exception,e:
            print e,'MOM ERROR'