Search Results for

    Show / Hide Table of Contents

    Class QueryRunnerProcessor

    A processor for processing al the query runner elements together

    See https://help.lemonedge.com/query-runners/ for more information

    Inheritance
    System.Object
    QueryRunnerProcessor
    Implements
    IBaseDataSetProcessorWithDBSave
    IBaseDataSetProcessor
    IProcessor
    System.IDisposable
    Inherited Members
    System.Object.Equals(System.Object)
    System.Object.Equals(System.Object, System.Object)
    System.Object.GetHashCode()
    System.Object.GetType()
    System.Object.MemberwiseClone()
    System.Object.ReferenceEquals(System.Object, System.Object)
    System.Object.ToString()
    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 . Used to load all the parameters referred to by this current query runner

    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

    Implements

    IBaseDataSetProcessorWithDBSave
    IBaseDataSetProcessor
    IProcessor
    System.IDisposable

    Extension Methods

    MiscExtensions.SetIfNotEqual<T, P>(T, Expression<Func<T, P>>, P)
    ReflectionExtensions.ClearEventInvocations(Object, String)
    StringExtensions.ToCSVFormatString(Object, Type)
    SQLExtensions.ToSQLValue(Object, Boolean)

    See Also

    IQueryRunner
    In This Article
    Back to top © LemonEdge Technology. All rights reserved.