public IResourceHandler GetResourceHandler(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request) { var requestUrl = RequestUrl.FromString(request.Url); var api = GetApi(requestUrl.Api); var mimeType = mimeResolver.GetMimeType(Path.GetFileName(requestUrl.Resource)); return(ResourceHandler.FromByteArray(api.ProcessRequest(requestUrl), mimeType)); }
public BlobInfo UpdateBlob(string blobId, string blobName, string blobType, Stream blobData) { var start = DateTime.Now; try { if (string.IsNullOrEmpty(blobId)) { throw new ArgumentNullException(nameof(blobId)); } if (blobData == null) { throw new ArgumentNullException(nameof(blobData)); } if (string.IsNullOrEmpty(blobType)) { blobType = _mimeTypeResolver.GetMimeType(blobName); } var blobInfo = new BlobInfo { Id = blobId, Name = blobName, Type = blobType, Size = blobData.Length, Time = DateTime.UtcNow }; WriteBlobInfo(blobId, blobInfo); WriteBlobData(blobId, blobData); _performanceLog.Log("UpdateBlob", start); return(blobInfo); } catch (Exception e) { _performanceLog.Log("UpdateBlob", start, e); throw; } }
private IEnumerable <SourceFile> GetFilesForFolder(DirectoryInfo directory) { var files = new List <SourceFile>(); foreach (FileInfo f in directory.GetFiles(SEARCH_PATTERN)) { files.Add(new SourceFile(f.Name, f.FullName, _mimeTypeReolver.GetMimeType(f.Name))); } if (files.Any()) { return(files); } return(null); }
public ClipboardItem GetClipboardItem() { var image = _clipboard.GetImage(); if (image != null) { string path = _encoder.EncodeToTempPng(image); return(new ClipboardItem(path, "image/png")); } string filePath = _clipboard.GetFilePath(); if (filePath != null) { string contentType = _mimeTypeResolver.GetMimeType(filePath); return(new ClipboardItem(filePath, contentType)); } return(null); }