예제 #1
0
        internal void ProcessAck(Message msg)
        {
            Ack   ack      = null;
            var   ds       = DataStorage.CreateForRead(msg.Body);
            int   bitField = ds.ReadInt32();
            short msgType  = ds.ReadInt16();

            lock (_ackPerMsgType) {
                if (_ackPerMsgType.ContainsKey(msgType))
                {
                    ack = _ackPerMsgType[msgType];
                }
            }
            if (ack != null)
            {
                ack.ProcessReceivedAckBitfield(bitField, msg.MessageId, msgType);
            }
        }