public IOffsetStorage <string> CreateOffsetStorage([NotNull] BladeId bladeId) { var offsetStorage = new InMemoryOffsetStorage <string>(); bladeOffsetStorages.Add(bladeId.BladeKey, offsetStorage); return(offsetStorage); }
public Blade(BladeId bladeId, IGlobalTimeProvider globalTimeProvider, IEventSource <TEvent, TOffset> eventSource, IOffsetStorage <TOffset> offsetStorage, IOffsetInterpreter <TOffset> offsetInterpreter, IEventConsumer <TEvent, TOffset> eventConsumer, ILog logger) { BladeId = bladeId; this.globalTimeProvider = globalTimeProvider; this.eventSource = eventSource; this.offsetStorage = offsetStorage; this.offsetInterpreter = offsetInterpreter; this.eventConsumer = eventConsumer; this.logger = logger.ForContext("DelayedEventFeed"); LogComponentsDescription(); offsetHolder = new OffsetHolder(offsetStorage, offsetInterpreter, this.logger); }