diff options
| author | Aidan Skinner <aidan@apache.org> | 2008-04-08 22:46:06 +0000 |
|---|---|---|
| committer | Aidan Skinner <aidan@apache.org> | 2008-04-08 22:46:06 +0000 |
| commit | ab2adaf558274f39174caf62e271b15b053d6e0a (patch) | |
| tree | 9d462e745dac2c22c09a9c006cc180c50f27f148 /RC3/python/qpid/delegate.py | |
| parent | adb335a3052a59c8c3e465ada38853cea452b23d (diff) | |
| download | qpid-python-ab2adaf558274f39174caf62e271b15b053d6e0a.tar.gz | |
Nuke
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/tags/M2.1@646113 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'RC3/python/qpid/delegate.py')
| -rw-r--r-- | RC3/python/qpid/delegate.py | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/RC3/python/qpid/delegate.py b/RC3/python/qpid/delegate.py deleted file mode 100644 index 035bb3c476..0000000000 --- a/RC3/python/qpid/delegate.py +++ /dev/null @@ -1,54 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -""" -Delegate implementation intended for use with the peer module. -""" - -import threading, inspect -from spec import pythonize - -class Delegate: - - def __init__(self): - self.handlers = {} - self.invokers = {} - # initialize all the mixins - self.invoke_all("init") - - def invoke_all(self, meth, *args, **kwargs): - for cls in inspect.getmro(self.__class__): - if hasattr(cls, meth): - getattr(cls, meth)(self, *args, **kwargs) - - def dispatch(self, channel, message): - method = message.method - - try: - handler = self.handlers[method] - except KeyError: - name = "%s_%s" % (pythonize(method.klass.name), - pythonize(method.name)) - handler = getattr(self, name) - self.handlers[method] = handler - - return handler(channel, message) - - def close(self, reason): - self.invoke_all("close", reason) |
