protected void ActivateCooker(ISourceDataCooker <T, TContext, TKey> sourceDataCooker) { Guard.NotNull(sourceDataCooker, nameof(sourceDataCooker)); this.activeCookers.Add(sourceDataCooker); if (sourceDataCooker.Options.HasFlag(SourceDataCookerOptions.ReceiveAllDataElements)) { this.activeReceiveAllDataCookers.Add(sourceDataCooker); } }
public void RegisterSourceDataCooker(ISourceDataCooker <T, TContext, TKey> dataCooker) { Guard.NotNull(dataCooker, nameof(dataCooker)); if (!StringComparer.Ordinal.Equals(dataCooker.Path.SourceParserId, SourceParser.Id)) { throw new ArgumentException( $"The {nameof(IDataCookerDescriptor.Path.SourceParserId)} of {nameof(dataCooker)} doesn't match " + $"{nameof(SourceParser)}.", nameof(dataCooker)); } if (!this.cookerById.ContainsKey(dataCooker.Path)) { this.cookerById[dataCooker.Path] = dataCooker; this.registeredCookers.Add(dataCooker); if (dataCooker.Options.HasFlag(SourceDataCookerOptions.ReceiveAllDataElements)) { this.receiveAllDataCookers.Add(dataCooker); } } }
public void RegisterSourceDataCooker(ISourceDataCooker <T, TContext, TKey> dataCooker) { this.RegisterSourceDataCookerAction?.Invoke(dataCooker); }
/// <summary> /// Override to be notified when a source data cooker has been enabled for the session. /// </summary> /// <param name="sourceDataCooker">The cooker that was enabled.</param> protected virtual void OnDataCookerEnabled(ISourceDataCooker <T, TContext, TKey> sourceDataCooker) { }