public StreamDataCommand(ChannelID channel, byte[] payload, bool isAtEndPosition, StreamOffset offset) { this.channel = channel; this.payload = payload; this.offset = offset; this.isAtEndPosition = isAtEndPosition; }
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); }
public static void SerializeStreamOffset(IStreamWriter stream, StreamOffset offset) { stream.WriteUint32(offset.Raw); }