diff --git a/TransactionProcessor.Aggregates/TransactionProcessor.Aggregates.csproj b/TransactionProcessor.Aggregates/TransactionProcessor.Aggregates.csproj
index 3470c884..52848f17 100644
--- a/TransactionProcessor.Aggregates/TransactionProcessor.Aggregates.csproj
+++ b/TransactionProcessor.Aggregates/TransactionProcessor.Aggregates.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/TransactionProcessor.BusinessLogic/EventHandling/MerchantStatementDomainEventHandler.cs b/TransactionProcessor.BusinessLogic/EventHandling/MerchantStatementDomainEventHandler.cs
index 44c902a9..8c584494 100644
--- a/TransactionProcessor.BusinessLogic/EventHandling/MerchantStatementDomainEventHandler.cs
+++ b/TransactionProcessor.BusinessLogic/EventHandling/MerchantStatementDomainEventHandler.cs
@@ -13,6 +13,7 @@
using TransactionProcessor.BusinessLogic.Requests;
using TransactionProcessor.BusinessLogic.Services;
using TransactionProcessor.DomainEvents;
+using Shared.EventStore.Aggregate;
namespace TransactionProcessor.BusinessLogic.EventHandling
{
diff --git a/TransactionProcessor.BusinessLogic/EventHandling/TransactionDomainEventHandler.cs b/TransactionProcessor.BusinessLogic/EventHandling/TransactionDomainEventHandler.cs
index 7578970a..9f88ce12 100644
--- a/TransactionProcessor.BusinessLogic/EventHandling/TransactionDomainEventHandler.cs
+++ b/TransactionProcessor.BusinessLogic/EventHandling/TransactionDomainEventHandler.cs
@@ -3,6 +3,7 @@
using System;
using System.Diagnostics;
using Prometheus;
+using Shared.EventStore.Aggregate;
using TransactionProcessor.BusinessLogic.Requests;
using TransactionProcessor.DomainEvents;
using TransactionProcessor.Models.Contract;
diff --git a/TransactionProcessor.BusinessLogic/Services/AggregateService.cs b/TransactionProcessor.BusinessLogic/Services/AggregateService.cs
index c56d6400..bd5f749d 100644
--- a/TransactionProcessor.BusinessLogic/Services/AggregateService.cs
+++ b/TransactionProcessor.BusinessLogic/Services/AggregateService.cs
@@ -17,7 +17,7 @@
using Shared.Logger;
using TransactionProcessor.Aggregates;
using TransactionProcessor.BusinessLogic.Services;
-
+/*
namespace TransactionProcessor.BusinessLogic.Services {
public interface IAggregateRepositoryResolver {
IAggregateRepository Resolve() where TAggregate : Aggregate where TEvent : DomainEvent;
@@ -358,4 +358,5 @@ public Boolean TryGetValue(String key,
{
return this.MemoryCache.TryGetValue(key, out aggregate);
}
-}
\ No newline at end of file
+}
+*/
\ No newline at end of file
diff --git a/TransactionProcessor.BusinessLogic/TransactionProcessor.BusinessLogic.csproj b/TransactionProcessor.BusinessLogic/TransactionProcessor.BusinessLogic.csproj
index f4fbbb6d..4d0c27b7 100644
--- a/TransactionProcessor.BusinessLogic/TransactionProcessor.BusinessLogic.csproj
+++ b/TransactionProcessor.BusinessLogic/TransactionProcessor.BusinessLogic.csproj
@@ -5,17 +5,17 @@
-
-
+
+
-
+
-
-
-
+
+
+
diff --git a/TransactionProcessor.Client/TransactionProcessor.Client.csproj b/TransactionProcessor.Client/TransactionProcessor.Client.csproj
index cb552d55..cc0ded17 100644
--- a/TransactionProcessor.Client/TransactionProcessor.Client.csproj
+++ b/TransactionProcessor.Client/TransactionProcessor.Client.csproj
@@ -6,8 +6,8 @@
-
-
+
+
diff --git a/TransactionProcessor.Database/TransactionProcessor.Database.csproj b/TransactionProcessor.Database/TransactionProcessor.Database.csproj
index 2ff3a149..7506b3a9 100644
--- a/TransactionProcessor.Database/TransactionProcessor.Database.csproj
+++ b/TransactionProcessor.Database/TransactionProcessor.Database.csproj
@@ -20,9 +20,9 @@
-
+
-
+
diff --git a/TransactionProcessor.DomainEvents/TransactionProcessor.DomainEvents.csproj b/TransactionProcessor.DomainEvents/TransactionProcessor.DomainEvents.csproj
index 01e4cacc..14c19a38 100644
--- a/TransactionProcessor.DomainEvents/TransactionProcessor.DomainEvents.csproj
+++ b/TransactionProcessor.DomainEvents/TransactionProcessor.DomainEvents.csproj
@@ -6,6 +6,6 @@
enable
-
+
diff --git a/TransactionProcessor.IntegrationTesting.Helpers/TransactionProcessor.IntegrationTesting.Helpers.csproj b/TransactionProcessor.IntegrationTesting.Helpers/TransactionProcessor.IntegrationTesting.Helpers.csproj
index d667919d..bd55f83e 100644
--- a/TransactionProcessor.IntegrationTesting.Helpers/TransactionProcessor.IntegrationTesting.Helpers.csproj
+++ b/TransactionProcessor.IntegrationTesting.Helpers/TransactionProcessor.IntegrationTesting.Helpers.csproj
@@ -7,10 +7,10 @@
-
+
-
+
diff --git a/TransactionProcessor.IntegrationTests/TransactionProcessor.IntegrationTests.csproj b/TransactionProcessor.IntegrationTests/TransactionProcessor.IntegrationTests.csproj
index a8ff1b62..c5c36410 100644
--- a/TransactionProcessor.IntegrationTests/TransactionProcessor.IntegrationTests.csproj
+++ b/TransactionProcessor.IntegrationTests/TransactionProcessor.IntegrationTests.csproj
@@ -7,7 +7,7 @@
-
+
@@ -15,9 +15,9 @@
-
-
-
+
+
+
@@ -28,7 +28,7 @@
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
diff --git a/TransactionProcessor.ProjectionEngine/TransactionProcessor.ProjectionEngine.csproj b/TransactionProcessor.ProjectionEngine/TransactionProcessor.ProjectionEngine.csproj
index 8c951d09..09a43a71 100644
--- a/TransactionProcessor.ProjectionEngine/TransactionProcessor.ProjectionEngine.csproj
+++ b/TransactionProcessor.ProjectionEngine/TransactionProcessor.ProjectionEngine.csproj
@@ -7,13 +7,13 @@
-
-
+
+
-
-
+
+
diff --git a/TransactionProcessor.Repository/TransactionProcessor.Repository.csproj b/TransactionProcessor.Repository/TransactionProcessor.Repository.csproj
index e895454a..75e6e1e8 100644
--- a/TransactionProcessor.Repository/TransactionProcessor.Repository.csproj
+++ b/TransactionProcessor.Repository/TransactionProcessor.Repository.csproj
@@ -8,15 +8,15 @@
-
-
+
+
-
-
+
+
diff --git a/TransactionProcessor.Testing/TransactionProcessor.Testing.csproj b/TransactionProcessor.Testing/TransactionProcessor.Testing.csproj
index b76a945f..f6b44102 100644
--- a/TransactionProcessor.Testing/TransactionProcessor.Testing.csproj
+++ b/TransactionProcessor.Testing/TransactionProcessor.Testing.csproj
@@ -6,10 +6,10 @@
-
+
-
+
diff --git a/TransactionProcessor.Tests/TransactionProcessor.Tests.csproj b/TransactionProcessor.Tests/TransactionProcessor.Tests.csproj
index 7b453c05..7924a85a 100644
--- a/TransactionProcessor.Tests/TransactionProcessor.Tests.csproj
+++ b/TransactionProcessor.Tests/TransactionProcessor.Tests.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/TransactionProcessor/Extensions.cs b/TransactionProcessor/Extensions.cs
index c9902005..d4feb037 100644
--- a/TransactionProcessor/Extensions.cs
+++ b/TransactionProcessor/Extensions.cs
@@ -1,16 +1,11 @@
using SimpleResults;
+using TransactionProcessor.Aggregates;
namespace TransactionProcessor
{
- using System;
- using System.Collections.Generic;
- using System.Diagnostics;
- using System.Diagnostics.CodeAnalysis;
- using System.Linq;
- using System.Threading;
- using System.Threading.Tasks;
using EventStore.Client;
using Microsoft.AspNetCore.Builder;
+ using Microsoft.Extensions.Caching.Memory;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
@@ -20,6 +15,13 @@ namespace TransactionProcessor
using Shared.EventStore.SubscriptionWorker;
using Shared.General;
using Shared.Logger;
+ using System;
+ using System.Collections.Generic;
+ using System.Diagnostics;
+ using System.Diagnostics.CodeAnalysis;
+ using System.Linq;
+ using System.Threading;
+ using System.Threading.Tasks;
using TransactionProcessor.BusinessLogic.OperatorInterfaces;
[ExcludeFromCodeCoverage]
@@ -76,6 +78,13 @@ public static void PreWarm(this IApplicationBuilder applicationBuilder) {
EventStoreClientSettings eventStoreClientSettings = EventStoreClientSettings.Create(connectionString);
applicationBuilder.ConfigureSubscriptionService(subscriptionWorkersRoot, eventStoreConnectionString, eventHandlerResolvers, Extensions.log, subscriptionRepositoryResolver).Wait(CancellationToken.None);
+
+ // Setup the aggregate service caching
+ IAggregateService aggregateService = Startup.ServiceProvider.GetService();
+ aggregateService.AddCachedAggregate(typeof(EstateAggregate),null);
+ aggregateService.AddCachedAggregate(typeof(ContractAggregate), null);
+ aggregateService.AddCachedAggregate(typeof(OperatorAggregate), null);
+
}
}
diff --git a/TransactionProcessor/TransactionProcessor.csproj b/TransactionProcessor/TransactionProcessor.csproj
index cd2042e5..3388fb40 100644
--- a/TransactionProcessor/TransactionProcessor.csproj
+++ b/TransactionProcessor/TransactionProcessor.csproj
@@ -10,7 +10,7 @@
-
+
@@ -35,10 +35,10 @@
-
-
+
+
-
+