AuditSetter
AuditSetter
осуществляет инициализацию настроек аудита.
Инициализацию не обязательно выполнять посредством данного класса, в нём просто собрана наиболее удачная инициализация значениями по умолчанию.
Что происходит при вызове AuditSetter.InitAuditService(IDataService dataService)
:
Вычитываются значения из файла конфигурации:
#* “AppNameForAudit” (Имя настройки в конфиг-файле для имени приложения для аудита). #* “AuditEnabled” (Имя настройки в конфиг-файле для определения, включён ли аудит в приложении). #* “IsAuditDatabaseLocal” (Имя настройки в конфиг-файле для определения, является ли база данных аудита локальной по отношению к приложению). #* “AuditConnectionStringName” (Имя настройки в конфиг-файле для имени строки соединения с БД аудита). #* “AuditWinServiceUrl” (Имя настройки в конфиг-файле для адреса win-сервиса аудита). #* “WriteSessions” (Имя настройки в конфиг-файле для определения, писать ли сессии по пользователям). #* “DefaultWriteMode” (Имя настройки в конфиг-файле для режима записи данных аудита по умолчанию).
Если значения в файле конфигурации некорректны или не заданы, то проставляются следующие значения:
#* “AppNameForAudit” = "AuditAppName_" + new Random().Next(65536)
.
#* “AuditEnabled” = false
.
#* “IsAuditDatabaseLocal” = true
.
#* “AuditConnectionStringName” = "AuditConnString_" + new Random().Next(65536)
.
#* “AuditWinServiceUrl” = string.Empty
.
#* “WriteSessions” = false
.
#* “DefaultWriteMode” = tWriteMode.Synchronous
.
Создаётся экземпляр класса AuditAppSetting, куда записываются полученные настройки.
Создаётся экземпляр класса AuditDSSetting, куда передаётся полученный методом AuditSetter.InitAuditService
сервис данных и для него формируется имя вида “<AppNameForAudit>_<AuditConnectionStringName>”.
После этого происходит инициализация AuditService.
AuditService.InitAuditService(auditAppSetting, new ICSSoft.STORMNET.Business.Audit.Audit());