Class QueryRunnerProcessor
A processor for processing al the query runner elements together
See https://help.lemonedge.com/query-runners/ for more information
Inheritance
Inherited Members
Namespace: LemonEdge.API.Processors
Assembly: API.dll
Syntax
public class QueryRunnerProcessor : IBaseDataSetProcessorWithDBSave, IBaseDataSetProcessor, IProcessor, IDisposable
Fields
OnStepParametersChanged
Declaration
public EventHandler OnStepParametersChanged
Field Value
| Type | Description |
|---|---|
| System.EventHandler |
Properties
Cache
A local cache for performance
Declaration
public IReadOnlyCache Cache { get; }
Property Value
| Type | Description |
|---|---|
| IReadOnlyCache |
IgnoreEvents
Indicates the processor should ignore changes to any items within the processor
Normally used when the processor responds to an event and wants to prevent any other responses while it finishes processing that change
Declaration
public bool IgnoreEvents { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Loaded
Flag to indicate if the processor has been fully loaded
Declaration
public bool Loaded { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Order
If we have multiple save processors working, this indicates the order in which they will be processed with relation to each other
Declaration
public short Order { get; }
Property Value
| Type | Description |
|---|---|
| System.Int16 |
Reporter
A reporter to provide feedback to a log, or client depending on the context the process is running under
Declaration
public BusyProgressReporter Reporter { get; set; }
Property Value
| Type | Description |
|---|---|
| BusyProgressReporter |
SaveProcessed
Declaration
public bool SaveProcessed { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Steps
All the steps in this query runner
Declaration
public IEnumerable<IQueryRunnerStep> Steps { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<IQueryRunnerStep> |
Updater
A context to ensure the process can query, load and modify all LemonEdge data
Declaration
public IEntityUpdater Updater { get; }
Property Value
| Type | Description |
|---|---|
| IEntityUpdater |
User
The current logged in user the process is running under
Declaration
public UserInfo User { get; }
Property Value
| Type | Description |
|---|---|
| UserInfo |
Methods
AddToDataSetToProcess(IBaseEntity, EntityOperation)
Adds the specified IQueryRunner or IQueryRunnerStep, or IQueryRunnerStepParameter to this processor
Declaration
public void AddToDataSetToProcess(IBaseEntity item, EntityOperation operationType)
Parameters
| Type | Name | Description |
|---|---|---|
| IBaseEntity | item | The IQueryRunner or IQueryRunnerStep, or IQueryRunnerStepParameter to add that is a part of this processor |
| EntityOperation | operationType | The type of modification this item has |
Dispose()
Declaration
public void Dispose()
Dispose(Boolean)
Declaration
protected virtual void Dispose(bool disposing)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Boolean | disposing |
EnsureAllParametersForStepLoaded(IQueryRunnerStep)
Automatically updates all parameters for the specified step to contain links to the current parameters for the step.
Declaration
public Task EnsureAllParametersForStepLoaded(IQueryRunnerStep step)
Parameters
| Type | Name | Description |
|---|---|---|
| IQueryRunnerStep | step | The step to create the associated parameters for automatically |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task indicating the completion of the operation |
GetGlobalParameters()
Returns the list of global parameters for running this query runner
LoadParameters() must be called first
Declaration
public IEnumerable<ISQLTypeWrapper> GetGlobalParameters()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<ISQLTypeWrapper> | The list of global parameters for running this query runner |
GetParameter(IQueryRunnerStepParameter)
Returns the actual sql type wrapper for the specified IQueryRunnerStepParameter
LoadParameters() must be called first
Declaration
public ISQLTypeWrapper GetParameter(IQueryRunnerStepParameter parameter)
Parameters
| Type | Name | Description |
|---|---|---|
| IQueryRunnerStepParameter | parameter | The step parameter to return the sql wrapper type param for |
Returns
| Type | Description |
|---|---|
| ISQLTypeWrapper | The actual sql type wrapper for the specified SQLWrapperParameterID |
IsChangedItemPartOfDataSet(IBaseEntity)
Returns true for a IQueryRunner or IQueryRunnerStep, or IQueryRunnerStepParameter that is part of the path this processor handles
Declaration
public bool IsChangedItemPartOfDataSet(IBaseEntity item)
Parameters
| Type | Name | Description |
|---|---|---|
| IBaseEntity | item | The item to see if it belongs in this processor |
Returns
| Type | Description |
|---|---|
| System.Boolean | True for a IQueryRunner or IQueryRunnerStep, or IQueryRunnerStepParameter that is part of the path this processor handles |
Load()
A thread safe implementation to load all required data for the processor
Once completed Loaded should return true.
Declaration
public Task Load()
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task indicating the completion of the load operation |
LoadParameters()
Must be called before
Declaration
public Task LoadParameters()
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task indicating the completion of the operation |
OnAddStep(IQueryRunnerStep)
Adds the new specified step into the processor
Declaration
public Task OnAddStep(IQueryRunnerStep step)
Parameters
| Type | Name | Description |
|---|---|---|
| IQueryRunnerStep | step | The newly created step to add into the processor |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task indicating the completion of the operation |
OnRemoveStep(IQueryRunnerStep)
Removes the specified step from the processor
Declaration
public void OnRemoveStep(IQueryRunnerStep step)
Parameters
| Type | Name | Description |
|---|---|---|
| IQueryRunnerStep | step | THe step to be removed from the processor |
Parameters(IQueryRunnerStep)
Returns the list of parameters configured against the specified step
Declaration
public IEnumerable<IQueryRunnerStepParameter> Parameters(IQueryRunnerStep forStep)
Parameters
| Type | Name | Description |
|---|---|---|
| IQueryRunnerStep | forStep | The step to return the parameters for |
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<IQueryRunnerStepParameter> | The list of parameters configured against the specified step |
ProcessOnDBSave()
Declaration
public Task ProcessOnDBSave()
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task |