On 02:38 am, elihusma...@gmail.com wrote:
On Wed, Mar 31, 2010 at 5:39 PM, <exar...@twistedmatrix.com> wrote:
On 04:10 am, elihusma...@gmail.com wrote:
On Tue, Mar 30, 2010 at 6:42 PM, Itamar Turner-Trauring
<ita...@itamarst.org> wrote:
Greetings,
I am new to this list and twisted. �I have worked with some systems
similar to twisted, notably Apache MINA. I am trying to find out
how
to set up my server to support sessions for multiple clients.
Right
now I am simply developing a telnet-like application to learn
twisted
but cannot figure out how to manage sessions for the remote
clients.
Each Protocol instance stays alive for the lifetime of the
connection
it
is matched to (via the transport). So just store attributes on the
Protocol instance.
I figured as much that twisted supported the notion of sessions. �Are
there any examples that show me how to access them and
add/remove/update attributes in the session?
Protocol instances are normal Python objects. You can use normal
Python
attributes on them in the normal way. �For example:
� �from twisted.internet.protocol import Protocol
� �class Counter(Protocol):
� � � �"""
Keep track of how many times data is delivered over a
connection.
� � � �"""
� � � �def connectionMade(self):
� � � � � �self.count = 0
� � � �def dataReceived(self, bytes):
� � � � � �self.count += 1
Thanks for the help, but how do I access the session? What would be
the method call to put the data into a session for instance?
The protocol instance *is* the session (or, as I would normally say "the
protocol instance has a one to one relationship with a connection", but
I think that's what you mean when you say "the session"). You can
define whichever methods and attributes you want.
It's a regular Python object. All the regular stuff you know about
Python objects applies.
Jean-Paul
_______________________________________________
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python