public CheckedCustomAuditParameters( tExecutionVariant executionResult, DateTime currentTime, AppMode applicationMode, string auditConnectionStringName, bool needSerialization) : base(executionResult, currentTime, applicationMode, auditConnectionStringName, needSerialization) { }
public AuditParameters( tExecutionVariant executionResult, DateTime currentTime, AppMode applicationMode, string auditConnectionStringName, bool needSerialization) : base(auditConnectionStringName, applicationMode) { ExecutionResult = executionResult; CurrentTime = currentTime; NeedSerialization = needSerialization; }
/// <summary> /// Конструктор класса, который позволяет дописывать определённую информацию в аудит. /// </summary> /// <param name="executionVariant">Вариант завершения работы аудита.</param> /// <param name="currentTime">Текущее время.</param> /// <param name="auditOperationInfoList">Информация, которую необходимо дописать в аудит (с указанием идентификаторов записей аудита).</param> /// <param name="writeMode">Режим записи: синхронный или асинхронный.</param> /// <param name="applicationMode">Режим работы аудита: под win или web.</param> /// <param name="auditConnectionStringName">Имя строки соединения с БД, куда идут записи аудита.</param> /// <param name="needSerialization">Нужна ли сериализация (на случай передачи по wcf).</param> public RatificationAuditParameters( tExecutionVariant executionVariant, DateTime currentTime, List <AuditAdditionalInfo> auditOperationInfoList, tWriteMode writeMode, AppMode applicationMode, string auditConnectionStringName, bool needSerialization) : base(executionVariant, currentTime, applicationMode, auditConnectionStringName, needSerialization) { ExecutionResult = executionVariant; CurrentTime = currentTime; AuditOperationInfoList = auditOperationInfoList; WriteMode = writeMode; }
public CommonAuditParameters( bool needAnswer, tExecutionVariant executionResult, string operationSource, string fullUserLogin, string userName, DateTime currentTime, AppMode applicationMode, string auditConnectionStringName, bool needSerialization) : base(executionResult, currentTime, applicationMode, auditConnectionStringName, needSerialization) { NeedAnswer = needAnswer; OperationSource = operationSource; FullUserLogin = fullUserLogin; UserName = userName; }
/// <summary> /// Подтверждение созданных ранее операций аудита /// (если аудит идёт в одну БД с приложением, то будет использован сервис данных по умолчанию). /// </summary> /// <param name="executionVariant">Какой статус будет присвоен операции.</param><param name="auditOperationInfoList">Информация о том, что и куда в аудит нужно добавить.</param><param name="dataServiceConnectionString">Строка соединения сервиса данных, который выполняет запись в БД приложения. </param><param name="dataServiceType">Тип сервиса данных, который выполняет запись в БД приложения. </param><param name="throwExceptions">Следует ли пробрасывать дальше возникшее исключение.</param><param name="checkClassAuditSettings">Следует ли проверять настройки аудита самого класса.</param> /// <returns> /// <c>True</c>, если всё закончилось без ошибок. /// </returns> protected override bool RatifyAuditOperation(tExecutionVariant executionVariant, List <AuditAdditionalInfo> auditOperationInfoList, string dataServiceConnectionString, Type dataServiceType, bool throwExceptions, bool checkClassAuditSettings = false) { if (PersistUtcDates) { try { if (AppSetting == null || !AppSetting.AuditEnabled) { throw new DisabledAuditException(); } if (auditOperationInfoList != null && auditOperationInfoList.Count > 0) { // Настройки вообще есть и аудит для приложения включён. var auditRatifyParameters = new RatificationAuditParameters( executionVariant, DateTimeOffset.UtcNow.DateTime, auditOperationInfoList, AppSetting.DefaultWriteMode, ApplicationMode, AppSetting.IsDatabaseLocal ? GetConnectionStringName(dataServiceConnectionString, dataServiceType) : AppSetting.AuditConnectionStringName, IsAuditRemote) { ThrowExceptions = throwExceptions }; CheckAndSendToAudit(auditRatifyParameters, checkClassAuditSettings); } return(true); } catch (Exception ex) { ErrorProcesser.ProcessAuditError(ex, "AuditService, RatifyAuditOperation", throwExceptions); return(false); } } return(base.RatifyAuditOperation(executionVariant, auditOperationInfoList, dataServiceConnectionString, dataServiceType, throwExceptions, checkClassAuditSettings)); }