diff options
author | Rajith Muditha Attapattu <rajith@apache.org> | 2007-10-31 18:27:14 +0000 |
---|---|---|
committer | Rajith Muditha Attapattu <rajith@apache.org> | 2007-10-31 18:27:14 +0000 |
commit | e0651286d49afecdf9fc7daa55f2f5d48c7d33b0 (patch) | |
tree | fdbb7cff7d2e33fccc9aa0f37df36f9d227ad456 /Final/python/qpid/delegate.py | |
parent | 2e038831856f62751d040dd266cfacc46e0346a2 (diff) | |
download | qpid-python-e0651286d49afecdf9fc7daa55f2f5d48c7d33b0.tar.gz |
Invalid Tag
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/tags/M2@590778 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'Final/python/qpid/delegate.py')
-rw-r--r-- | Final/python/qpid/delegate.py | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/Final/python/qpid/delegate.py b/Final/python/qpid/delegate.py deleted file mode 100644 index 035bb3c476..0000000000 --- a/Final/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) |