示例#1
0
        public static EventStoreConfiguration <TEventStoreUowProvider> ConfigureSubscribers <TEventStoreUowProvider, TProjectionProvider>(
            this EventStoreConfiguration <TEventStoreUowProvider> configuration,
            ProjectorsBySubscription <TProjectionProvider> subscribers)
            where TEventStoreUowProvider : class, IUowProvider
            where TProjectionProvider : IUowProvider
        {
            configuration.ConfigureSubscriptions(subscribers.Select(x => x.Key));

            new RequestsRegistration <ProjectorsBySubscription <TProjectionProvider> >(() => subscribers)
            .Register <ConfiguredSubscribers, Subscriber>(
                (input, provider) => ProjectorStore <TEventStoreUowProvider, TProjectionProvider> .Subscriber(provider),
                Return.List);

            return(configuration);
        }