public void SetUp()
        {
            MongoFlatMapper.EnableFlatMapping(true);
            MongoDbTestConnectionProvider.ReadModelDb.Drop();

            var mngr = new IdentityManager(new CounterService(MongoDbTestConnectionProvider.ReadModelDb));
            mngr.RegisterIdentitiesFromAssembly(typeof(DocumentDescriptorId).Assembly);

            MongoFlatIdSerializerHelper.Initialize(mngr);

            EventStoreIdentityCustomBsonTypeMapper.Register<DocumentDescriptorId>();
            EventStoreIdentityCustomBsonTypeMapper.Register<DocumentId>();
            StringValueCustomBsonTypeMapper.Register<BlobId>();
            StringValueCustomBsonTypeMapper.Register<DocumentHandle>();
            StringValueCustomBsonTypeMapper.Register<FileHash>();

            _writer = new DocumentWriter(MongoDbTestConnectionProvider.ReadModelDb);
            var _documentDescriptorCollection = new MongoReaderForProjections<DocumentDescriptorReadModel, DocumentDescriptorId>
                (
                new MongoStorageFactory(MongoDbTestConnectionProvider.ReadModelDb, 
                    new RebuildContext(true)));
            var _documentDeletedCollection = new CollectionWrapper<DocumentDeletedReadModel, String>
               (
               new MongoStorageFactory(MongoDbTestConnectionProvider.ReadModelDb,
                   new RebuildContext(true)), null);
            _sut = new DocumentProjection(_writer, _documentDescriptorCollection, _documentDeletedCollection);
        }
Exemplo n.º 2
0
        public void SetUp()
        {
            MongoFlatMapper.EnableFlatMapping(true);
            MongoDbTestConnectionProvider.ReadModelDb.Drop();

            var mngr = new IdentityManager(new CounterService(MongoDbTestConnectionProvider.ReadModelDb));

            mngr.RegisterIdentitiesFromAssembly(typeof(DocumentDescriptorId).Assembly);

            MongoFlatIdSerializerHelper.Initialize(mngr);

            EventStoreIdentityCustomBsonTypeMapper.Register <DocumentDescriptorId>();
            EventStoreIdentityCustomBsonTypeMapper.Register <DocumentId>();
            StringValueCustomBsonTypeMapper.Register <BlobId>();
            StringValueCustomBsonTypeMapper.Register <DocumentHandle>();
            StringValueCustomBsonTypeMapper.Register <FileHash>();

            _writer = new DocumentWriter(MongoDbTestConnectionProvider.ReadModelDb);
            var _documentDescriptorCollection = new MongoReaderForProjections <DocumentDescriptorReadModel, DocumentDescriptorId>
                                                (
                new MongoStorageFactory(MongoDbTestConnectionProvider.ReadModelDb,
                                        new RebuildContext(true)));
            var _documentDeletedCollection = new CollectionWrapper <DocumentDeletedReadModel, String>
                                             (
                new MongoStorageFactory(MongoDbTestConnectionProvider.ReadModelDb,
                                        new RebuildContext(true)), null);

            _sut = new DocumentProjection(_writer, _documentDescriptorCollection, _documentDeletedCollection);
        }
Exemplo n.º 3
0
        public void AddDocument(DocumentProjection item)
        {
            using var uow = new UnitOfWork(dbContext.Connection);

            int rackId = uow.RackRepository.GetIdOrCreate(new Rack {
                Number = item.RackNumber
            });
            int shelfId = uow.ShelfRepository.GetIdOrCreate(new Shelf {
                Number = item.ShelfNumber, RackId = rackId
            });
            int cellId = uow.CellRepository.GetIdOrCreate(new Cell {
                Number = item.CellNumber, ShelfId = shelfId
            });
            int themeId = uow.DocumentThemeRepository.GetIdOrCreate(new Theme {
                Name = item.DocumentTheme
            });

            uow.DocumentRepository.Create(new Document
            {
                CellId      = cellId,
                Count       = item.Count,
                Name        = item.DocumentName,
                Number      = item.DocumentNumber,
                ReceiptDate = item.ReceiptDate,
                ThemeId     = themeId
            });

            uow.Commit();
        }