Example #1
0
        private IEnumerable <SsrsObject> MapFilesToSsrsObjects(SsrsObjectFilter filter)
        {
            var rootContainer = new DirectoryInfo(directoryPath);

            if (!rootContainer.Exists)
            {
                yield break;
            }
            var siteFilter = GetSiteFilter(filter.Site);

            foreach (var relativePath in new RelativeDirectoryExplorer().EnumerateRelativeFiles(rootContainer))
            {
                var containerPath = basePath + SsrsObjectPath.FromFileSystemPath(Path.GetDirectoryName(relativePath));
                var ssrsObject    = new SsrsObjectFileReader().Read(Path.Combine(directoryPath, relativePath), containerPath);
                if (filter.Excludes(ssrsObject))
                {
                    continue;
                }
                if (siteFilter?.Matches(ssrsObject.Path) == false)
                {
                    continue;
                }
                yield return(ssrsObject);
            }
        }
Example #2
0
        private IEnumerable <SsrsObject> ReadWithFilter(SsrsObjectFilter filter)
        {
            var ssrsObject = new SsrsObjectFileReader().Read(filePath, basePath);

            if (filter.Excludes(ssrsObject))
            {
                yield break;
            }
            yield return(ssrsObject);
        }