Browse Source

*** empty log message ***

Jesse Schell 25 years ago
parent
commit
3dbb4bd24a
1 changed files with 9 additions and 0 deletions
  1. 9 0
      direct/src/distributed/ClientRepository.py

+ 9 - 0
direct/src/distributed/ClientRepository.py

@@ -70,6 +70,7 @@ class ClientRepository(DirectObject.DirectObject):
         return Task.cont
         return Task.cont
 
 
     def readerPollOnce(self):
     def readerPollOnce(self):
+        self.ensureValidConnection()
         availGetVal = self.qcr.dataAvailable()
         availGetVal = self.qcr.dataAvailable()
         if availGetVal:
         if availGetVal:
             #print "Client: Incoming message!"
             #print "Client: Incoming message!"
@@ -81,6 +82,14 @@ class ClientRepository(DirectObject.DirectObject):
                 ClientRepository.notify.warning("getData returned false")
                 ClientRepository.notify.warning("getData returned false")
         return availGetVal
         return availGetVal
 
 
+    def ensureValidConnection(self):
+        # Was the connection reset?
+        if self.qcm.resetConnectionAvailable():
+            resetConnectionPointer = PointerToConnection()
+            if self.qcm.getResetConnection(resetConnectionPointer):
+                self.fsm.request("noConnection")
+        return None
+
     def handleDatagram(self, datagram):
     def handleDatagram(self, datagram):
         # This class is meant to be pure virtual, and any classes that
         # This class is meant to be pure virtual, and any classes that
         # inherit from it need to make their own handleDatagram method
         # inherit from it need to make their own handleDatagram method