예제 #1
0
        // IReceivedMessageProcessor
        public void ProcessMessages(ReceivedMessageList messageList)
        {
            using (_statuses.CreateUpdateSuppressor())
                using (_selectedIdStatus != null ? _selectedIdStatus.GetDataStatuses().CreateUpdateSuppressor() : null)
                {
                    foreach (var message in messageList)
                    {
                        var canMessage = message.CanMessage;
                        if (canMessage == null)
                        {
                            continue;
                        }

                        canMessage.ApplyMask(_config.DataMask);

                        CanIdStatus status = _statuses.GetStatus(canMessage.Id);
                        status.ProcessMessage(canMessage);
                    }
                }
        }