/// <summary>
        /// Creates an instance of the PropertyTrackingEvaluatorDataWrapper class.
        /// </summary>
        /// <param name="dataToWrap">The underlying <see cref="IEvaluatorData{P,I,M,D}"/> to wrap for property tracking.</param>
        /// <param name="evaluationLoggingContext">The <see cref="EvaluationLoggingContext"/> used to log relevant events.</param>
        /// <param name="settingValue">Property tracking setting value</param>
        public PropertyTrackingEvaluatorDataWrapper(IEvaluatorData <P, I, M, D> dataToWrap, EvaluationLoggingContext evaluationLoggingContext, int settingValue)
        {
            ErrorUtilities.VerifyThrowInternalNull(dataToWrap, nameof(dataToWrap));
            ErrorUtilities.VerifyThrowInternalNull(evaluationLoggingContext, nameof(evaluationLoggingContext));

            _wrapped = dataToWrap;
            _evaluationLoggingContext = evaluationLoggingContext;
            _settings = (PropertyTrackingSetting)settingValue;
        }
 public LazyItemEvaluator(IEvaluatorData <P, I, M, D> data, IItemFactory <I, I> itemFactory, LoggingContext loggingContext)
 {
     _outerEvaluatorData = data;
     _outerExpander      = new Expander <P, I>(_outerEvaluatorData, _outerEvaluatorData);
     _evaluatorData      = new EvaluatorData(_outerEvaluatorData, itemType => GetItems(itemType));
     _expander           = new Expander <P, I>(_evaluatorData, _evaluatorData);
     _itemFactory        = itemFactory;
     _loggingContext     = loggingContext;
 }
示例#3
0
        public LazyItemEvaluator(IEvaluatorData <P, I, M, D> data, IItemFactory <I, I> itemFactory, BuildEventContext buildEventContext, ILoggingService loggingService)
        {
            _outerEvaluatorData = data;
            _outerExpander      = new Expander <P, I>(_outerEvaluatorData, _outerEvaluatorData);
            _evaluatorData      = new EvaluatorData(_outerEvaluatorData, itemType => GetItems(itemType).Select(itemData => itemData.Item).ToList());
            _expander           = new Expander <P, I>(_evaluatorData, _evaluatorData);
            _itemFactory        = itemFactory;

            _buildEventContext = buildEventContext;
            _loggingService    = loggingService;
        }
        public LazyItemEvaluator(IEvaluatorData <P, I, M, D> data, IItemFactory <I, I> itemFactory, LoggingContext loggingContext, EvaluationProfiler evaluationProfiler, EvaluationContext evaluationContext)
        {
            _outerEvaluatorData = data;
            _outerExpander      = new Expander <P, I>(_outerEvaluatorData, _outerEvaluatorData);
            _evaluatorData      = new EvaluatorData(_outerEvaluatorData, itemType => GetItems(itemType));
            _expander           = new Expander <P, I>(_evaluatorData, _evaluatorData);
            _itemFactory        = itemFactory;
            _loggingContext     = loggingContext;
            _evaluationProfiler = evaluationProfiler;

            EngineFileUtilities = new EngineFileUtilities(new FileMatcher(evaluationContext.FileSystem, evaluationContext.FileEntryExpansionCache));
        }
示例#5
0
 public EvaluatorData(IEvaluatorData <P, I, M, D> wrappedData, Func <string, ICollection <I> > itemGetter)
 {
     _wrappedData = wrappedData;
     _itemGetter  = itemGetter;
 }