/// <summary> /// Constructor /// </summary> /// <param name="logger"> /// The logger to use when events occur. Can be null. /// </param> /// <param name="pipeline"> /// The pipeline that created this FlowData instance. /// </param> /// <param name="evidence"> /// The initial evidence. /// </param> internal FlowData( ILogger <FlowData> logger, IPipelineInternal pipeline, Evidence evidence) { _logger = logger; PipelineInternal = pipeline; _data = new TypedKeyMap(pipeline?.IsConcurrent ?? false); _evidence = evidence; if (_logger != null && _logger.IsEnabled(LogLevel.Debug)) { _logger.LogDebug($"FlowData '{GetHashCode()}' created."); } }