writeMessage method

  1. @override
String? writeMessage(
  1. HubMessage message
)
override

Writes the specified HubMessage to a string and returns it.

Implementation

@override
String? writeMessage(HubMessage message) {
  switch (message.type) {
    case MessageType.undefined:
      break;
    case MessageType.invocation:
      return TextMessageFormat.write(
          json.encode((message as InvocationMessage).toJson()));
    case MessageType.streamItem:
      return TextMessageFormat.write(
          json.encode((message as StreamItemMessage).toJson()));
    case MessageType.completion:
      return TextMessageFormat.write(
          json.encode((message as CompletionMessage).toJson()));
    case MessageType.streamInvocation:
      return TextMessageFormat.write(
          json.encode((message as StreamInvocationMessage).toJson()));
    case MessageType.cancelInvocation:
      return TextMessageFormat.write(
          json.encode((message as CancelInvocationMessage).toJson()));
    case MessageType.ping:
      return TextMessageFormat.write(
          json.encode((message as PingMessage).toJson()));
    case MessageType.close:
      return TextMessageFormat.write(
          json.encode((message as CloseMessage).toJson()));
    default:
      break;
  }
  return null;
}