Click or drag to resize

NRules.Aggregators Namespace

Contains types that implement aggregation of facts as part of rules engine execution.
Public classAggregatorRegistry
Registry of custom aggregator factories.
Public structureAggregationResult
Result of the aggregation.
Public interfaceIAggregateExpression
Expression used by an aggregator, compiled to an executable form.
Public interfaceIAggregator
Base interface for fact aggregators. An aggregator is a stateful element of the rules engine, that receives matching facts of a particular kind, and can combine them into a synthetic fact, that is then used by the downstream logic in the rule. Aggregator also recieves updates and removals for the matching facts, so that it can keep the corresponding aggregate facts in sync. An aggregator must be supplemented by a corresponding implementation of IAggregatorFactory that knows how to create new instances of the aggregator.
Public interfaceIAggregatorFactory
Base interface for aggregator factories. Aggregator factory constructs new instances of IAggregator of a given type, so that they can accumulate aggregation results. An IAggregatorFactory type must either be registered in AggregatorRegistry, or provided in the canonical rule model via CustomFactoryType. If both are provided, the aggregator factory at the AggregateElement level takes precedence.
Public enumerationAggregationAction
Action that aggregation performed on the aggregate, based on added/modified/removed facts.