private static void CreateCssSpriteFiles(IPathProvider pathProvider, CssSpriteGroupElementCollection cssSpriteGroups, CssSpriteCreator cssSpriteCreator) { _cssSpriteOutput = "Css Sprite Files created:\r\n"; foreach (CssSpriteGroupElement group in cssSpriteGroups) { var files = new List <ImageFile>(); foreach (ImageFileElement imageFile in group.Files) { var file = new ImageFile() { FilePath = imageFile.FilePath, Name = imageFile.Name }; files.Add(file); } var cssOutPutUri = string.IsNullOrEmpty(group.CssUrl) ? new Uri(pathProvider.ToAbsolute(group.CssOutputFilePath), UriKind.Relative) : new Uri(group.CssUrl, UriKind.RelativeOrAbsolute); var cssOutputPath = new FileInfo(pathProvider.MapPath(group.CssOutputFilePath)); var imageOutputUri = string.IsNullOrEmpty(group.ImageUrl) ? new Uri(pathProvider.ToAbsolute(group.ImageOutputFilePath), UriKind.Relative) : new Uri(group.ImageUrl, UriKind.RelativeOrAbsolute); var imageOutputPath = new FileInfo(pathProvider.MapPath(group.ImageOutputFilePath)); cssSpriteCreator.AddFiles(imageOutputPath, imageOutputUri, cssOutputPath, files); _cssSpriteOutput += cssOutPutUri + "(" + group.Name + ")\r\n"; _cssSpriteOutput += imageOutputUri + "(" + group.Name + ")\r\n"; foreach (var imageFile in files) { imageOutputUri = new Uri(pathProvider.ToAbsolute(imageFile.FilePath), UriKind.Relative); _cssSpriteOutput += " " + imageOutputUri + "\r\n"; } } }
public StringBuilder ProcessGroups(IPathProvider pathProvider, ICssSpriteCreator cssSpriteCreator, CssSpriteGroupElementCollection cssSpriteGroups) { var output = new StringBuilder("Css Sprite Files created:\r\n"); Action<CssSpriteGroupToProcess> processJsGroup = ProcessJsGroup; var cssSpriteGroupToProcess = cssSpriteGroups.Cast<CssSpriteGroupElement>() .Select(group => new CssSpriteGroupToProcess { CssSpriteCreator = cssSpriteCreator, PathProvider = pathProvider, Group = group, Output = output }).ToList(); if (cssSpriteGroupToProcess.Any()) { ParallelExecute.EachParallel(cssSpriteGroupToProcess, processJsGroup); } else { output.AppendFormat("No files to process"); } return output; }
private CrusherHelper() { CacheManager = new HttpCacheManager(); QuerystringKeyName = CurrentCrusherConfiguration.Current.QuerystringKeyName; CssGroups = CurrentCrusherConfiguration.Current.CssGroups; JsGroups = CurrentCrusherConfiguration.Current.JsGroups; CssSpriteGroups = CurrentCrusherConfiguration.Current.CssSpriteGroups; RetryableFileOpener = new RetryableFileOpener(); Hasher = new Md5Hasher(RetryableFileOpener); AmdModule = new AmdModule(RetryableFileOpener); }
private CrusherHelper() { CacheManager = new HttpCacheManager(); QuerystringKeyName = CurrentCrusherConfiguration.Current.QuerystringKeyName; CssGroups = CurrentCrusherConfiguration.Current.CssGroups; JsGroups = CurrentCrusherConfiguration.Current.JsGroups; CssSpriteGroups = CurrentCrusherConfiguration.Current.CssSpriteGroups; RetryableFileOpener = new RetryableFileOpener(); Hasher = new Md5Hasher(RetryableFileOpener); AmdModule = new AmdModule(RetryableFileOpener); }
private static void CreateCssSpriteFiles(IPathProvider pathProvider, CssSpriteGroupElementCollection cssSpriteGroups, CssSpriteCreator cssSpriteCreator) { _cssSpriteOutput = "Css Sprite Files created:\r\n"; foreach (CssSpriteGroupElement group in cssSpriteGroups) { var files = new List<ImageFile>(); foreach (ImageFileElement imageFile in group.Files) { var file = new ImageFile() { FilePath = imageFile.FilePath, Name = imageFile.Name }; files.Add(file); } var cssOutPutUri = string.IsNullOrEmpty(group.CssUrl) ? new Uri(pathProvider.ToAbsolute(group.CssOutputFilePath), UriKind.Relative) : new Uri(group.CssUrl, UriKind.RelativeOrAbsolute); var cssOutputPath = new FileInfo(pathProvider.MapPath(group.CssOutputFilePath)); var imageOutputUri = string.IsNullOrEmpty(group.ImageUrl) ? new Uri(pathProvider.ToAbsolute(group.ImageOutputFilePath), UriKind.Relative) : new Uri(group.ImageUrl, UriKind.RelativeOrAbsolute); var imageOutputPath = new FileInfo(pathProvider.MapPath(group.ImageOutputFilePath)); cssSpriteCreator.AddFiles(imageOutputPath, imageOutputUri, cssOutputPath, files); _cssSpriteOutput += cssOutPutUri + "(" + group.Name + ")\r\n"; _cssSpriteOutput += imageOutputUri + "(" + group.Name + ")\r\n"; foreach (var imageFile in files) { imageOutputUri = new Uri(pathProvider.ToAbsolute(imageFile.FilePath), UriKind.Relative); _cssSpriteOutput += " " + imageOutputUri + "\r\n"; } } }
public StringBuilder ProcessGroups(IPathProvider pathProvider, ICssSpriteCreator cssSpriteCreator, CssSpriteGroupElementCollection cssSpriteGroups) { var output = new StringBuilder("Css Sprite Files created:\r\n"); Action <CssSpriteGroupToProcess> processJsGroup = ProcessJsGroup; var cssSpriteGroupToProcess = cssSpriteGroups.Cast <CssSpriteGroupElement>() .Select(group => new CssSpriteGroupToProcess { CssSpriteCreator = cssSpriteCreator, PathProvider = pathProvider, Group = group, Output = output }).ToList(); if (cssSpriteGroupToProcess.Any()) { ParallelExecute.EachParallel(cssSpriteGroupToProcess, processJsGroup); } else { output.AppendFormat("No files to process"); } return(output); }