예제 #1
0
        protected virtual Task CollectFilesAsync(List <IFileBundleSourceFilterItem> fileList, IBundleBuildContext context)
        {
            var directoryInfo = new GlobbingDirectoryInfo(_fileProvider, string.Empty);

            var n = _includes.Length;

            for (var i = 0; i < n; i++)
            {
                context.CancellationToken.ThrowIfCancellationRequested();

                Include include = _includes[i];

                PatternMatchingResult matchingResult = include.Matcher.Execute(directoryInfo);
                if (matchingResult.HasMatches)
                {
                    fileList.AddRange(matchingResult.Files.Select(m => CreateBuildItem(include, UrlUtils.NormalizePath(m.Path), context)));
                }
            }

            return(Task.CompletedTask);
        }
예제 #2
0
        protected virtual async Task ExecuteFiltersAsync(List <IFileBundleSourceFilterItem> fileList, IBundleBuildContext context)
        {
            var n = _fileFilters.Count;

            for (var i = 0; i < n; i++)
            {
                IFileBundleSourceFilter filter = _fileFilters[i];
                await filter.FilterAsync(fileList, context);

                filter.Filter(fileList, context);
            }
        }
예제 #3
0
 public FileBundleItemTransformContext(IBundleBuildContext buildContext)
     : base(buildContext)
 {
 }