Class TransformationRuleSource<TIn1, TIn2, TOut>
- Namespace
- NMF.Transformations.Linq
- Assembly
- NMF.Transformations.dll
Represents the usage of a transformation rule with two input arguments in a relational pattern
public class TransformationRuleSource<TIn1, TIn2, TOut> : ITransformationRuleDependency, INotifyEnumerable<TransformationComputationWrapper<TIn1, TIn2, TOut>>, IEnumerable<TransformationComputationWrapper<TIn1, TIn2, TOut>>, INotifyEnumerable, IEnumerable, INotifyCollectionChanged, INotifiable, IDisposable where TIn1 : class where TIn2 : class where TOut : class
Type Parameters
TIn1
The type of the first transformation rule input argument
TIn2
The type of the second transformation rule input argument
TOut
The transformation rule output type
- Inheritance
-
TransformationRuleSource<TIn1, TIn2, TOut>
- Implements
-
INotifyEnumerable<TransformationComputationWrapper<TIn1, TIn2, TOut>>IEnumerable<TransformationComputationWrapper<TIn1, TIn2, TOut>>
- Inherited Members
Constructors
TransformationRuleSource(TransformationRuleBase<TIn1, TIn2, TOut>, ITransformationContext)
Creates a new TransformationRuleSource instance for the given transformation rule in the given context
public TransformationRuleSource(TransformationRuleBase<TIn1, TIn2, TOut> rule, ITransformationContext context)
Parameters
rule
TransformationRuleBase<TIn1, TIn2, TOut>The transformation rule that should be used as source
context
ITransformationContextThe context in which the computations should be used by the current instance
Properties
Context
Gets the context in which the transformation rule source is active
public ITransformationContext Context { get; }
Property Value
Dependencies
Nodes that notify this node.
public IEnumerable<INotifiable> Dependencies { get; }
Property Value
ExecuteBefore
Gets or sets a value indicating whether the computation object should be forwarded before or after the dependencies are resolved
public bool ExecuteBefore { get; set; }
Property Value
ExecutionMetaData
Used by the execution engine during incremental execution.
public ExecutionMetaData ExecutionMetaData { get; }
Property Value
Filter
Gets or sets the filter to be used to filter computations
public Func<TransformationComputationWrapper<TIn1, TIn2, TOut>, bool> Filter { get; set; }
Property Value
- Func<TransformationComputationWrapper<TIn1, TIn2, TOut>, bool>
Successors
The nodes that will get notified by this node.
public ISuccessorList Successors { get; }
Property Value
TransformationRule
Gets the transformation rule this transformation rule source is responsible for
public TransformationRuleBase<TIn1, TIn2, TOut> TransformationRule { get; }
Property Value
- TransformationRuleBase<TIn1, TIn2, TOut>
Methods
Dispose()
Clears dependencies
public void Dispose()
Dispose(bool)
Clears dependencies
protected virtual void Dispose(bool disposing)
Parameters
disposing
boolA value indicating whether Dispose was called
GetEnumerator()
Gets an enumerator that enumerates the collected computations so far
public IEnumerator<TransformationComputationWrapper<TIn1, TIn2, TOut>> GetEnumerator()
Returns
- IEnumerator<TransformationComputationWrapper<TIn1, TIn2, TOut>>
An enumerator
HandleDependency(Computation)
Receives a new computation from the computation rule
public void HandleDependency(Computation computation)
Parameters
computation
ComputationThe computation that is received
Notify(IList<INotificationResult>)
Gets called when one of the dependencies signals a notification.
public INotificationResult Notify(IList<INotificationResult> sources)
Parameters
sources
IList<INotificationResult>Contains information about what triggered this notification.
Returns
- INotificationResult
An object describing the changes that happened in this notification.
Events
CollectionChanged
Gets fired when new elements appear in the trace
public event NotifyCollectionChangedEventHandler CollectionChanged