diff options
| author | Rafael H. Schloming <rhs@apache.org> | 2008-05-13 19:16:15 +0000 |
|---|---|---|
| committer | Rafael H. Schloming <rhs@apache.org> | 2008-05-13 19:16:15 +0000 |
| commit | 6df0526d0777fa4ab7d94b01bce87b6199085d51 (patch) | |
| tree | 6faab7b8bc5d2164054057d5fe48aac09c70fef8 /python/qpid | |
| parent | d499b75a390cbb6a30206f384dd460e642ab7552 (diff) | |
| download | qpid-python-6df0526d0777fa4ab7d94b01bce87b6199085d51.tar.gz | |
QPID-954: added fallbacks and fixes for running the python client on python 2.3
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@655976 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'python/qpid')
| -rw-r--r-- | python/qpid/compat.py | 28 | ||||
| -rw-r--r-- | python/qpid/connection08.py | 10 |
2 files changed, 35 insertions, 3 deletions
diff --git a/python/qpid/compat.py b/python/qpid/compat.py new file mode 100644 index 0000000000..26f60fb8aa --- /dev/null +++ b/python/qpid/compat.py @@ -0,0 +1,28 @@ +# +# 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. +# + +try: + set = set +except NameError: + from sets import Set as set + +try: + from socket import SHUT_RDWR +except ImportError: + SHUT_RDWR = 2 diff --git a/python/qpid/connection08.py b/python/qpid/connection08.py index eafad7067a..8f2eef4770 100644 --- a/python/qpid/connection08.py +++ b/python/qpid/connection08.py @@ -27,6 +27,7 @@ import socket, codec, logging, qpid from cStringIO import StringIO from spec import load from codec import EOF +from compat import SHUT_RDWR class SockIO: @@ -54,7 +55,8 @@ class SockIO: pass def close(self): - self.sock.shutdown(socket.SHUT_RDWR) + self.sock.shutdown(SHUT_RDWR) + self.sock.close() def connect(host, port): sock = socket.socket() @@ -407,7 +409,6 @@ class Header(Frame): else: return Header.decode_legacy(spec, c, size) - @staticmethod def decode_structs(spec, c, size): structs = [] start = c.nread @@ -425,7 +426,8 @@ class Header(Frame): length = s.get(f.name) return Header(None, 0, length, props) - @staticmethod + decode_structs = staticmethod(decode_structs) + def decode_legacy(spec, c, size): klass = spec.classes.byid[c.decode_short()] weight = c.decode_short() @@ -453,6 +455,8 @@ class Header(Frame): properties[str(f.name)] = c.decode(f.type) return Header(klass, weight, size, properties) + decode_legacy = staticmethod(decode_legacy) + def __str__(self): return "%s %s %s %s" % (self.klass, self.weight, self.size, self.properties) |
