WebSocketLink constructor
WebSocketLink(
- String? uri, {
- ChannelGenerator? channelGenerator,
- bool autoReconnect = true,
- Duration reconnectInterval = const Duration(seconds: 10),
- RequestSerializer serializer = const RequestSerializer(),
- ResponseParser parser = const ResponseParser(),
- GraphQLSocketMessageEncoder graphQLSocketMessageEncoder = _defaultGraphQLSocketMessageEncoder,
- GraphQLSocketMessageDecoder graphQLSocketMessageDecoder = _defaultGraphQLSocketMessageDecoder,
- dynamic initialPayload,
- Duration? inactivityTimeout,
Initialize the WebSocketLink with a uri
.
You can customize the headers & protocols by passing channelGenerator
,
if channelGenerator
is passed, uri
must be null.
channelGenerator
is a function that returns WebSocketChannel
or IOWebSocketChannel
or HtmlWebSocketChannel
.
You can also pass custom RequestSerializer serializer
& ResponseParser parser
.
Also initialPayload to be passed with the first request to the GraphQL server.
Implementation
WebSocketLink(
String? uri, {
ChannelGenerator? channelGenerator,
this.autoReconnect = true,
this.reconnectInterval = const Duration(seconds: 10),
this.serializer = const RequestSerializer(),
this.parser = const ResponseParser(),
this.graphQLSocketMessageEncoder = _defaultGraphQLSocketMessageEncoder,
this.graphQLSocketMessageDecoder = _defaultGraphQLSocketMessageDecoder,
this.initialPayload,
this.inactivityTimeout,
}) : assert((uri == null && channelGenerator != null) ||
(uri != null && channelGenerator == null)) {
_channelGenerator =
channelGenerator ?? () => WebSocketChannel.connect(Uri.parse(uri!));
}