summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/event.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sqlalchemy/event.py')
-rw-r--r--lib/sqlalchemy/event.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/sqlalchemy/event.py b/lib/sqlalchemy/event.py
index 5fcda0a65..375023e28 100644
--- a/lib/sqlalchemy/event.py
+++ b/lib/sqlalchemy/event.py
@@ -13,7 +13,7 @@ from sqlalchemy import util
def listen(fn, identifier, target, *args):
"""Listen for events, passing to fn."""
- getattr(target.events, identifier).append(fn, target)
+ target.events.listen(target, fn, identifier)
NO_RESULT = util.symbol('no_result')
@@ -30,6 +30,10 @@ class Events(object):
def __init__(self, parent_cls):
self.parent_cls = parent_cls
+ @classmethod
+ def listen(cls, target, fn, identifier):
+ getattr(target.events, identifier).append(fn, target)
+
class _ExecEvent(object):
def exec_and_clear(self, *args, **kw):