예제 #1
0
 def do(self):
   rClient = dMVC.getRClient()
   self._event = dMVC.clientMaterialize(self._event, rClient)
   utils.statEventTriggered.addEvent(self)
   suscription = rClient.getRemoteSuscriptionByID(self._suscriptionID)
   if suscription:
     suscription[1](self._event)
예제 #2
0
 def subscribeListEvent(self, eventList):
     rClient = dMVC.getRClient()
     subscriptionList = []
     for event in eventList:
         suscription = [event[0], event[1], self]
         suscriptionID = rClient.registerRemoteSuscription(suscription)
         subscriptionList.append([event[0], suscriptionID])
     rClient.sendCommand(
         remotecommand.REventListSuscriber(self.__modelID,
                                           subscriptionList))
예제 #3
0
 def subscribeEvent(self, eventType, method):
     """ Indica la accion a realizar ante un evento.
 eventType: tipo de evento.
 method: metodo que se lanzara.
 """
     rClient = dMVC.getRClient()
     suscription = [eventType, method, self]
     suscriptionID = rClient.registerRemoteSuscription(suscription)
     rClient.sendCommand(
         remotecommand.REventSuscriber(self.__modelID, eventType,
                                       suscriptionID))
예제 #4
0
 def __call__(self, *args):
     initTime = utils.statClient.initClientCount()
     rClient = dMVC.getRClient()
     executer = remotecommand.RExecuterCommand(self._modelID,
                                               self._methodName, args)
     rClient.sendCommand(executer)
     answerer = rClient.waitForExecutionAnswerer(executer)
     result = answerer.do()
     utils.statClient.stopClientCount(
         initTime, (self._className, self._modelID, self._methodName))
     return result
예제 #5
0
 def unsubscribeEventListObserver(self, observers, eventType=None):
     rClient = dMVC.getRClient()
     unsubscribeList = []
     for observer in observers:
         subscriptionIDs = rClient.unsubscribeEventObserver(
             observer, eventType, observer.getModel())
         subscriptionData = [
             observer.getModel().getModelID(), subscriptionIDs
         ]
         unsubscribeList.append(subscriptionData)
     rClient.sendCommand(
         remotecommand.REventListUnsuscriber(self.__modelID,
                                             unsubscribeList))
예제 #6
0
 def subscribeChildListEvent(self, childListEvent):
     rClient = dMVC.getRClient()
     subscriptionList = []
     for event in childListEvent:
         remoteModel = event[0]
         eventType = event[1]
         method = event[2]
         suscription = [eventType, method, remoteModel]
         suscriptionID = rClient.registerRemoteSuscription(suscription)
         subscriptionList.append(
             [event[1], suscriptionID,
              remoteModel.getModelID()])
     rClient.sendCommand(
         remotecommand.REventChildListSuscriber(self.__modelID,
                                                subscriptionList))
예제 #7
0
 def do(self):  
   rClient = dMVC.getRClient()
   return dMVC.clientMaterialize(self._result, rClient)
예제 #8
0
 def async (self, method, callback, *args):
     asyncMethod = remotecommand.RExecuterCommand(method._modelID,
                                                  method._methodName, args)
     rClient = dMVC.getRClient()
     #rClient.sendAsyncCommand(asyncMethod, callback)
     thread.start_new(rClient.sendAsyncCommand, (asyncMethod, callback))
예제 #9
0
 def unsubscribeEventMethod(self, method, eventType=None):
     rClient = dMVC.getRClient()
     subscriptionIDs = rClient.unsubscribeEventMethod(
         method, eventType, self)
     rClient.sendCommand(
         remotecommand.REventUnsuscriber(self.__modelID, subscriptionIDs))