private HubMessage CreateHubStreamItemMessage(ReadOnlySpan <byte> protobufMessage, object[] arguments) { var protobufStreamItemMessage = new StreamItemMessageProtobuf(); protobufStreamItemMessage.MergeFrom(protobufMessage.ToArray()); return(new StreamItemMessage(protobufStreamItemMessage.InvocationId, arguments.FirstOrDefault()) { Headers = protobufStreamItemMessage.Headers }); }
private void WriteItemMessage(StreamItemMessage streamItemMessage, IBufferWriter <byte> output) { var protobufStreamItemMessage = new StreamItemMessageProtobuf { InvocationId = streamItemMessage.InvocationId }; if (streamItemMessage.Headers != null) { protobufStreamItemMessage.Headers.Add(streamItemMessage.Headers); } var item = _argumentSerializer.SerializeArgument(streamItemMessage.Item); var packedMessage = MessageDescriptor.PackMessage(HubProtocolConstants.StreamItemMessageType, protobufStreamItemMessage.ToByteArray(), new List <ArgumentDescriptor> { item }); output.Write(packedMessage); }