private void OnChange(object sender, FileSystemEventArgs e) { var path = e.FullPath; RRTracer.Trace("watcher watched {0}", path); var guid = uriBuilder.ParseKey(path.Replace('\\', '/')); var contentSignature = uriBuilder.ParseSignature(path.Replace('\\', '/')); if (guid != Guid.Empty) { var resourceType = RRContainer.Current.GetAllInstances <IResourceType>().SingleOrDefault(x => path.EndsWith(x.FileName, true, CultureInfo.InvariantCulture)); if (resourceType != null) { RRTracer.Trace("New Content {0} and watched: {1}", e.ChangeType, path); if (e.ChangeType == WatcherChangeTypes.Deleted) { ReductionRepository.RemoveReduction(guid); } if ((e.ChangeType == WatcherChangeTypes.Created || e.ChangeType == WatcherChangeTypes.Changed)) { ReductionRepository.AddReduction(guid, uriBuilder.BuildResourceUrl(guid, contentSignature, resourceType.GetType())); } } } }
public IDictionary <Guid, string> GetSavedUrls() { RRTracer.Trace("SqlServerStore Looking for previously saved content."); var files = repository.GetActiveFiles(); return(files.ToDictionary(file => uriBuilder.ParseKey(file), file => uriBuilder.BuildResourceUrl(uriBuilder.ParseKey(file), uriBuilder.ParseSignature(file), RRContainer.GetAllResourceTypes().SingleOrDefault(x => file.EndsWith(x.FileName)).GetType()))); }
public virtual string Process(Guid key, string urls) { RRTracer.Trace("beginning reducing process for {0}", urls); var urlList = SplitUrls(urls); var processedResource = ProcessResource(key, urlList); var virtualfileName = string.Empty; if (processedResource != null) { var bytes = Encoding.UTF8.GetBytes(minifier.Minify <T>(processedResource)); virtualfileName = uriBuilder.BuildResourceUrl <T>(key, bytes); store.Save(bytes, virtualfileName, urls); } RRTracer.Trace("finishing reducing process for {0}", urls); return(virtualfileName); }
public virtual string Process(Guid key, string urls, string host) { RRTracer.Trace("beginning reducing process for {0}", urls); var urlList = SplitUrls(urls); var processedResource = ProcessResource(key, urlList, host); var virtualfileName = string.Empty; if (processedResource != null) { RRTracer.Trace("beginning minify for {0} with {1} length", urls, processedResource.Length); var minified = minifier.Minify <T>(processedResource); RRTracer.Trace("{0} minified to {1} bytes", urls, minified.Length); var bytes = Encoding.UTF8.GetBytes(minified); RRTracer.Trace("{0} encoded to {1} bytes", urls, bytes.Length); virtualfileName = uriBuilder.BuildResourceUrl <T>(key, bytes); store.Save(bytes, virtualfileName, urls); } RRTracer.Trace("finishing reducing process for {0}", urls); return(virtualfileName); }