Show / Hide Table of Contents

Class TicketLogger

Query Processor plugin to trigger logging of Ticket changes.

Inheritance
Object
AsynchronousHandler<TicketLoggerProcessor, BatchSave>
QueuedThreadBase<TicketLoggerProcessor, BatchSave>
ThreadStaticQueuedThreadBase<TicketLoggerProcessor, BatchSave>
TicketLogger
Inherited Members
ThreadStaticQueuedThreadBase<TicketLoggerProcessor, BatchSave>.WorkInformation
QueuedThreadBase<TicketLoggerProcessor, BatchSave>.ScheduleNewWork()
AsynchronousHandler<TicketLoggerProcessor, BatchSave>.ToString()
AsynchronousHandler<TicketLoggerProcessor, BatchSave>.OnSetup(BatchSave)
AsynchronousHandler<TicketLoggerProcessor, BatchSave>.SynchronousSetup(BatchSave)
AsynchronousHandler<TicketLoggerProcessor, BatchSave>.AsynchronousOperation()
AsynchronousHandler<TicketLoggerProcessor, BatchSave>.ExecuteWork()
AsynchronousHandler<TicketLoggerProcessor, BatchSave>.Processor
AsynchronousHandler<TicketLoggerProcessor, BatchSave>.WasSetupCalled
AsynchronousHandler<TicketLoggerProcessor, BatchSave>.HasWorkToDo
AsynchronousHandler<TicketLoggerProcessor, BatchSave>.ThreadName
Namespace: SuperOffice.Data.Private.TicketLogging
Assembly: SoDataBase.dll
Syntax
public sealed class TicketLogger : ThreadStaticQueuedThreadBase<TicketLoggerProcessor, BatchSave>, IQueryProcessorPlugin
Remarks

Use the base class and standard pattern to delegate the actual work to the TicketLoggerProcessor, which has a synchronous (before save) part to collect information, and a later part to do the logging, asynchronously.
The purpose of this class is to connect to the correct interception points (BeforeGenerate, AfterExecute) out of the many possible ones. It also contains mechanisms to turn off this logging functionality.

Constructors

TicketLogger()

Query Processor plugin to trigger logging of Ticket changes.

Declaration
public TicketLogger()
Remarks

Use the base class and standard pattern to delegate the actual work to the TicketLoggerProcessor, which has a synchronous (before save) part to collect information, and a later part to do the logging, asynchronously.
The purpose of this class is to connect to the correct interception points (BeforeGenerate, AfterExecute) out of the many possible ones. It also contains mechanisms to turn off this logging functionality.

Methods

AfterCommit()

Query Processor plugin to trigger logging of Ticket changes.

Declaration
public void AfterCommit()
Remarks

Use the base class and standard pattern to delegate the actual work to the TicketLoggerProcessor, which has a synchronous (before save) part to collect information, and a later part to do the logging, asynchronously.
The purpose of this class is to connect to the correct interception points (BeforeGenerate, AfterExecute) out of the many possible ones. It also contains mechanisms to turn off this logging functionality.

AfterCommitOrAutoCommit()

Query Processor plugin to trigger logging of Ticket changes.

Declaration
public void AfterCommitOrAutoCommit()
Remarks

Use the base class and standard pattern to delegate the actual work to the TicketLoggerProcessor, which has a synchronous (before save) part to collect information, and a later part to do the logging, asynchronously.
The purpose of this class is to connect to the correct interception points (BeforeGenerate, AfterExecute) out of the many possible ones. It also contains mechanisms to turn off this logging functionality.

AfterExecute(SqlCommand, SqlCommand, Int32)

After execution, perform the logging

Declaration
public void AfterExecute(SqlCommand commandOriginal, SqlCommand commandCopy, int rowsAffected)
Parameters
Type Name Description
SqlCommand commandOriginal
SqlCommand commandCopy
Int32 rowsAffected
Remarks

All information needed to perform the logging was collected in the SynchronousSetup and stored within the TicketLoggerProcessor. Therefore we don't really need the incoming parameters here.

AfterExecuteFailed(SqlCommand, SqlCommand)

Query Processor plugin to trigger logging of Ticket changes.

Declaration
public void AfterExecuteFailed(SqlCommand commandOriginal, SqlCommand commandCopy)
Parameters
Type Name Description
SqlCommand commandOriginal
SqlCommand commandCopy
Remarks

Use the base class and standard pattern to delegate the actual work to the TicketLoggerProcessor, which has a synchronous (before save) part to collect information, and a later part to do the logging, asynchronously.
The purpose of this class is to connect to the correct interception points (BeforeGenerate, AfterExecute) out of the many possible ones. It also contains mechanisms to turn off this logging functionality.

AfterGenerate(SqlCommand, SqlCommand)

Query Processor plugin to trigger logging of Ticket changes.

Declaration
public void AfterGenerate(SqlCommand commandOriginal, SqlCommand commandCopy)
Parameters
Type Name Description
SqlCommand commandOriginal
SqlCommand commandCopy
Remarks

Use the base class and standard pattern to delegate the actual work to the TicketLoggerProcessor, which has a synchronous (before save) part to collect information, and a later part to do the logging, asynchronously.
The purpose of this class is to connect to the correct interception points (BeforeGenerate, AfterExecute) out of the many possible ones. It also contains mechanisms to turn off this logging functionality.

AfterRead(SoCommand, SoDataReader, ref Boolean)

Query Processor plugin to trigger logging of Ticket changes.

Declaration
public void AfterRead(SoCommand command, SoDataReader reader, ref bool skipRow)
Parameters
Type Name Description
SoCommand command
SoDataReader reader
Boolean skipRow
Remarks

Use the base class and standard pattern to delegate the actual work to the TicketLoggerProcessor, which has a synchronous (before save) part to collect information, and a later part to do the logging, asynchronously.
The purpose of this class is to connect to the correct interception points (BeforeGenerate, AfterExecute) out of the many possible ones. It also contains mechanisms to turn off this logging functionality.

AfterRollback()

Query Processor plugin to trigger logging of Ticket changes.

Declaration
public void AfterRollback()
Remarks

Use the base class and standard pattern to delegate the actual work to the TicketLoggerProcessor, which has a synchronous (before save) part to collect information, and a later part to do the logging, asynchronously.
The purpose of this class is to connect to the correct interception points (BeforeGenerate, AfterExecute) out of the many possible ones. It also contains mechanisms to turn off this logging functionality.

BeforeExecute(SqlCommand, SqlCommand)

Query Processor plugin to trigger logging of Ticket changes.

Declaration
public void BeforeExecute(SqlCommand commandOriginal, SqlCommand commandCopy)
Parameters
Type Name Description
SqlCommand commandOriginal
SqlCommand commandCopy
Remarks

Use the base class and standard pattern to delegate the actual work to the TicketLoggerProcessor, which has a synchronous (before save) part to collect information, and a later part to do the logging, asynchronously.
The purpose of this class is to connect to the correct interception points (BeforeGenerate, AfterExecute) out of the many possible ones. It also contains mechanisms to turn off this logging functionality.

BeforeGenerate(SqlCommand, SqlCommand)

Before the query is processed and executed, collect information about it and about field values currently in the database

Declaration
public void BeforeGenerate(SqlCommand commandOriginal, SqlCommand commandCopy)
Parameters
Type Name Description
SqlCommand commandOriginal
SqlCommand commandCopy
Remarks

Use the base class and standard pattern to delegate the actual work to the TicketLoggerProcessor, which has a synchronous (before save) part to collect information, and a later part to do the logging, asynchronously.
The purpose of this class is to connect to the correct interception points (BeforeGenerate, AfterExecute) out of the many possible ones. It also contains mechanisms to turn off this logging functionality.

InitialTransform(SqlCommand, ref SqlCommand)

Query Processor plugin to trigger logging of Ticket changes.

Declaration
public void InitialTransform(SqlCommand original, ref SqlCommand clone)
Parameters
Type Name Description
SqlCommand original
SqlCommand clone
Remarks

Use the base class and standard pattern to delegate the actual work to the TicketLoggerProcessor, which has a synchronous (before save) part to collect information, and a later part to do the logging, asynchronously.
The purpose of this class is to connect to the correct interception points (BeforeGenerate, AfterExecute) out of the many possible ones. It also contains mechanisms to turn off this logging functionality.

Extension Methods

EnumUtil.MapEnums<From, To>(From)
ObjectExtensions.AssignByReflection<T>(T, T)
ObjectExtensions.GraphCopy<T>(T)
Converters.MapEnums<From, To>(From)
© SuperOffice. All rights reserved.
SuperOffice |  Community |  Release Notes |  Privacy |  Site feedback |  Search Docs |  About Docs |  Contribute |  Back to top