Tasks #1820

Remove "request" and "reply" components from scopes in rpc protocol

Added by J. Moringen over 7 years ago. Updated over 7 years ago.

Status:ResolvedStart date:03/22/2014
Priority:NormalDue date:
Assignee:J. Moringen% Done:

100%

Category:Specification
Target version:rsb-0.11

Description

  • Implementations
    • C++
    • Python
    • Java
    • Common Lisp
  • Documentation
    • Specification
    • News

Related issues

Precedes Robotics Service Bus - Feature #44: Implement basic introspection support Resolved 03/24/2014 03/24/2014
Precedes Robotics Service Bus - Enhancement #1757: Add intermediate results to request-reply pattern In Progress 03/24/2014

Associated revisions

Revision f9fe6f63
Added by J. Moringen over 7 years ago

Removed "request", "reply" scope components in specification-request-reply.rst

refs #1820

  • specification-request-reply.rst: removed "request", "reply" scope
    components from specification of listeners and informers implementing
    the request-reply communication protocol
  • news.rst: mention the change of the request-reply communication
    protocol; added a note about the incompatibility

Revision 00c8e025
Added by J. Moringen over 7 years ago

Removed "request", "reply" scope components in src/rsb/patterns/[Remote]Server.cpp

refs #1820

Do not use "request", "reply" scope components for informers and
listeners sending requests and replies. Instead, use a scope of the form

/SERVER-SCOPE/METHOD-NAME

for both, informers and listeners. Filter event based on methods to
distinguish request and reply events.

  • src/rsb/patterns/RemoteServer.cpp (RemoteServer::getMethodSet): do not
    insert "reply" and "request" scope components into scopes of created
    listeners and informers
  • src/rsb/patterns/Server.cpp (Server::registerMethod): similar

Based-on: patch by Johannes Wienke <>

Revision 254f4f2d
Added by J. Moringen over 7 years ago

Removed "request","reply" scope components in rsb/patterns/__init__.py

refs #1820

Do not add "request" and "reply" scope components when constructing the
listeners and informers implementing the request-reply communication
protocol.

  • rsb/patterns/__init__.py (LocalMethod.makeListener): pass method's
    scope to listener without adding "request" component
    (LocalMethod.makeInformer): similar for "reply" component
    (RemoteMethod.makeListener): similar
    (RemoteMethod.makeInformer): similar

Revision 65eeb206
Added by J. Moringen over 7 years ago

Removed "request", "reply" scope components in src/rsb/patterns/Method.java

refs #1820

  • src/rsb/patterns/Method.java (Method.Method): removed "request",
    "reply" components form constructed requestScope and replyScope values

Revision 3b23a258
Added by J. Moringen over 7 years ago

Removed "request","reply" scope components in src/patterns/request-reply/*.lisp

fixes #1820

Removed "request","reply" scope components form listeners and informers
used to implement the request-reply communication pattern. This is
1) more convenient in some cases
2) possible because request and reply events are distinguished based on
their method fields

  • src/patterns/request-reply/server.lisp (define-lazy-creation-method):
    removed scope parameter; use method's scope for informers and
    listeners; adapted documentation string accordingly
    (%make-scope): removed; no longer needed
  • src/patterns/request-reply/local-server.lisp (define-lazy-creation-method):
    removed scope argument
  • src/patterns/request-reply/remote-server.lisp (define-lazy-creation-method):
    likewise

Revision d8736749
Added by J. Moringen over 7 years ago

Adapted to changed request-reply scopes in formatting/util.lisp

refs #1820

  • formatting/util.lisp (format-method): adapted to changed request-reply
    scopes

History

#1 Updated by J. Moringen over 7 years ago

  • Status changed from New to In Progress
  • % Done changed from 0 to 30

#2 Updated by J. Moringen over 7 years ago

  • Status changed from In Progress to Resolved
  • % Done changed from 30 to 100

Applied in changeset rsb-cl|commit:3b23a25879df1ba707b0cb7de2c4f1fceef06f1e.

Also available in: Atom PDF