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 = {}
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'