Search Results for

    Show / Hide Table of Contents

    Namespace LemonEdge.API.Core.Tasks

    Classes

    ServerTaskAttribute

    This attribute must be marked against any implementation of ITaskProcessor to detail how to process it

    If this is accessible from the client, and not only accessible from the service, then you do not also need to mark the parameter type with the ServerTaskParametersAttribute

    ServerTaskFactory

    ServerTaskParameter

    The base class for any parameter that can work against a IServerTask and be processed by a ITaskProcessor

    Any implementation can be refernced from the ParameterType, or can be marked with a ServerTaskParametersAttribute to detail what task type these parameters are for

    Any implementation of this can have 3 constructors that the system will automatically use for creation in order:
    • (IBaseEntity item, IEntityUpdater context): Creates default parameters using this constructor for the specified item and a context.
    • (IBaseEntity item): Creates default parameters using this constructor for the soecified item.
    • (): Creates default parameters using this constructor.

    ServerTaskParametersAttribute

    This attribute can be used to mark any implementation of the ServerTaskParameter class for defining parameters for a ITaskProcessor implementation

    It is optional if the ITaskProcessor implementation is accessible from all UI clients, as that ServerTaskAttribute contains all the details.

    If the ITaskProcessor is not always accessible then the ServerTaskParameter *must* be marked with this to provide detail on how to create parameters for the task and send to the server for processing

    ServerTaskResult

    The base class for holding the results of any task

    These results are serialisable so the results stored against the IServerTask.TaskResult by a remote server can be viewed by a client when it is complete

    Any implementation must be marked with the ServerTaskResultAttribute so the system knows which type of IServerTask this result is used for

    ServerTaskResultAttribute

    Marks any ServerTaskResult implementation with the type if task this result hold details for

    ServiceContext

    TaskContext

    TaskRunnerBase

    The base class for processing and executing tasks on either a server process or the client itself

    TriggerTaskAttribute

    Marks an implementation of BaseTriggerTask that this task implementation is a specialized task for processing an IActionTrigger

    The default implementation of this is for processing the actions by notifying users of the action through different notification types (system, email).

    ValidationContextFactory

    Interfaces

    IServerTaskFactory

    The factory for retrieving an ITaskProcessor, ServerTaskParameter, or ITaskResultHandler, or their associated attributes to process and handle tasks ( IServerTask)

    See https://help.lemonedge.com/server-tasks/ for more information

    Any task requires the following:
    • ServerTaskParameter: An optional parameters implementation holding the parameters for the task. Must be marked with the ServerTaskParametersAttribute if the associated ITaskProcessor is not accessible to the client.
    • ITaskProcessor: The actual implementation of the task process itself. Marked with a ServerTaskAttribute describing it and linking to its associated ServerTaskParameter (if any).
    • ServerTaskResult: An optional results implementation (marked with ServerTaskResultAttribute) for storing the results of the task for client viewing/loading/etc.

    IServiceContext

    Contains a selection of common services demanded from the IServiceProvider.

    ITaskMessage

    The base interface for items reporting messages of a task status. Implemented by IServerTaskStatus

    See https://help.lemonedge.com/help/open-architecture/status/server-tasks/statuses-view.html for more information

    ITaskProcessor

    The main interface for any process that can run as a IServerTask on a remote server

    Any implementation needs to be marked with the ServerTaskAttribute

    The parameters for this process must inherit ServerTaskParameter and can optionally be marked with the ServerTaskParametersAttribute as well.

    Any result handler must implement ITaskResultHandler and be marked with the ServerTaskResultAttribute

    Any implementation does not have to be accessible in UI code, as long as ServerTaskParameter is accessible to create the parameters to send a task to the server (It must be marked with ServerTaskParametersAttribute then, it is not optional). This code can reside in core server implementations only.

    ITaskResultHandler

    An interface that can be implemented to handle the result returned from ProcessTask(CancellationToken) for every task implementation in the system

    Must be marked with the ServerTaskResultAttribute to specify which type of task it handles results for

    ITaskRunner

    The interface any processor for implementing tasks implements

    ITaskService

    An interface that a service for processing IServerTask implements

    The service monitors the task queue and processes tasks independantly.

    Can be run from a client that is directly connected to a database, or any directly connected service

    IValidationContextFactory

    Enums

    ServerTaskResultType

    The type of area a ITaskResultHandler can operate within

    In this article
    Back to top © LemonEdge Technologies. All rights reserved.