コード例 #1
0
        void EventAppeared(EventStoreCatchUpSubscription sub, ResolvedEvent evnt)
        {
            if (evnt.OriginalStreamId.StartsWith("$"))
            {
                return;
            }

            dynamic ev = _adapter.TryGetDomainEvent(evnt);

            if (ev == null)
            {
                return;
            }

            try
            {
                lock (this)
                {
                    Dispatch(ev);
                    _succeded++;
                    _checkPoint      = evnt.OriginalPosition.GetValueOrDefault();
                    _lastEventNumber = evnt.OriginalEventNumber;
                    if (ev.Timestamp > LastUpdate)
                    {
                        LastUpdate = ev.Timestamp;
                    }
                }
            }
            catch (Exception)
            {
                Debugger.Break();
            }
        }