Esempio n. 1
0
        internal void DeleteAllEvents(int expectedVersion)
        {
            if (expectedVersion > 0 && expectedVersion != CurrentVersion)
            {
                throw new WrongExpectedVersionException(
                          ErrorMessages.AppendFailedWrongExpectedVersion(_streamId, expectedVersion));
            }

            foreach (var inMemorymessage in _messages)
            {
                _inMemoryAllStream.Remove(inMemorymessage);
            }
            _messages.Clear();
            _messagesById.Clear();
        }
        internal void Delete(int expectedVersion)
        {
            if (_isDeleted)
            {
                return;
            }

            if (expectedVersion > 0 && expectedVersion != _events.Last().StreamVersion)
            {
                throw new WrongExpectedVersionException(
                          Messages.AppendFailedWrongExpectedVersion(_streamId, expectedVersion));
            }

            foreach (var inMemoryStreamEvent in _events)
            {
                _inMemoryAllStream.Remove(inMemoryStreamEvent);
            }
            _events.Clear();
            _eventIds.Clear();
            _isDeleted = true;
        }