Tasks #565
Let RPC mechanism use cause vector
Status: | Resolved | Start date: | 09/09/2011 | |
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | J. Moringen | % Done: | 100% | |
Category: | Protocol | |||
Target version: | 0.5 |
Description
Now that there is a formal way to reference what caused on event, let the RPC reply event reference their request events.
Has to be implemented in- C++ ✓
- Java ✓
- Python ✓
- Common Lisp ✓
- Logger ✓
Related issues
Associated revisions
Use cause vectors in src/patterns/{local,remote}-server.lisp
refs #565
refs #565
- src/patterns/local-server.lisp (call t local-method event): use
`event-id/opaque' to obtain a cause event id; add it to the reply
event - src/patterns/remote-server.lisp
(setf %method-listener :after t remote-method): use
`event-id/opaque' and cause mechanism instead of `event-id' and
meta-data mechanism to indicate associated request
(call t remote-method event): extract the first cause instead of a
meta-data item from the reply event; use `%event-id->key' to convert
event id to suitable keys
(%event-id->key): new function; helper function for converting event
ids to keys suitable for hash-table lookup
Use cause vectors in src/rsb/patterns/{AbstractRemote,Local}Method.java
refs #565
refs #565
- src/rsb/patterns/AbstractRemoteMethod.java: manage in-progress call
using the event ids of the request events and the causes of the
reply events - src/rsb/patterns/LocalMethod.java: when creating replies, use the id
of the request event as cause
Use cause vectors in src/rsb/patterns/[Remote]Server.cpp
refs #565
refs #565
- src/rsb/patterns/RemoteServer.cpp: manage in-progress calls using
event ids of request events and cause event ids of reply events - src/rsb/patterns/Server.cpp: use event ids of request events as
cause in reply events
Use cause vectors for RPC communication in rsb/patterns/__init__.py
refs #565
refs #565
- rsb/patterns/__init__.py: in RemoteMethod, use event ids of request
events and cause event ids of reply events to track in-progress
method calls; in LocalMethod, add event ids of request events as
causes of reply events
Adapted call-id column in formatting/columns.lisp
fixes #565
fixes #565
- formatting/columns.lisp (define-simple-column :call-id): print uuid
derived from first cause event id
History
#1 Updated by J. Wienke over 12 years ago
- Subject changed from Let RPC mechanism use caus vector to Let RPC mechanism use cause vector
#2 Updated by J. Wienke over 12 years ago
- Target version changed from rsb-0.10 to 0.5
#3 Updated by J. Wienke over 12 years ago
Jan, for this to work we should think of a CauseFilter?
#4 Updated by J. Wienke over 12 years ago
CauseFilter is not useful here, because the filter criterion changes over time.
#5 Updated by J. Moringen over 12 years ago
- Category set to Protocol
- Status changed from New to In Progress
#6 Updated by J. Moringen over 12 years ago
- Description updated (diff)
#7 Updated by J. Moringen over 12 years ago
- Status changed from In Progress to Resolved
- % Done changed from 0 to 100
Applied in changeset r2929.
#8 Updated by J. Moringen over 12 years ago
- Description updated (diff)