Browse Source

Remove AsyncHelper.RunSync from AuditingStoreExtensions

pull/1460/head
Halil İbrahim Kalkan 7 years ago
parent
commit
b9891801a8
  1. 8
      framework/src/Volo.Abp.Auditing/Volo/Abp/Auditing/AuditingManager.cs
  2. 12
      framework/src/Volo.Abp.Auditing/Volo/Abp/Auditing/AuditingStoreExtensions.cs
  3. 2
      framework/src/Volo.Abp.Auditing/Volo/Abp/Auditing/IAuditingStore.cs
  4. 6
      framework/src/Volo.Abp.Auditing/Volo/Abp/Auditing/SimpleLogAuditingStore.cs
  5. 37
      modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo/Abp/AuditLogging/AuditingStore.cs

8
framework/src/Volo.Abp.Auditing/Volo/Abp/Auditing/AuditingManager.cs

@ -147,7 +147,6 @@ namespace Volo.Abp.Auditing
private readonly AuditingManager _auditingManager;
private readonly IDisposable _scope;
private bool _saved;
public DisposableSaveHandle(
AuditingManager auditingManager,
@ -163,23 +162,16 @@ namespace Volo.Abp.Auditing
public async Task SaveAsync()
{
_saved = true;
await _auditingManager.SaveAsync(this);
}
public void Save()
{
_saved = true;
_auditingManager.Save(this);
}
public void Dispose()
{
if (!_saved)
{
Save();
}
_scope.Dispose();
}
}

12
framework/src/Volo.Abp.Auditing/Volo/Abp/Auditing/AuditingStoreExtensions.cs

@ -1,12 +0,0 @@
using Volo.Abp.Threading;
namespace Volo.Abp.Auditing
{
public static class AuditingStoreExtensions
{
public static void Save(this IAuditingStore auditingStore, AuditLogInfo auditInfo)
{
AsyncHelper.RunSync(() => auditingStore.SaveAsync(auditInfo));
}
}
}

2
framework/src/Volo.Abp.Auditing/Volo/Abp/Auditing/IAuditingStore.cs

@ -4,6 +4,8 @@ namespace Volo.Abp.Auditing
{
public interface IAuditingStore
{
void Save(AuditLogInfo auditInfo);
Task SaveAsync(AuditLogInfo auditInfo);
}
}

6
framework/src/Volo.Abp.Auditing/Volo/Abp/Auditing/SimpleLogAuditingStore.cs

@ -15,10 +15,14 @@ namespace Volo.Abp.Auditing
Logger = NullLogger<SimpleLogAuditingStore>.Instance;
}
public Task SaveAsync(AuditLogInfo auditInfo)
public void Save(AuditLogInfo auditInfo)
{
Logger.LogInformation(auditInfo.ToString());
}
public Task SaveAsync(AuditLogInfo auditInfo)
{
Save(auditInfo);
return Task.FromResult(0);
}
}

37
modules/audit-logging/src/Volo.Abp.AuditLogging.Domain/Volo/Abp/AuditLogging/AuditingStore.cs

@ -33,15 +33,33 @@ namespace Volo.Abp.AuditLogging
Logger = NullLogger<AuditingStore>.Instance;
}
private async Task SaveLogAsync(AuditLogInfo auditInfo)
public void Save(AuditLogInfo auditInfo)
{
using (var uow = _unitOfWorkManager.Begin(requiresNew: true))
if (!Options.HideErrors)
{
var auditLog = new AuditLog(_guidGenerator, auditInfo);
await _auditLogRepository.InsertAsync(auditLog);
await uow.SaveChangesAsync();
SaveLog(auditInfo);
return;
}
try
{
SaveLog(auditInfo);
}
catch (Exception ex)
{
Logger.LogException(ex, LogLevel.Error);
}
}
protected virtual void SaveLog(AuditLogInfo auditInfo)
{
using (var uow = _unitOfWorkManager.Begin(true))
{
_auditLogRepository.Insert(new AuditLog(_guidGenerator, auditInfo));
uow.SaveChanges();
}
}
public async Task SaveAsync(AuditLogInfo auditInfo)
{
if (!Options.HideErrors)
@ -59,5 +77,14 @@ namespace Volo.Abp.AuditLogging
Logger.LogException(ex, LogLevel.Error);
}
}
protected virtual async Task SaveLogAsync(AuditLogInfo auditInfo)
{
using (var uow = _unitOfWorkManager.Begin(true))
{
await _auditLogRepository.InsertAsync(new AuditLog(_guidGenerator, auditInfo));
await uow.SaveChangesAsync();
}
}
}
}

Loading…
Cancel
Save