コード例 #1
0
ファイル: EventStoreIndex.cs プロジェクト: youraregood/Cronus
        public void Index(AggregateCommit aggregateCommit)
        {
            List <IndexRecord> indexRecordsBatch = new List <IndexRecord>();

            foreach (var @event in aggregateCommit.Events)
            {
                string eventTypeId = @event.Unwrap().GetType().GetContractId();
                var    record      = new IndexRecord(eventTypeId, aggregateCommit.AggregateRootId);
                indexRecordsBatch.Add(record);
            }

            indexStore.Apend(indexRecordsBatch);
        }
コード例 #2
0
ファイル: EventStoreIndex.cs プロジェクト: randyammar/Cronus
        public bool Rebuild(Func <IEnumerable <IndexRecord> > indexRecords)
        {
            if (Prepare())
            {
                indexStore.Apend(indexRecords());
                Complete();
            }

            return(false);
        }