public IBatchContainer GetBatchContainer(ref CachedMessage cachedMessage) { //Deserialize payload var stream = new BinaryTokenStreamReader(cachedMessage.Payload); MemoryEventData eventData = (MemoryEventData)SerializationManager.Deserialize(stream); return(new MemoryBatchContainer(eventData, cachedMessage.SequenceNumber)); }
/// <summary> /// Enqueues an event data. If the current total count reaches the max limit. throws an exception. /// </summary> /// <param name="eventData"></param> /// <returns></returns> public Task Enqueue(MemoryEventData eventData) { if (eventQueue.Count >= maxEventCount) { throw new InvalidOperationException($"Can not enqueue since the count has reached its maximum of {maxEventCount}"); } eventQueue.Enqueue(eventData); return(TaskDone.Done); }
/// <summary> /// Enqueues an event data. If the current total count reaches the max limit. throws an exception. /// </summary> /// <param name="eventData"></param> /// <returns></returns> public Task Enqueue(MemoryEventData eventData) { if (eventQueue.Count >= maxEventCount) { throw new InvalidOperationException($"Can not enqueue since the count has reached its maximum of {maxEventCount}"); } eventQueue.Enqueue(eventData); return TaskDone.Done; }
internal static MemoryBatchContainer FromMemoryEventData <T>(MemoryEventData eventData, long sequenceId) { return(new MemoryBatchContainer(eventData, sequenceId)); }
internal static MemoryEventData ToMemoryEventData <T>(Guid streamGuid, String streamNamespace, IEnumerable <T> events, Dictionary <string, object> requestContext) { MemoryEventData eventData = new MemoryEventData(streamGuid, streamNamespace, events.Cast <object>().ToList(), requestContext); return(eventData); }
public MemoryBatchContainer(MemoryEventData eventData, long sequenceId) { this.EventData = eventData; this.realToken = new EventSequenceToken(sequenceId); }