Class AggregateTransformer
Run a series of transformers, deferring validation until after all transformers have run.
Implements
Inherited Members
Namespace: Mangrove.MetricSetSyntaxTree.Operations
Assembly: MetricSetSyntaxTree.dll
Syntax
public class AggregateTransformer : LoggingTransformerBase, IMetricsPlanTransformer
Constructors
View SourceAggregateTransformer(IEnumerable<IMetricsPlanTransformer>, Boolean, ILogger)
Accept a list of IMetricsPlanTransformer objects to run (in order).
Declaration
public AggregateTransformer(IEnumerable<IMetricsPlanTransformer> transformers, bool debugMode = false, ILogger logger = null)
Parameters
Type | Name | Description |
---|---|---|
IEnumerable<IMetricsPlanTransformer> | transformers | Set of transformers to run. |
Boolean | debugMode | Set to true to run validation between runs. |
ILogger | logger |
Remarks
Optionally override the deferred validation. Doing so will run validation between every transformer to pinpoint where a failure is introduced.
Methods
View SourceTransform(MetricsPlan, IMetricsPlanValidator)
Skip the logging for AggregateTransformer because there are no meaningful transformations. It is best to log information from each individual transformer from the collection.
Declaration
public override MetricsPlan Transform(MetricsPlan plan, IMetricsPlanValidator validator)
Parameters
Type | Name | Description |
---|---|---|
MetricsPlan | plan | |
IMetricsPlanValidator | validator |
Returns
Type | Description |
---|---|
MetricsPlan |
Overrides
View SourceTransformWithTracing(MetricsPlan, IMetricsPlanValidator)
Produce new MetricsPlan by running a series of transformers.
Declaration
public override MetricsPlan TransformWithTracing(MetricsPlan plan, IMetricsPlanValidator validator)
Parameters
Type | Name | Description |
---|---|---|
MetricsPlan | plan | |
IMetricsPlanValidator | validator |
Returns
Type | Description |
---|---|
MetricsPlan |