Пример #1
0
        public static ENodeConfiguration InitializeNpgsqlAggregateSnapshotStore(this ENodeConfiguration enodeConfiguration, string connectionString, string[]  aggregateTypeNames)
        {
            enodeConfiguration.InitializeAggregateSnapshotStore <NpgsqlAggregateSnapshotStore>(s =>
                                                                                               s.Initialize(
                                                                                                   connectionString,
                                                                                                   aggregateTypeNames: aggregateTypeNames
                                                                                                   ));

            ((DefaultAggregateSnapshotSaver)ObjectContainer.Resolve <IAggregateSnapshotSaver>()).Initialize(1);
            ((DefaultAggregateSnapshotRequestProcessor)ObjectContainer.Resolve <IAggregateSnapshotRequestQueue>()).Initialize(
                TimeSpan.FromSeconds(3),
                ObjectContainer.Resolve <IAggregateSnapshotRequestFilter>(),
                ObjectContainer.Resolve <IAggregateSnapshotSaver>()
                );
            ((DefaultAggregateSnapshotRequestFilter)ObjectContainer.Resolve <IAggregateSnapshotRequestFilter>()).Initialize(
                20,
                ObjectContainer.Resolve <IAggregateSnapshotStore>()
                );
            return(enodeConfiguration);
        }