Ejemplo n.º 1
0
 public static void SerializeStreamData(IStreamWriter stream, StreamDataCommand command)
 {
     ChannelIdSerializer.SerializeChannelId(stream, command.Channel);
     StreamOffsetSerializer.SerializeStreamOffset(stream, command.Offset);
     stream.WriteBool(command.IsAtEndPosition);
     stream.WriteLength((ushort)command.Payload.Length);
     stream.WriteOctets(command.Payload);
 }
Ejemplo n.º 2
0
        public void SendCommand(ushort streamId, Command command)
        {
            var isAtEndPosition = true;
            var offset          = new StreamOffset(0);
            var channel         = new ChannelID(streamId);

            var commandPayload = command.Stream.Close();

            var commandStream = CreateStreamInternal();

            commandStream.WriteLength((ushort)(commandPayload.Length + 1));
            commandStream.WriteUint8(command.CommandId);
            commandStream.WriteOctets(commandPayload);
            var wrappedCommandPayload = commandStream.Close();

            var streamData = new StreamDataCommand(channel, wrappedCommandPayload, isAtEndPosition, offset);

            var streamDataStream = CreateStream(Commands.StreamData);

            StreamDataSerializer.SerializeStreamData(streamDataStream, streamData);

            SendPacket(streamDataStream);
        }