Search Results for

    Show / Hide Table of Contents

    Class TransactionProcessorExtender

    All transactions can have a custom processor for propietary algorithms. These extenders are configured against transaction codes using ITransactionCodeProcessor

    Implementing this class makes this custom transaction process available for use within the configuration of a ITransactionCode behaviour

    See https://help.lemonedge.com/transactions/ for more information
    Inheritance
    object
    TransactionProcessorExtender
    ValueOffsetterExtender
    Inherited Members
    object.GetType()
    object.MemberwiseClone()
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    Namespace: LemonEdge.API.Core.FinancialServices.Processors.Transactional
    Assembly: LemonEdge.API.Core.FinancialServices.dll
    Syntax
    public abstract class TransactionProcessorExtender

    Constructors

    TransactionProcessorExtender(ITransactionProcessor)

    Creates an instance of this Transaction Process Extender with the specified processor as the parent it will run its algorithm against

    Declaration
    public TransactionProcessorExtender(ITransactionProcessor processor)
    Parameters
    Type Name Description
    ITransactionProcessor processor

    The transaction processor this extender can run an algorithm against

    Properties

    Processor

    The transaction processor this extender can run an algorithm against

    Declaration
    public ITransactionProcessor Processor { get; }
    Property Value
    Type Description
    ITransactionProcessor

    Methods

    OnItemAdded(IBaseEntity)

    Notifies this extender that an item has been added to the transaction processor

    Declaration
    public virtual Task OnItemAdded(IBaseEntity item)
    Parameters
    Type Name Description
    IBaseEntity item

    The item that has been added to the transaction processor

    Returns
    Type Description
    Task

    OnItemRemoved(IBaseEntity)

    Notifies this extender that an item has been removed to the transaction processor

    Declaration
    public virtual Task OnItemRemoved(IBaseEntity item)
    Parameters
    Type Name Description
    IBaseEntity item

    The item that has been removed to the transaction processor

    Returns
    Type Description
    Task

    OnPropertyChanged(IBaseEntity, string, bool)

    Notifies this extender that a property has changed against the transaction and provides this implementation an ability to react to it and update appropriate other values

    Declaration
    public virtual Task OnPropertyChanged(IBaseEntity item, string propName, bool ignoredByProcessor)
    Parameters
    Type Name Description
    IBaseEntity item

    The item against the transaction that has changed, ITransaction, ITransactionAllocated, IGLPosting, or IGLPostingAllocated

    string propName

    The name of the property against the item that changed

    bool ignoredByProcessor

    Indicates the processor didn't react to this property change as it was marked as IgnoreEvents = true at the time (probably because its own processes were generating the changes)

    Returns
    Type Description
    Task

    A task indicating the completion of the operation

    OnPropertyChanged(IBaseEntity, string, string, bool)

    Notifies this extender that a property has changed against the transaction and provides this implementation an ability to react to it and update appropriate other values

    Declaration
    public virtual Task OnPropertyChanged(IBaseEntity item, string propName, string propAlias, bool ignoredByProcessor)
    Parameters
    Type Name Description
    IBaseEntity item

    The item against the transaction that has changed, ITransaction, ITransactionAllocated, IGLPosting, or IGLPostingAllocated

    string propName

    The name of the property against the item that changed

    string propAlias

    The alias of the property - normally the same but in the case of LocalValue1 will hold LocalValuexxx where xxx is the TTV code instead

    bool ignoredByProcessor

    Indicates the processor didn't react to this property change as it was marked as IgnoreEvents = true at the time (probably because its own processes were generating the changes)

    Returns
    Type Description
    Task

    A task indicating the completion of the operation

    Extension Methods

    LinqExtensions.AsArray<T>(T)
    LinqExtensions.ToArrayOfOne<T>(T)
    LinqExtensions.ToListOfOne<T>(T)
    MiscExtensions.SetIfNotEqual<T, TP>(T, Expression<Func<T, TP>>, TP)
    WeakReferenceExtensions.WeakReference(object)
    SQLExtensions.ToSQLValue(object, bool)
    ReflectionExtensions.ClearEventInvocations(object, string)
    StringExtensions.ToCSVFormatString(object, Type)

    See Also

    TransactionProcessorExtenderAttribute
    TransactionProcessorExtenderFactory
    ITransaction
    ITransactionProcessor
    In this article
    Back to top © LemonEdge Technologies. All rights reserved.