private void ParseData(byte[] data) { var reader = new PacketReader(data); var header = reader.ReadLong(); payload = reader.GetRest(); }
private bool ParseData(byte[] data) { var reader = new PacketReader(data); var header = reader.ReadLong(); var id = reader.ReadLong(); logger.Debug("ID: {0}", id); if (IsIncorrectId(id)) { return false; } this.id = id; var numberOfPacketInfo = reader.ReadByte(); var bits = new BitArray(new byte[] { numberOfPacketInfo }); totalNumberOfParts = GetTotalNumberOfPackets(bits); logger.Debug("TOTAL PARTS: {0}", totalNumberOfParts); var number = GetNumberOfPacket(bits); logger.Debug("NUMBER: {0}", number); if (number == 0) { var strangeNumberInFirstPacket = reader.ReadLong(); logger.Debug("Strange number: {0}", strangeNumberInFirstPacket); } var payloadPart = reader.GetRest(); parts.Add(new PacketPartData { Number = number, Data = payloadPart }); logger.Debug("END PART"); return true; }