diff options
| author | Gordon Sim <gsim@apache.org> | 2007-08-02 18:09:48 +0000 |
|---|---|---|
| committer | Gordon Sim <gsim@apache.org> | 2007-08-02 18:09:48 +0000 |
| commit | e512cef4ddb7e2e73bff17fe87915ce79f7da72d (patch) | |
| tree | 62c6e17cee16668943f3d7b1b70d6277ab2bb29e /qpid/python | |
| parent | eef9dc7de8ff5fdcbb605e59d87206eae746a56e (diff) | |
| download | qpid-python-e512cef4ddb7e2e73bff17fe87915ce79f7da72d.tar.gz | |
Some restructuring of the client code:
* Introduced three separate 'handlers' for the connection, channel and execution 'layers'.
* Support for asynchronous retrieval of response or completion status.
* Channel methods no longer included in execution layers command id count.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@562212 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/python')
| -rw-r--r-- | qpid/python/qpid/message.py | 2 | ||||
| -rw-r--r-- | qpid/python/qpid/peer.py | 9 | ||||
| -rw-r--r-- | qpid/python/qpid/spec.py | 3 |
3 files changed, 5 insertions, 9 deletions
diff --git a/qpid/python/qpid/message.py b/qpid/python/qpid/message.py index 970ab9d974..7e28b63037 100644 --- a/qpid/python/qpid/message.py +++ b/qpid/python/qpid/message.py @@ -26,7 +26,7 @@ class Message: self.frame = frame self.method = frame.method_type self.content = content - if self.method.klass.name != "execution": + if self.method.is_l4_command(): self.command_id = self.channel.incoming_completion.sequence.next() #print "allocated: ", self.command_id, "to ", self.method.klass.name, "_", self.method.name diff --git a/qpid/python/qpid/peer.py b/qpid/python/qpid/peer.py index bedc96895b..2861d51165 100644 --- a/qpid/python/qpid/peer.py +++ b/qpid/python/qpid/peer.py @@ -376,7 +376,7 @@ class OutgoingCompletion: def next_command(self, method): #the following test is a hack until the track/sub-channel is available - if method.klass.name != "execution": + if method.is_l4_command(): self.command_id = self.sequence.next() def reset(self): @@ -425,13 +425,6 @@ class IncomingCompletion: self.mark = 0 #id of last command of whose completion notification was sent to the other peer self.channel = channel - def next_id(self, method): - #the following test is a hack until the track/sub-channel is available - if method.klass.name != "execution": - return self.sequence.next() - else: - return 0 - def reset(self): self.sequence = Sequence(1) #reset counter diff --git a/qpid/python/qpid/spec.py b/qpid/python/qpid/spec.py index 09e7dc9d0b..9bbe709ed9 100644 --- a/qpid/python/qpid/spec.py +++ b/qpid/python/qpid/spec.py @@ -191,6 +191,9 @@ class Method(Metadata): self.docs = docs self.response = False + def is_l4_command(self): + return self.klass.name not in ["execution", "channel", "connection"] + def arguments(self, *args, **kwargs): nargs = len(args) + len(kwargs) maxargs = len(self.fields) |
