File tree Expand file tree Collapse file tree 2 files changed +29
-6
lines changed Expand file tree Collapse file tree 2 files changed +29
-6
lines changed Original file line number Diff line number Diff line change @@ -39,6 +39,14 @@ To handle event on client side, use following code:
39
39
However, take care - if method signature does not match (missing parameters, extra
40
40
parameters, etc), your connection will blow up and self destruct.
41
41
42
+ ``event `` decorator can be used without parameter and it will use event handler name
43
+ in this case::
44
+
45
+ class MyConnection(SocketConnection):
46
+ @event
47
+ def hello(self, name):
48
+ print 'Hello %s' % name
49
+
42
50
If you don't like this event handling approach, just override ``on_event `` in your
43
51
socket connection class and handle them by yourself:
44
52
::
Original file line number Diff line number Diff line change 26
26
from tornadio2 import proto
27
27
28
28
29
- def event (name_or_f ):
30
- """Event handler decorator."""
31
- if callable (name_or_f ):
32
- name_or_f ._event_name = name_or_f .__name__
33
- return name_or_f
29
+ def event (name_or_func ):
30
+ """Event handler decorator.
31
+
32
+ Can be used with event name or will automatically use function name
33
+ if not provided::
34
+
35
+ # Will handle 'foo' event
36
+ @event('foo')
37
+ def bar(self):
38
+ pass
39
+
40
+ # Will handle 'baz' event
41
+ @event
42
+ def baz(self):
43
+ pass
44
+ """
45
+
46
+ if callable (name_or_func ):
47
+ name_or_func ._event_name = name_or_func .__name__
48
+ return name_or_func
34
49
35
50
def handler (f ):
36
- f ._event_name = name_or_f
51
+ f ._event_name = name_or_func
37
52
return f
38
53
39
54
return handler
You can’t perform that action at this time.
0 commit comments