fix for messages

This commit is contained in:
2022-02-07 16:02:21 +01:00
parent 159013d295
commit 8d2abc28ff
4 changed files with 13 additions and 4 deletions
@@ -27,7 +27,7 @@ public class MessageAggregator : IMessageAggregator
/// <inheritdoc />
public void Subscribe<TMessage, TMessageHandler>()
public void Activate<TMessage, TMessageHandler>()
where TMessage : class, IMessage
where TMessageHandler : IMessageHandler<TMessage>
{
@@ -46,7 +46,7 @@ public interface IMessageAggregator
/// <summary>
/// Subscribes the specified handler to the spified message type
/// </summary>
void Subscribe<TMessage, TMessageHandler>()
void Activate<TMessage, TMessageHandler>()
where TMessage : class, IMessage
where TMessageHandler : IMessageHandler<TMessage>;
}
@@ -8,7 +8,7 @@ internal class ZeroCommunicationModule : ZeroModule
public override void ConfigureServices(IServiceCollection services, IConfiguration configuration)
{
services.AddScoped<IInterceptors, Interceptors>();
services.AddSingleton<IMessageAggregator, MessageAggregator>();
services.AddScoped<IMessageAggregator, MessageAggregator>();
services.AddTransient<IHandlerHolder, HandlerHolder>();
services.AddTransient(typeof(Lazy<>), typeof(LazilyResolved<>));
}
+4
View File
@@ -25,6 +25,8 @@ public abstract class EntityStore<T> : IEntityStore<T> where T : ZeroIdEntity, I
protected IZeroOptions Options { get; private set; }
protected IMessageAggregator Messages { get; private set; }
public EntityStore(IStoreContext ctx)
{
@@ -32,6 +34,8 @@ public abstract class EntityStore<T> : IEntityStore<T> where T : ZeroIdEntity, I
Interceptors = ctx.Interceptors;
Options = ctx.Options;
Operations = new StoreOperations(ctx);
Messages = ctx.Messages;
}
+6 -1
View File
@@ -14,8 +14,10 @@ public class StoreContext : IStoreContext
public IServiceProvider Services { get; private set; }
public IMessageAggregator Messages { get; private set; }
public StoreContext(IZeroContext context, IInterceptors interceptors, IStoreCache cache, IServiceProvider serviceProvider)
public StoreContext(IZeroContext context, IInterceptors interceptors, IStoreCache cache, IServiceProvider serviceProvider, IMessageAggregator messages)
{
Store = context.Store;
Options = context.Options;
@@ -23,6 +25,7 @@ public class StoreContext : IStoreContext
Interceptors = interceptors;
Cache = cache;
Services = serviceProvider;
Messages = messages;
}
}
@@ -40,4 +43,6 @@ public interface IStoreContext
IStoreCache Cache { get; }
IServiceProvider Services { get; }
IMessageAggregator Messages { get; }
}