public ParallelQueryProcessingStrategy( string name, ProjectionVersion projectionVersion, IProjectionStateHandler stateHandler, Func <IProjectionStateHandler> handlerFactory, ProjectionConfig projectionConfig, IQueryDefinition sourceDefinition, ProjectionNamesBuilder namesBuilder, ILogger logger, SpooledStreamReadingDispatcher spoolProcessingResponseDispatcher, ReaderSubscriptionDispatcher subscriptionDispatcher) : base(name, projectionVersion, projectionConfig, sourceDefinition, logger, subscriptionDispatcher) { _stateHandler = stateHandler; _projectionConfig = projectionConfig; _sourceDefinition = sourceDefinition; _namesBuilder = namesBuilder; _spoolProcessingResponseDispatcher = spoolProcessingResponseDispatcher; if (_sourceDefinition.CatalogStream == SystemStreams.AllStream) { _catalogStreamName = SystemStreams.AllStream; } else if (_sourceDefinition.HasCategories()) { _catalogStreamName = _namesBuilder.GetCategoryCatalogStreamName(_sourceDefinition.Categories[0]); } else { _catalogStreamName = _sourceDefinition.CatalogStream; } }
public ParallelQueryProcessingStrategy( string name, ProjectionVersion projectionVersion, IProjectionStateHandler stateHandler, Func<IProjectionStateHandler> handlerFactory, ProjectionConfig projectionConfig, IQueryDefinition sourceDefinition, ProjectionNamesBuilder namesBuilder, ILogger logger, SpooledStreamReadingDispatcher spoolProcessingResponseDispatcher, ReaderSubscriptionDispatcher subscriptionDispatcher) : base(name, projectionVersion, projectionConfig, sourceDefinition, logger, subscriptionDispatcher) { _stateHandler = stateHandler; _projectionConfig = projectionConfig; _sourceDefinition = sourceDefinition; _namesBuilder = namesBuilder; _spoolProcessingResponseDispatcher = spoolProcessingResponseDispatcher; if (_sourceDefinition.CatalogStream == SystemStreams.AllStream) { _catalogStreamName = SystemStreams.AllStream; } else if (_sourceDefinition.HasCategories()) { _catalogStreamName = _namesBuilder.GetCategoryCatalogStreamName(_sourceDefinition.Categories[0]); } else { _catalogStreamName = _sourceDefinition.CatalogStream; } }
protected override IReaderStrategy CreateReaderStrategy(ITimeProvider timeProvider) { if (_sourceDefinition.HasCategories()) { return(new ParallelQueryMasterReaderStrategy( 0, SystemAccount.Principal, timeProvider, _namesBuilder.GetCategoryCatalogStreamName(_sourceDefinition.Categories[0]))); } return(new ParallelQueryMasterReaderStrategy( 0, SystemAccount.Principal, timeProvider, _sourceDefinition.CatalogStream)); }
public ParallelQueryProcessingStrategy( string name, ProjectionVersion projectionVersion, IProjectionStateHandler stateHandler, ProjectionConfig projectionConfig, IQuerySources sourceDefinition, string handlerType, string query, ProjectionNamesBuilder namesBuilder, ILogger logger, SpooledStreamReadingDispatcher spoolProcessingResponseDispatcher, ReaderSubscriptionDispatcher subscriptionDispatcher) : base(name, projectionVersion, projectionConfig, sourceDefinition, logger, subscriptionDispatcher) { if (string.IsNullOrEmpty(handlerType)) { throw new ArgumentNullException("handlerType"); } if (string.IsNullOrEmpty(query)) { throw new ArgumentNullException("query"); } _stateHandler = stateHandler; _projectionConfig = projectionConfig; _sourceDefinition = sourceDefinition; _handlerType = handlerType; _query = query; _namesBuilder = namesBuilder; _spoolProcessingResponseDispatcher = spoolProcessingResponseDispatcher; if (_sourceDefinition.CatalogStream == SystemStreams.AllStream) { _catalogStreamName = SystemStreams.AllStream; } else if (_sourceDefinition.HasCategories()) { _catalogStreamName = _namesBuilder.GetCategoryCatalogStreamName(_sourceDefinition.Categories[0]); } else { _catalogStreamName = _sourceDefinition.CatalogStream; } }
public ParallelQueryProcessingStrategy( string name, ProjectionVersion projectionVersion, IProjectionStateHandler stateHandler, ProjectionConfig projectionConfig, IQuerySources sourceDefinition, string handlerType, string query, ProjectionNamesBuilder namesBuilder, ILogger logger, SpooledStreamReadingDispatcher spoolProcessingResponseDispatcher, ReaderSubscriptionDispatcher subscriptionDispatcher) : base(name, projectionVersion, projectionConfig, sourceDefinition, logger, subscriptionDispatcher) { if (string.IsNullOrEmpty(handlerType)) throw new ArgumentNullException("handlerType"); if (string.IsNullOrEmpty(query)) throw new ArgumentNullException("query"); _stateHandler = stateHandler; _projectionConfig = projectionConfig; _sourceDefinition = sourceDefinition; _handlerType = handlerType; _query = query; _namesBuilder = namesBuilder; _spoolProcessingResponseDispatcher = spoolProcessingResponseDispatcher; if (_sourceDefinition.CatalogStream == SystemStreams.AllStream) { _catalogStreamName = SystemStreams.AllStream; } else if (_sourceDefinition.HasCategories()) { _catalogStreamName = _namesBuilder.GetCategoryCatalogStreamName(_sourceDefinition.Categories[0]); } else { _catalogStreamName = _sourceDefinition.CatalogStream; } }