public async Task <IIngestEvent[]> GetStoredEvents() { var identifiers = await _componentStagingStore.GetAvailableIdentifiersAsync(); var events = await Task.WhenAll(identifiers.Select(async id => { var item = await _componentStagingStore.GetItemAsync(id).ConfigureAwait(false); return(item.ReadSerializedEvent()); })).ConfigureAwait(false); return(events.OrderBy(e => e.Order).ToArray()); }
public async Task InitializeCache() { var storedItems = await _componentStagingStore.GetAvailableIdentifiersAsync().ConfigureAwait(false); foreach (var itemId in storedItems) { using (var itemStream = await _componentStagingStore.GetItemAsync(itemId).ConfigureAwait(false)) { using (var memoryStream = new MemoryStream()) { await itemStream.CopyToAsync(memoryStream).ConfigureAwait(false); _cache.Add(itemId, memoryStream.GetBuffer()); } } } }