Peer class
A JSON-RPC 2.0 client and server.
This supports bidirectional peer-to-peer communication with another JSON-RPC 2.0 endpoint. It sends both requests and responses across the same communication channel and expects to connect to a peer that does the same.
Constructors
-
Peer(StreamChannel<
String> channel, {ErrorCallback? onUnhandledError, bool strictProtocolChecks = true}) -
Creates a Peer that communicates over
channel
. - Peer.withoutJson(StreamChannel _channel, {ErrorCallback? onUnhandledError, bool strictProtocolChecks = true})
-
Creates a Peer that communicates using decoded messages over
channel
.
Properties
- done → Future
-
Returns a Future that completes when the underlying connection is
closed.
latefinal
- hashCode → int
-
The hash code for this object.
no setterinherited
- isClosed → bool
-
Whether the underlying connection is closed.
no setteroverride
- onUnhandledError → ErrorCallback?
-
A callback that is fired on unhandled exceptions.
no setteroverride
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- strictProtocolChecks → bool
-
Whether to strictly enforce the JSON-RPC 2.0 specification for received
messages.
no setteroverride
Methods
-
close(
) → Future -
Closes the underlying connection.
override
-
listen(
) → Future -
Starts listening to the underlying stream.
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
registerFallback(
dynamic callback(Parameters parameters)) → void -
Registers a fallback method on this server.
override
-
registerMethod(
String name, Function callback) → void -
Registers a method named
name
on this server.override -
sendNotification(
String method, [dynamic parameters]) → void -
Sends a JSON-RPC 2 request to invoke the given
method
without expecting a response.override -
sendRequest(
String method, [dynamic parameters, int? id]) → Future -
Sends a JSON-RPC 2 request to invoke the given
method
.override -
toString(
) → String -
A string representation of this object.
inherited
-
withBatch(
dynamic callback()) → void -
Runs
callback
and batches any requests sent until it returns.override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited