◆ CreateFlowData()
| IFlowData FiftyOne.Pipeline.Core.FlowElements.Pipeline.CreateFlowData | ( | ) |
Create a new IFlowData instance that will use this pipeline when processing.
- Returns
Implements FiftyOne.Pipeline.Core.FlowElements.IPipeline.
A pipeline is used to create IFlowData instances which then automatically use the pipeline when their Process method is called.
See the Specification
| IFlowData | CreateFlowData ()
Create a new IFlowData instance that will use this pipeline when processing. More...
|
| void | Process (IFlowData data)
Process the given IFlowData using the IFlowElements in the pipeline. More...
|
| TElement | GetElement< TElement > ()
Get the specified element from the pipeline. More...
|
| bool | HasExpectedElementAfter< TElement, TExpectedElement > ()
Check if the pipeline contains an instance of TExpectedElement that will be executed after TElement . More...
|
| IElementPropertyMetaData | GetMetaDataForProperty (string propertyName)
Get the meta data for the specified property name. More...
|
| void | Dispose ()
Dispose More...
|
| bool | SuppressProcessExceptions => _suppressProcessExceptions |
| IEvidenceKeyFilter | EvidenceKeyFilter [get]
Get a filter that will only include the evidence keys that can be used by at least one IFlowElement within this pipeline. More...
|
| bool | IsConcurrent [get]
True if multiple IFlowElement instances will run concurrently within this pipeline. More...
|
| bool | IsDisposed [get]
True if the pipeline has been disposed More...
|
| IReadOnlyList< IFlowElement > | FlowElements [get]
Get a read only list of the flow elements that are part of this pipeline. More...
|
| IReadOnlyDictionary< string, IReadOnlyDictionary< string, IElementPropertyMetaData > > | ElementAvailableProperties [get]
Get the dictionary of available properties for an IFlowElement.ElementDataKey. More...
|
Properties inherited from FiftyOne.Pipeline.Core.FlowElements.IPipeline | |
| IEvidenceKeyFilter | EvidenceKeyFilter [get]
Get a filter that will only include the evidence keys that can be used by at least one IFlowElement within this pipeline. More...
|
| bool | IsConcurrent [get]
True if any of the IFlowElements in this pipeline will create multiple threads and execute in parallel. More...
|
| bool | IsDisposed [get]
True if the pipeline has been disposed More...
|
| bool | SuppressProcessExceptions [get]
|
| IReadOnlyList< IFlowElement > | FlowElements [get]
Get a read only list of the flow elements that are part of this pipeline. More...
|
| IReadOnlyDictionary< string, IReadOnlyDictionary< string, IElementPropertyMetaData > > | ElementAvailableProperties [get]
Get the dictionary of available properties for an IFlowElement.ElementDataKey. More...
|
| IFlowData FiftyOne.Pipeline.Core.FlowElements.Pipeline.CreateFlowData | ( | ) |
Create a new IFlowData instance that will use this pipeline when processing.
Implements FiftyOne.Pipeline.Core.FlowElements.IPipeline.
| virtual void FiftyOne.Pipeline.Core.FlowElements.Pipeline.Dispose | ( | bool | disposing | ) |
Dispose of any resources.
| void FiftyOne.Pipeline.Core.FlowElements.Pipeline.Dispose | ( | ) |
Dispose
| TElement FiftyOne.Pipeline.Core.FlowElements.Pipeline.GetElement< TElement > | ( | ) |
Get the specified element from the pipeline.
If the pipeline contains multiple elements of the requested type, this method will return null.
Implements FiftyOne.Pipeline.Core.FlowElements.IPipeline.
| TElement | : | class | |
| TElement | : | IFlowElement |
| IElementPropertyMetaData FiftyOne.Pipeline.Core.FlowElements.Pipeline.GetMetaDataForProperty | ( | string | propertyName | ) |
Get the meta data for the specified property name.
If there are no properties with that name or multiple properties on different elements then an exception will be thrown.
Implements FiftyOne.Pipeline.Core.FlowElements.IPipelineInternal.
| bool FiftyOne.Pipeline.Core.FlowElements.Pipeline.HasExpectedElementAfter< TElement, TExpectedElement > | ( | ) |
Check if the pipeline contains an instance of TExpectedElement that will be executed after TElement .
Implements FiftyOne.Pipeline.Core.FlowElements.IPipeline.
| TElement | : | IFlowElement | |
| TExpectedElement | : | IFlowElement |
| void FiftyOne.Pipeline.Core.FlowElements.Pipeline.Process | ( | IFlowData | data | ) |
Process the given IFlowData using the IFlowElements in the pipeline.
Implements FiftyOne.Pipeline.Core.FlowElements.IPipelineInternal.
| bool FiftyOne.Pipeline.Core.FlowElements.Pipeline.SuppressProcessExceptions => _suppressProcessExceptions |
Control field that indicates if the Pipeline will throw an aggregate exception during processing or suppress it and ignore the exceptions added to IFlowData.Errors.
| IReadOnlyDictionary<string, IReadOnlyDictionary<string, IElementPropertyMetaData> > FiftyOne.Pipeline.Core.FlowElements.Pipeline.ElementAvailableProperties |
Get the dictionary of available properties for an IFlowElement.ElementDataKey.
The dictionary returned contains the IElementPropertyMetaDatas keyed on the name field.
| IEvidenceKeyFilter FiftyOne.Pipeline.Core.FlowElements.Pipeline.EvidenceKeyFilter |
Get a filter that will only include the evidence keys that can be used by at least one IFlowElement within this pipeline.
| IReadOnlyList<IFlowElement> FiftyOne.Pipeline.Core.FlowElements.Pipeline.FlowElements |
Get a read only list of the flow elements that are part of this pipeline.
If there are no ParallelElements in the flow elements then this method simply returns the the internal _flowElements list. If not then the flow elements in instances of ParallelElements are included.
Instances of ParallelElements are never included.
The double check lock could be removed if a 'Complete' method were added to the pipeline. This method would indicate that the pipeline would have completed all of its set up tasks and FlowElements would be in a static state.
| bool FiftyOne.Pipeline.Core.FlowElements.Pipeline.IsConcurrent |
True if multiple IFlowElement instances will run concurrently within this pipeline.
False otherwise.
| bool FiftyOne.Pipeline.Core.FlowElements.Pipeline.IsDisposed |
True if the pipeline has been disposed