push method

String? push(
  1. Message message
)

Push out a message if the socket is connected.

If the socket is not connected, the message gets enqueued within a local buffer, and sent out when a connection is next established.

Implementation

String? push(Message message) {
  void callback() {
    encode(message.toJson(), (result) => conn?.sink.add(result));
  }

  log('push', '${message.topic} ${message.event} (${message.ref})',
      message.payload);

  if (isConnected) {
    callback();
  } else {
    sendBuffer.add(callback);
  }
  return null;
}