Well this is interesting.  The fixes to Selector.py that I detailed
make it work with the docstring descrition of removeReader and
friends.  However, they break TCPClient and ConnectedSocketAdapter
which are using the previously as implemented behavior which is
different than the docstring.

At first I started to go down the road of making them match the
Selector.py docstring.  But now I'm starting to think that the
previously implemented behavior was correct and the docstring was
wrong.  So in Selector.py, I've gone back to:

            if isinstance(message, removeReader):
                selectable = message.object
                self.removeLinks(selectable, meta[READERS], readers)
            if isinstance(message, removeWriter):
                selectable = message.object
                self.removeLinks(selectable, meta[WRITERS], writers)
            if isinstance(message, removeExceptional):
                selectable = message.object
                self.removeLinks(selectable, meta[EXCEPTIONALS],
exceptionals)

And I've changed the end of the while loops in UDP_ng to:

        self.send(removeWriter(self, self.sock), "_selectorSignal")
        self.send(removeReader(self, self.sock), "_selectorSignal")
        yield 1
        self.sock.close()

And I've updated the Selector.py docstring to say:
Deregister by sending on of the following messages to the "notify"
inbox of
Selector:

* Kamaelia.KamaeliaIpc.removeReader(caller, descriptor)
* Kamaelia.KamaeliaIpc.removeWriter(caller, descriptor)
* Kamaelia.KamaeliaIpc.removeExceptional(caller, descriptor)

Now both TCP and UDP are happily working.

--Steve

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"kamaelia" group.
To post to this group, send email to kamaelia@googlegroups.com
To unsubscribe from this group, send email to 
kamaelia+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/kamaelia?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to