private static bool TryParseMessageData()

in sdk/clients/protobuf-client/csharp/src/WebPubSubProtobufProtocolHelper.cs [124:149]


    private static bool TryParseMessageData(MessageData data, out WebPubSubDataType type, out BinaryData? binaryData)
    {
        switch (data.DataCase)
        {
            case MessageData.DataOneofCase.TextData:
                type = WebPubSubDataType.Text;
                binaryData = BinaryData.FromString(data.TextData);
                return true;
            case MessageData.DataOneofCase.JsonData:
                type = WebPubSubDataType.Json;
                binaryData = BinaryData.FromString(data.JsonData);
                return true;
            case MessageData.DataOneofCase.BinaryData:
                type = WebPubSubDataType.Binary;
                binaryData = BinaryData.FromBytes(data.BinaryData.ToArray());
                return true;
            case MessageData.DataOneofCase.ProtobufData:
                type = WebPubSubDataType.Protobuf;
                binaryData = BinaryData.FromBytes(data.ProtobufData.ToByteArray());
                return true;
            default:
                type = default;
                binaryData = default;
                return false;
        }
    }