URIs¶
Transport-specific URLs¶
Syntax
[SCHEME:[//HOST[:PORT]]][PATH][?QUERY][#FRAGMENT]
Components of the URL are interpreted as follows:
SCHEME
- transport name (e.g
spread
) HOST
- transport-specific “host” option (e.g. host that runs the daemon for Spread transport)
PORT
- transport-specific “port” option (e.g. port on which daemon listens for Spread transport)
PATH
A scope which designates one of the following things
- A channel
- A participant
QUERY
- “freestyle” transport-specific options
FRAGMENT
- Not allowed when designating a channel
- ID of a participant otherwise
Note
While URLs in general allow specifying host and port components
without specifying a scheme (e.g. //myhost:1234
), this is not
allowed in the context of RSB.
Generic URIs¶
Syntax
rsb:[PATH][#FRAGMENT]
Warning
Generic URIs are not currently used and their potential semantics have not yet been specified.
Examples¶
The following examples demonstrate how to specify bus connections when creating participants:
`` ``
spread:
inprocess:
spread://localhost:5555
inprocess://someotherhost
Syntactically correct, but does not make sense.
spread:/foo/bar
spread:?maxfragmentsize=10000
spread:?maxfragmentsize=10000&tcpnodelay=yes
Likewise, but in addition with tcpnodelay option set toyes
.
//myhost:1234
Illegal because there is no scheme component.
Implementations¶
Language | File(s) |
---|---|
C++ | not yet implemented |
Java | not yet implemented |
Python | not yet implemented |
Common Lisp | /../rsb-cl/src/uris.lisp |