public DynamicMediaHandler() { var storageRoot = new DirectoryInfo(HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["StorageRoot"])); var cacheRoot = new DirectoryInfo(HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["CacheRoot"])); var etagCalculator = new WeakFileInfoETagCalculator(); m_mediaCache = new FileSystemMediaCache(etagCalculator, cacheRoot); //m_mediaCache = new NullMediaCache(); m_storageBackend = new FileSystemStorageBackend(storageRoot, etagCalculator); m_mediaTransformerFactory = new CompositeMediaTransformerFactory( new XmlExifImageInfoMediaTransformer(), new JsonExifImageInfoMediaTransformer(), new ImageMediaTransformerFactory(), new CssLessMediaTransformerFactory(), new CombineCssMediaTransformerFactory(), new EmbedAsBase64CssMediaTransformerFactory(), new CssMinifyingMediaTransformerFactory(), new JavascriptMinifyingMediaTransformerFactory(), new MarkdownMediaTransformerFactory() ); m_formatInfoProvider = new FormatInfoProvider((FormatInfoResolverConfiguration)ConfigurationManager.GetSection("dynamicMediaFormatMappings")); //m_formatInfoProvider = new RegistryFormatInfoProvider(null); }
public DynamicMediaHandler() { var storageRoot = new DirectoryInfo( HttpContext.Current.Server.MapPath( ConfigurationManager.AppSettings[ "StorageRoot" ] ) ); var cacheRoot = new DirectoryInfo( HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["CacheRoot"])); var etagCalculator = new WeakFileInfoETagCalculator(); m_mediaCache = new FileSystemMediaCache(etagCalculator, cacheRoot); //m_mediaCache = new NullMediaCache(); m_storageBackend = new FileSystemStorageBackend( storageRoot, etagCalculator ); m_mediaTransformerFactory = new CompositeMediaTransformerFactory( new XmlExifImageInfoMediaTransformer(), new JsonExifImageInfoMediaTransformer(), new ImageMediaTransformerFactory(), new CssLessMediaTransformerFactory(), new CombineCssMediaTransformerFactory(), new EmbedAsBase64CssMediaTransformerFactory(), new CssMinifyingMediaTransformerFactory(), new JavascriptMinifyingMediaTransformerFactory(), new MarkdownMediaTransformerFactory() ); m_formatInfoProvider = new FormatInfoProvider( (FormatInfoResolverConfiguration) ConfigurationManager.GetSection( "dynamicMediaFormatMappings" ) ); //m_formatInfoProvider = new RegistryFormatInfoProvider(null); }
public CommandRunnerMongo(IConfiguration config, IMediaCache cache, MongoDb.CaveContext db, bool isCommandLine = false) { _config = config ?? throw new ArgumentNullException(nameof(config)); _cache = cache ?? throw new ArgumentNullException(nameof(config)); _db = db ?? throw new ArgumentNullException(nameof(db)); this._isCommandLine = isCommandLine; Console.WriteLine($"Database at: {_db.ConnectionString}"); _rng = RandomNumberGenerator.Create(); _commands = new Dictionary <Type, Func <object, object> >(); foreach (var method in this.GetType().GetMethods()) { var pars = method.GetParameters(); if (pars.Length == 1 && pars[0].ParameterType.IsSubclassOf(typeof(API.Request)) && method.ReturnType.IsSubclassOf(typeof(API.Response))) { Type requestType = pars[0].ParameterType; _commands[requestType] = (request) => { var response = method.Invoke(this, new object[] { request }); return(response); }; Console.WriteLine("Added command for {0}", requestType.Name); } } BootStrap(); }
public CaveCacheHttp(IConfiguration conf, IMediaCache cache, CaveContext db) { JsonConvert.DefaultSettings = () => { var settings = new JsonSerializerSettings(); settings.Converters.Add(new ObjectIdConverter()); settings.Converters.Add(new Newtonsoft.Json.Converters.StringEnumConverter()); return(settings); }; _cmd = new CommandRunnerMongo(conf, cache, db, false); _guard = new ExecutionGuard(); _listener = new HttpListener(); _listener.Prefixes.Add("http://127.0.0.1:1222/"); _listener.Start(); _listener.BeginGetContext(HandleAPI, _listener); Console.WriteLine("Listening"); _timer = new Timer(OnUpdate, null, 0, 60 * 1000); }
public MediaCacheCleanupWatchdog(IMediaCache mc) { mediaCache = mc; }
public DownloadHandlerService(IMediaDownloader mediaDownloader, IMediaCache mediaCache) { downloader = mediaDownloader; cache = mediaCache; }
public LocalMediaCache(IMediaCache mc) { MediaCache = mc; }