билдится на старом дотнете
This commit is contained in:
@@ -1,40 +1,42 @@
|
||||
using mROA.Abstract;
|
||||
using System;
|
||||
using mROA.Abstract;
|
||||
|
||||
namespace mROA.Implementation;
|
||||
|
||||
public class CreativeRepresentationModuleProducer : IRepresentationModuleProducer
|
||||
namespace mROA.Implementation
|
||||
{
|
||||
private Type _reprModuleType;
|
||||
private IInjectableModule[] _creationModules;
|
||||
private IConnectionHub? _hub;
|
||||
|
||||
public CreativeRepresentationModuleProducer(IInjectableModule[] creationModules, Type reprModuleType)
|
||||
public class CreativeRepresentationModuleProducer : IRepresentationModuleProducer
|
||||
{
|
||||
_creationModules = creationModules;
|
||||
_reprModuleType = reprModuleType;
|
||||
}
|
||||
private Type _reprModuleType;
|
||||
private IInjectableModule[] _creationModules;
|
||||
private IConnectionHub? _hub;
|
||||
|
||||
public CreativeRepresentationModuleProducer(IInjectableModule[] creationModules, Type reprModuleType)
|
||||
{
|
||||
_creationModules = creationModules;
|
||||
_reprModuleType = reprModuleType;
|
||||
}
|
||||
|
||||
|
||||
public void Inject<T>(T dependency)
|
||||
{
|
||||
if (dependency is IConnectionHub interactionModule)
|
||||
_hub = interactionModule;
|
||||
}
|
||||
public void Inject<T>(T dependency)
|
||||
{
|
||||
if (dependency is IConnectionHub interactionModule)
|
||||
_hub = interactionModule;
|
||||
}
|
||||
|
||||
public IRepresentationModule Produce(int id)
|
||||
{
|
||||
if (_hub == null)
|
||||
throw new NullReferenceException("Interaction module is null");
|
||||
public IRepresentationModule Produce(int id)
|
||||
{
|
||||
if (_hub == null)
|
||||
throw new NullReferenceException("Interaction module is null");
|
||||
|
||||
var produced =
|
||||
Activator.CreateInstance(_reprModuleType) as IRepresentationModule ??
|
||||
throw new Exception("Bad serialization module type");
|
||||
var produced =
|
||||
Activator.CreateInstance(_reprModuleType) as IRepresentationModule ??
|
||||
throw new Exception("Bad serialization module type");
|
||||
|
||||
foreach (var creationModule in _creationModules)
|
||||
produced.Inject(creationModule);
|
||||
foreach (var creationModule in _creationModules)
|
||||
produced.Inject(creationModule);
|
||||
|
||||
produced.Inject(_hub.GetInteracion(id));
|
||||
produced.Inject(_hub.GetInteracion(id));
|
||||
|
||||
return produced;
|
||||
return produced;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user