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;
}
}