Code re-factorings and formatting in IntegrationEventLogEF project

This commit is contained in:
Rafsanul Hasan 2018-09-09 05:18:08 +06:00
parent 0705dc0ab5
commit 1d377f7808
No known key found for this signature in database
GPG Key ID: FC57FD2D87BE60DD
6 changed files with 138 additions and 147 deletions

View File

@ -1,8 +1,4 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF
namespace Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF
{
public enum EventStateEnum
{

View File

@ -1,8 +1,5 @@
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
using System;
using System.Collections.Generic;
using System.Text;
namespace Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF
{

View File

@ -1,11 +1,11 @@
using System;
using System.Collections.Generic;
using System.Text;
using Newtonsoft.Json;
using Microsoft.eShopOnContainers.BuildingBlocks.EventBus.Events;
using DateTime = System.DateTime;
using Guid = System.Guid;
using JsonConvert = Newtonsoft.Json.JsonConvert;
namespace Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF
{
using IntegrationEvent = EventBus.Events.IntegrationEvent;
public class IntegrationEventLogEntry
{
private IntegrationEventLogEntry() { }

View File

@ -1,12 +1,10 @@
using Microsoft.eShopOnContainers.BuildingBlocks.EventBus.Events;
using System;
using System.Collections.Generic;
using System.Data.Common;
using System.Linq;
using System.Threading.Tasks;
using DbTransaction = System.Data.Common.DbTransaction;
using Task = System.Threading.Tasks.Task;
namespace Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF.Services
{
using IntegrationEvent = EventBus.Events.IntegrationEvent;
public interface IIntegrationEventLogService
{
Task SaveEventAsync(IntegrationEvent @event, DbTransaction transaction);

View File

@ -1,13 +1,15 @@
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Diagnostics;
using Microsoft.eShopOnContainers.BuildingBlocks.EventBus.Events;
using System;
using System.Data.Common;
using System.Linq;
using System.Threading.Tasks;
using static System.Linq.Enumerable;
using ArgumentNullException = System.ArgumentNullException;
using DbConnection = System.Data.Common.DbConnection;
using DbTransaction = System.Data.Common.DbTransaction;
using RelationalEventId = Microsoft.EntityFrameworkCore.Diagnostics.RelationalEventId;
using Task = System.Threading.Tasks.Task;
namespace Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF.Services
{
using IntegrationEvent = EventBus.Events.IntegrationEvent;
public class IntegrationEventLogService : IIntegrationEventLogService
{
private readonly IntegrationEventLogContext _integrationEventLogContext;

View File

@ -1,25 +1,23 @@
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Storage;
using Microsoft.eShopOnContainers.BuildingBlocks.EventBus.Events;
using Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF.Services;
using System;
using System.Collections.Generic;
using System.Data.Common;
using System.Text;
using System.Threading.Tasks;
using static Microsoft.EntityFrameworkCore.ExecutionStrategyExtensions;
using ArgumentNullException = System.ArgumentNullException;
using DbContext = Microsoft.EntityFrameworkCore.DbContext;
using Task = System.Threading.Tasks.Task;
namespace Microsoft.eShopOnContainers.BuildingBlocks.IntegrationEventLogEF.Utilities
{
using FuncOfTask = System.Func<Task>;
public class ResilientTransaction
{
private DbContext _context;
private ResilientTransaction(DbContext context) =>
_context = context ?? throw new ArgumentNullException(nameof(context));
public static ResilientTransaction New (DbContext context) =>
public static ResilientTransaction New(DbContext context) =>
new ResilientTransaction(context);
public async Task ExecuteAsync(Func<Task> action)
public async Task ExecuteAsync(FuncOfTask action)
{
//Use of an EF Core resiliency strategy when using multiple DbContexts within an explicit BeginTransaction():
//See: https://docs.microsoft.com/en-us/ef/core/miscellaneous/connection-resiliency