public ISourceRegistration <T> CreateAndRegisterSource(ISourceFactory <T> factory) { var source = factory.CreateSource(); var registration = new RegisteredEnergyObservationSourceWrapper <T>(this, source); _registeredSources.Add(registration); return(registration); }
public RegisteredSourceProcessingGroup(RegisteredEnergyObservationSourceWrapper sourceRegistration, IProcessingFactory <IEnergyObservation> processingFactory) { _sourceRegistration = sourceRegistration; Processor = processingFactory.CreateProcessor(); Storage = processingFactory.CreateStorage(); Analizer = processingFactory.CreateAnalizer(); _processorSubscription = _sourceRegistration.Subscribe(Processor); }
public RegisteredSourceProcessingGroup(RegisteredEnergyObservationSourceWrapper <T> sourceRegistration, IProcessingFactory <T> factory) { _sourceRegistration = sourceRegistration ?? throw new ArgumentNullException(nameof(sourceRegistration)); if (factory == null) { throw new ArgumentNullException(nameof(factory)); } Processor = factory.CreateProcessor(); Storage = factory.CreateStorage(); Analizer = factory.CreateAnalizer(); _processorSubscription = _sourceRegistration.Subscribe(Processor); }
internal void RemoveRegistration(RegisteredEnergyObservationSourceWrapper <T> registration) { _registeredSources.Remove(registration); }