мультиклиентский репозиторий введен в эксплуатацию

This commit is contained in:
2025-02-18 17:50:15 +03:00
parent ec5d594e4a
commit e1a091e306
3 changed files with 7 additions and 5 deletions
@@ -6,11 +6,12 @@ namespace mROA.Implementation.Backend;
public class HubRequestExtractor : IInjectableModule
{
private IConnectionHub _hub;
private IContextRepository? _contextRepository;
private IMethodRepository? _methodRepository;
private ISerializationToolkit? _serializationToolkit;
private IExecuteModule? _executeModule;
public void Inject<T>(T dependency)
{
switch (dependency)
@@ -38,7 +39,10 @@ public class HubRequestExtractor : IInjectableModule
{
var extractor = new RequestExtractor();
extractor.Inject(interaction);
extractor.Inject(_contextRepository);
if (_contextRepository is IContextRepositoryHub contextHub)
extractor.Inject(contextHub.GetRepository(interaction.Id));
else
extractor.Inject(interaction);
extractor.Inject(_methodRepository);
extractor.Inject(_serializationToolkit);
extractor.Inject(_executeModule);
@@ -51,6 +51,6 @@ public class MultiClientContextRepository(Func<int, IContextRepository> produceR
public IContextRepository GetRepository(int clientId)
{
return _repositories[clientId];
return GetRepositoryByClientId(clientId);
}
}
@@ -50,8 +50,6 @@ public class RequestExtractor : IRequestExtractor
await Task.Yield();
var multiClientOwnershipRepository = TransmissionConfig.OwnershipRepository as MultiClientOwnershipRepository;
multiClientOwnershipRepository?.RegisterOwnership(_representationModule.Id);
try