Flexberry ORM 8.0.0-beta01
Класс ICSSoft.STORMNET.Business.Audit.AuditService

Статическая обёртка для класса, наследующего от IAuditService. Подробнее...

Граф наследования:ICSSoft.STORMNET.Business.Audit.AuditService:
ICSSoft.STORMNET.Business.Audit.IAuditService

Открытые члены

 AuditService (ICurrentUser currentUser)
 Initializes a new instance of the AuditService class. Подробнее...
 
bool EnableAudit (bool throwExceptions)
 Включить ведение аудита в приложении (предварительно должны быть проинициализированы AppSetting и Audit). Подробнее...
 
void DisableAudit ()
 Отключить ведение аудита в приложении. Подробнее...
 
virtual void WriteCommonAuditOperationWithAutoFields (IEnumerable< DataObject > operationedObjects, ICollection< AuditAdditionalInfo > auditOperationInfoList, IDataService dataService, bool throwExceptions=true, IDbTransaction transaction=null)
 Сообщаем о совершении потенциально аудируемого действа.
 
virtual AuditAdditionalInfo WriteCommonAuditOperationWithAutoFields (DataObject operationedObject, IDataService dataService, bool throwExceptions=true, IDbTransaction transaction=null)
 Сообщаем о совершении потенциально аудируемого действа.
 
bool RatifyAuditOperationWithAutoFields (tExecutionVariant executionVariant, List< AuditAdditionalInfo > auditOperationInfoList, IDataService dataService, bool throwExceptions)
 Подтверждение созданных ранее операций аудита (выполнение зависит от выбранного режима записи данных аудита) (если аудит идёт в одну БД с приложением, то будет в сервис аудита передаваться имя строки соединения, найденное в AuditService.Current.AppSetting.AuditDSSettings по параметрам переданного сервиса данных).
 
View GetViewByAuditRecord (IAuditRecord auditRecord)
 Получение представления, по которому вероятнее всего вёлся аудит объекта, по операции над которым есть запись. Данное представление будет использоваться для получения кэпшенов полей. Подробнее...
 
View GetAuditViewByType (Type type, tTypeOfAuditOperation operationType)
 Получение представления для аудита у определенного типа. Подробнее...
 
Guid? WriteCustomAuditOperation (CustomAuditParameters customAuditParameters, bool throwExceptions)
 Сделать запись в аудит (если аудит идёт в одну БД с приложением, то будет использован сервис данных по умолчанию). Подробнее...
 
Guid? WriteCustomAuditOperation (CustomAuditParameters customAuditParameters, IDataService dataService, bool throwExceptions)
 Сделать запись в аудит (если аудит идёт в одну БД с приложением, то будет в сервис аудита передаваться имя строки соединения, найденное в AuditService.Current.AppSetting.AuditDSSettings по параметрам переданного сервиса данных). Подробнее...
 
Guid? WriteCustomAuditOperation (CustomAuditParameters customAuditParameters, string dataServiceConnectionString, Type dataServiceType, bool throwExceptions)
 Сделать запись в аудит (если аудит идёт в одну БД с приложением, то будет в сервис аудита передаваться имя строки соединения, найденное в AuditService.Current.AppSetting.AuditDSSettings по параметрам переданного сервиса данных). Подробнее...
 
bool IsTypeAuditable (Type curType)
 Является ли класс аудируемым (проверяются настройки по аудиту приложения + настройки класса). Подробнее...
 
bool RatifyAuditOperation (tExecutionVariant executionVariant, List< Guid > auditOperationIdList, bool throwExceptions)
 Подтверждение созданных ранее операций аудита (если аудит идёт в одну БД с приложением, то будет использован сервис данных по умолчанию). Подробнее...
 
bool RatifyAuditOperation (tExecutionVariant executionVariant, List< Guid > auditOperationIdList, string dataServiceConnectionString, Type dataServiceType, bool throwExceptions)
 Подтверждение созданных ранее операций аудита (если аудит идёт в одну БД с приложением, то будет использован сервис данных по умолчанию). Подробнее...
 
bool RatifyAuditOperation (tExecutionVariant executionVariant, List< Guid > auditOperationIdList, IDataService dataService, bool throwExceptions)
 Подтверждение созданных ранее операций аудита (выполнение зависит от выбранного режима записи данных аудита) (если аудит идёт в одну БД с приложением, то будет в сервис аудита передаваться имя строки соединения, найденное в AuditService.Current.AppSetting.AuditDSSettings по параметрам переданного сервиса данных). Подробнее...
 
Guid? WriteCommonAuditOperation (DataObject operationedObject, IDataService dataService, bool throwExceptions=true, IDbTransaction transaction=null)
 Сообщаем о совершении потенциально аудируемого действа. Подробнее...
 
virtual void AddCreateAuditInformation (DataObject operationedObject)
 Добавление информации о том, кто и когда создал объект, если он это поддерживает. Подробнее...
 
virtual void AddEditAuditInformation (DataObject operationedObject)
 Добавление информации о том, кто и когда отредактировал объект, если он это поддерживает. Подробнее...
 

Защищенные члены

virtual CommonAuditParameters GenerateCommonAuditParameters (DataObject operationedObject, IDataService dataService, bool throwExceptions=true, IDbTransaction transaction=null)
 Сгенерировать общие параметры операции аудита. Подробнее...
 
virtual bool RatifyAuditOperation (tExecutionVariant executionVariant, List< AuditAdditionalInfo > auditOperationInfoList, string dataServiceConnectionString, Type dataServiceType, bool throwExceptions, bool checkClassAuditSettings=false)
 Подтверждение созданных ранее операций аудита (если аудит идёт в одну БД с приложением, то будет использован сервис данных по умолчанию). Подробнее...
 
virtual void CheckAndSendToAudit (RatificationAuditParameters ratificationAuditParameters, bool checkClassAuditSettings)
 Проверка режима записи данных аудита и в зависимости от этого отправка нужным способом данных аудита. Подробнее...
 
virtual DateTime GetAuditOperationTime (DataObject operatedObject)
 Gets the time when auditable operation occurred with the specified object. Подробнее...
 
virtual string GetConnectionStringName (string dataServiceConnectionString, Type dataServiceType)
 Получение имени строки соединения с БД приложения на основании переданного сервиса данных (поиск осуществляется среди DetailArrayOfAuditDSSetting по строке соединения и типу сервиса данных; если переданный сервис данных null, то берётся первое валидное имя строки соединения в DetailArrayOfAuditDSSetting). Подробнее...
 

Свойства

bool IsAuditEnabled [get]
 Включён ли аудит для приложения. Подробнее...
 
bool IsAuditRemote [get]
 Выполняется ли аудит удалённо (то есть через вызов AuditWinService). Подробнее...
 
string? AuditConnectionStringName [get]
 Получение имени строки соединения с БД аудита. (используется для загрузки данных из БД). Если используется запись аудита через windows-сервис, то будет возвращено null. Подробнее...
 
bool ShowPrimaryKey [get, set]
 Следует ли отображать записи с изменением первичного ключа на формах. Подробнее...
 
AuditAppSetting AppSetting [get, set]
 Настройки аудита в приложении. Подробнее...
 
bool PersistUtcDates [get, set]
 Flag indicates that storage contains UTC audit dates. If true then UTC dates else local timezone dates. Default is false. Подробнее...
 
bool DetailedLogEnabled = true [get, set]
 Flag indicates that this service uses LogService.LogInfo(object) and LogService.LogInfoFormat to log audit operation information. Default is true. Подробнее...
 
IAudit Audit [get, set]
 Элемент, реализующий логику аудита. Подробнее...
 
- Свойства унаследованные от ICSSoft.STORMNET.Business.Audit.IAuditService
bool IsAuditEnabled [get]
 Включён ли аудит для приложения. Подробнее...
 
bool IsAuditRemote [get]
 Выполняется ли аудит удалённо (то есть через вызов AuditWinService). Подробнее...
 
string AuditConnectionStringName [get]
 Получение имени строки соединения с БД аудита (используется для загрузки данных из БД). Если используется запись аудита через windows-сервис, то будет возвращено null. Подробнее...
 
bool ShowPrimaryKey [get, set]
 Следует ли отображать записи с изменением первичного ключа на формах. Подробнее...
 
bool PersistUtcDates [get, set]
 Флаг, указывающий, что в бд даты хранятся в формате UTC. Значение по умолчанию false. Подробнее...
 
AuditAppSetting AppSetting [get, set]
 Настройки аудита в приложении. Подробнее...
 
IAudit Audit [get, set]
 Элемент, реализующий логику аудита. Подробнее...
 

Подробное описание

Статическая обёртка для класса, наследующего от IAuditService.

Конструктор(ы)

◆ AuditService()

ICSSoft.STORMNET.Business.Audit.AuditService.AuditService ( ICurrentUser  currentUser)
inline

Initializes a new instance of the AuditService class.

Аргументы
currentUserСервис доступа к данным текущего пользовтаеля.

Методы

◆ AddCreateAuditInformation()

virtual void ICSSoft.STORMNET.Business.Audit.AuditService.AddCreateAuditInformation ( DataObject  operationedObject)
inlinevirtual

Добавление информации о том, кто и когда создал объект, если он это поддерживает.

Аргументы
operationedObjectОбъект, куда добавляется информация.

Замещает ICSSoft.STORMNET.Business.Audit.IAuditService.

◆ AddEditAuditInformation()

virtual void ICSSoft.STORMNET.Business.Audit.AuditService.AddEditAuditInformation ( DataObject  operationedObject)
inlinevirtual

Добавление информации о том, кто и когда отредактировал объект, если он это поддерживает.

Аргументы
operationedObjectОбъект, куда добавляется информация.

Замещает ICSSoft.STORMNET.Business.Audit.IAuditService.

◆ CheckAndSendToAudit()

virtual void ICSSoft.STORMNET.Business.Audit.AuditService.CheckAndSendToAudit ( RatificationAuditParameters  ratificationAuditParameters,
bool  checkClassAuditSettings 
)
inlineprotectedvirtual

Проверка режима записи данных аудита и в зависимости от этого отправка нужным способом данных аудита.

Аргументы
ratificationAuditParametersПараметры аудита.
checkClassAuditSettingsСледует ли проверять настройки аудита в классах.

◆ DisableAudit()

void ICSSoft.STORMNET.Business.Audit.AuditService.DisableAudit ( )
inline

Отключить ведение аудита в приложении.

Замещает ICSSoft.STORMNET.Business.Audit.IAuditService.

◆ EnableAudit()

bool ICSSoft.STORMNET.Business.Audit.AuditService.EnableAudit ( bool  throwExceptions)
inline

Включить ведение аудита в приложении (предварительно должны быть проинициализированы AppSetting и Audit).

Аргументы
throwExceptionsСледует ли вызывать исключения в ошибочной ситуации.
Возвращает
Удалось ли включить аудит.

Замещает ICSSoft.STORMNET.Business.Audit.IAuditService.

◆ GenerateCommonAuditParameters()

virtual CommonAuditParameters ICSSoft.STORMNET.Business.Audit.AuditService.GenerateCommonAuditParameters ( DataObject  operationedObject,
IDataService  dataService,
bool  throwExceptions = true,
IDbTransaction  transaction = null 
)
inlineprotectedvirtual

Сгенерировать общие параметры операции аудита.

Аргументы
operationedObjectОбъект, над которым выполняется операция.
dataServiceСервис данных, который выполняет операцию.
throwExceptionsСледует ли пробрасывать дальше возникшее исключение (по умолчанию - true).
transactionТранзакция, через которую необходимо проводить выполнение зачиток из БД приложения аудиту (при работе AuditService иногда необходимо дочитать объект или получить сохранённую копию, а выполнение данного действия без транзакции может привести к взаимоблокировке). По умолчанию - null.
Возвращает
Параметры операции аудита.

◆ GetAuditOperationTime()

virtual DateTime ICSSoft.STORMNET.Business.Audit.AuditService.GetAuditOperationTime ( DataObject  operatedObject)
inlineprotectedvirtual

Gets the time when auditable operation occurred with the specified object.

Аргументы
operatedObjectThe operated object.
Возвращает
Returns time when auditable operation occurred (DateTime.Now by default).

◆ GetAuditViewByType()

View ICSSoft.STORMNET.Business.Audit.AuditService.GetAuditViewByType ( Type  type,
tTypeOfAuditOperation  operationType 
)
inline

Получение представления для аудита у определенного типа.

Аргументы
typeТип, у которого нужно получить представление для аудита.
operationTypeТип аудируемой операции, для которой нужно получить представление (Select, Insert, Update или Delete).
Возвращает
Представление для аудита.

Замещает ICSSoft.STORMNET.Business.Audit.IAuditService.

◆ GetConnectionStringName()

virtual string ICSSoft.STORMNET.Business.Audit.AuditService.GetConnectionStringName ( string  dataServiceConnectionString,
Type  dataServiceType 
)
inlineprotectedvirtual

Получение имени строки соединения с БД приложения на основании переданного сервиса данных (поиск осуществляется среди DetailArrayOfAuditDSSetting по строке соединения и типу сервиса данных; если переданный сервис данных null, то берётся первое валидное имя строки соединения в DetailArrayOfAuditDSSetting).

Аргументы
dataServiceConnectionStringСтрока соединения сервиса данных, который выполняет запись в БД приложения.
dataServiceTypeТип сервиса данных, который выполняет запись в БД приложения.
Возвращает
Имя строки соединения с БД приложения.

◆ GetViewByAuditRecord()

View ICSSoft.STORMNET.Business.Audit.AuditService.GetViewByAuditRecord ( IAuditRecord  auditRecord)
inline

Получение представления, по которому вероятнее всего вёлся аудит объекта, по операции над которым есть запись. Данное представление будет использоваться для получения кэпшенов полей.

Аргументы
auditRecordЗапись из аудита, по которой необходимо определить представление.
Возвращает
Найденное представление (если что-то не удалось, то выдастся null; исключения не должно быть в любом случае).

Замещает ICSSoft.STORMNET.Business.Audit.IAuditService.

◆ IsTypeAuditable()

bool ICSSoft.STORMNET.Business.Audit.AuditService.IsTypeAuditable ( Type  curType)
inline

Является ли класс аудируемым (проверяются настройки по аудиту приложения + настройки класса).

Аргументы
curTypeИсследуемый тип.
Возвращает
True, если является и нужно вести аудит.

Замещает ICSSoft.STORMNET.Business.Audit.IAuditService.

◆ RatifyAuditOperation() [1/4]

virtual bool ICSSoft.STORMNET.Business.Audit.AuditService.RatifyAuditOperation ( tExecutionVariant  executionVariant,
List< AuditAdditionalInfo auditOperationInfoList,
string  dataServiceConnectionString,
Type  dataServiceType,
bool  throwExceptions,
bool  checkClassAuditSettings = false 
)
inlineprotectedvirtual

Подтверждение созданных ранее операций аудита (если аудит идёт в одну БД с приложением, то будет использован сервис данных по умолчанию).

Аргументы
executionVariantКакой статус будет присвоен операции.
auditOperationInfoListИнформация о том, что и куда в аудит нужно добавить.
dataServiceConnectionStringСтрока соединения сервиса данных, который выполняет запись в БД приложения.
dataServiceTypeТип сервиса данных, который выполняет запись в БД приложения.
throwExceptionsСледует ли пробрасывать дальше возникшее исключение.
checkClassAuditSettingsСледует ли проверять настройки аудита самого класса.
Возвращает
True, если всё закончилось без ошибок.

◆ RatifyAuditOperation() [2/4]

bool ICSSoft.STORMNET.Business.Audit.AuditService.RatifyAuditOperation ( tExecutionVariant  executionVariant,
List< Guid >  auditOperationIdList,
bool  throwExceptions 
)
inline

Подтверждение созданных ранее операций аудита (если аудит идёт в одну БД с приложением, то будет использован сервис данных по умолчанию).

Аргументы
executionVariantКакой статус будет присвоен операции.
auditOperationIdListСписок идентификаторов записей аудита.
throwExceptionsСледует ли пробрасывать дальше возникшее исключение.
Возвращает
True, если всё закончилось без ошибок.

Замещает ICSSoft.STORMNET.Business.Audit.IAuditService.

◆ RatifyAuditOperation() [3/4]

bool ICSSoft.STORMNET.Business.Audit.AuditService.RatifyAuditOperation ( tExecutionVariant  executionVariant,
List< Guid >  auditOperationIdList,
IDataService  dataService,
bool  throwExceptions 
)
inline

Подтверждение созданных ранее операций аудита (выполнение зависит от выбранного режима записи данных аудита) (если аудит идёт в одну БД с приложением, то будет в сервис аудита передаваться имя строки соединения, найденное в AuditService.Current.AppSetting.AuditDSSettings по параметрам переданного сервиса данных).

Аргументы
executionVariantКакой статус будет присвоен операции.
auditOperationIdListСписок идентификаторов записей аудита.
dataServiceСервис данных, по параметрам которого (строка соединения и тип) осуществляется поиск в AuditService.Current.AppSetting.AuditDSSettings.
throwExceptionsСледует ли пробрасывать дальше возникшее исключение.
Возвращает
True, если всё закончилось без ошибок.

Замещает ICSSoft.STORMNET.Business.Audit.IAuditService.

◆ RatifyAuditOperation() [4/4]

bool ICSSoft.STORMNET.Business.Audit.AuditService.RatifyAuditOperation ( tExecutionVariant  executionVariant,
List< Guid >  auditOperationIdList,
string  dataServiceConnectionString,
Type  dataServiceType,
bool  throwExceptions 
)
inline

Подтверждение созданных ранее операций аудита (если аудит идёт в одну БД с приложением, то будет использован сервис данных по умолчанию).

Аргументы
executionVariantКакой статус будет присвоен операции.
auditOperationIdListСписок идентификаторов записей аудита.
dataServiceConnectionStringСтрока соединения сервиса данных, который выполняет запись в БД приложения.
dataServiceTypeТип сервиса данных, который выполняет запись в БД приложения.
throwExceptionsСледует ли пробрасывать дальше возникшее исключение.
Возвращает
True, если всё закончилось без ошибок.

Замещает ICSSoft.STORMNET.Business.Audit.IAuditService.

◆ WriteCommonAuditOperation()

Guid? ICSSoft.STORMNET.Business.Audit.AuditService.WriteCommonAuditOperation ( DataObject  operationedObject,
IDataService  dataService,
bool  throwExceptions = true,
IDbTransaction  transaction = null 
)
inline

Сообщаем о совершении потенциально аудируемого действа.

Аргументы
operationedObjectОбъект, над которым выполняется операция.
dataServiceСервис данных, который выполняет операцию.
throwExceptionsСледует ли пробрасывать дальше возникшее исключение (по умолчанию - true).
transactionТранзакция, через которую необходимо проводить выполнение зачиток из БД приложения аудиту (при работе AuditService иногда необходимо дочитать объект или получить сохранённую копию, а выполнение данного действия без транзакции может привести к взаимоблокировке). По умолчанию - null.
Возвращает
Ответ о том, можно ли выполнять операцию (если null, то значит, что что-то пошло не так).

Замещает ICSSoft.STORMNET.Business.Audit.IAuditService.

◆ WriteCustomAuditOperation() [1/3]

Guid? ICSSoft.STORMNET.Business.Audit.AuditService.WriteCustomAuditOperation ( CustomAuditParameters  customAuditParameters,
bool  throwExceptions 
)
inline

Сделать запись в аудит (если аудит идёт в одну БД с приложением, то будет использован сервис данных по умолчанию).

Аргументы
customAuditParametersПараметры аудита.
throwExceptionsСледует ли пробрасывать дальше возникшее исключение.
Возвращает
Идентификатор записи аудита.

Замещает ICSSoft.STORMNET.Business.Audit.IAuditService.

◆ WriteCustomAuditOperation() [2/3]

Guid? ICSSoft.STORMNET.Business.Audit.AuditService.WriteCustomAuditOperation ( CustomAuditParameters  customAuditParameters,
IDataService  dataService,
bool  throwExceptions 
)
inline

Сделать запись в аудит (если аудит идёт в одну БД с приложением, то будет в сервис аудита передаваться имя строки соединения, найденное в AuditService.Current.AppSetting.AuditDSSettings по параметрам переданного сервиса данных).

Аргументы
customAuditParametersПараметры аудита.
dataServiceСервис данных, по параметрам которого (строка соединения и тип) осуществляется поиск в AuditService.Current.AppSetting.AuditDSSettings.
throwExceptionsСледует ли пробрасывать дальше возникшее исключение.
Возвращает
Идентификатор записи аудита.

Замещает ICSSoft.STORMNET.Business.Audit.IAuditService.

◆ WriteCustomAuditOperation() [3/3]

Guid? ICSSoft.STORMNET.Business.Audit.AuditService.WriteCustomAuditOperation ( CustomAuditParameters  customAuditParameters,
string  dataServiceConnectionString,
Type  dataServiceType,
bool  throwExceptions 
)
inline

Сделать запись в аудит (если аудит идёт в одну БД с приложением, то будет в сервис аудита передаваться имя строки соединения, найденное в AuditService.Current.AppSetting.AuditDSSettings по параметрам переданного сервиса данных).

Аргументы
customAuditParametersПараметры аудита.
dataServiceConnectionStringСтрока соединения сервиса данных, который выполняет запись в БД приложения.
dataServiceTypeТип сервиса данных, который выполняет запись в БД приложения.
throwExceptionsСледует ли пробрасывать дальше возникшее исключение.
Возвращает
Идентификатор записи аудита.

Замещает ICSSoft.STORMNET.Business.Audit.IAuditService.

Полный список свойств

◆ AppSetting

AuditAppSetting ICSSoft.STORMNET.Business.Audit.AuditService.AppSetting
getset

Настройки аудита в приложении.

◆ Audit

IAudit ICSSoft.STORMNET.Business.Audit.AuditService.Audit
getset

Элемент, реализующий логику аудита.

◆ AuditConnectionStringName

string? ICSSoft.STORMNET.Business.Audit.AuditService.AuditConnectionStringName
get

Получение имени строки соединения с БД аудита. (используется для загрузки данных из БД). Если используется запись аудита через windows-сервис, то будет возвращено null.

◆ DetailedLogEnabled

bool ICSSoft.STORMNET.Business.Audit.AuditService.DetailedLogEnabled = true
getset

Flag indicates that this service uses LogService.LogInfo(object) and LogService.LogInfoFormat to log audit operation information. Default is true.

◆ IsAuditEnabled

bool ICSSoft.STORMNET.Business.Audit.AuditService.IsAuditEnabled
get

Включён ли аудит для приложения.

◆ IsAuditRemote

bool ICSSoft.STORMNET.Business.Audit.AuditService.IsAuditRemote
get

Выполняется ли аудит удалённо (то есть через вызов AuditWinService).

◆ PersistUtcDates

bool ICSSoft.STORMNET.Business.Audit.AuditService.PersistUtcDates
getset

Flag indicates that storage contains UTC audit dates. If true then UTC dates else local timezone dates. Default is false.

◆ ShowPrimaryKey

bool ICSSoft.STORMNET.Business.Audit.AuditService.ShowPrimaryKey
getset

Следует ли отображать записи с изменением первичного ключа на формах.