Example #1
0
 public DeviceListDtoClient Enqueue(EnqueueMessagesDtoClient enqueueMessages)
 {
     return(new DeviceListDtoClient
     {
         DeviceIds =
             _persistentStorage.Enqueue(enqueueMessages.Messages.ConvertAll(m => new EnqueueItem
         {
             DeviceId = m.DeviceId,
             Payload = m.Payload,
             Timestamp = m.TimeStamp,
             SenderDeviceId = m.SenderDeviceId
         })).Select(r => r.Id).ToList()
     });
 }
Example #2
0
        public DeviceListDto Enqueue(EnqueueMessagesDto messages)
        {
            EnsureSingleDevice(messages.Messages.Select(m => m.DeviceId));

            var enqueueItems = ItemConverters.ToEnqueueItemList(messages);

            var deviceEntries = _persistentStorage.Enqueue(enqueueItems);

            var cacheItems = ItemConverters.ToCacheItems(deviceEntries, enqueueItems);

            _messageCache.Put(cacheItems);

            DeviceEntryRegistry.Instance.Merge(deviceEntries);

            return(ItemConverters.ToDeviceListDto(deviceEntries));
        }