//Predicate<ImageMongoCache> filter = null public bool LoadImage(WebImage webImage, WebImageRequest imageRequest, HttpRequestParameters requestParameters = null) { //Trace.WriteLine($"WebImageMongo.LoadImage() : \"{webImage.Url}\" _imageCacheManager {_imageCacheManager}"); if (webImage.Url != null && webImage.Image == null) { try { Image image = null; if (_imageCacheManager != null) { ImageMongoCache imageCache = (ImageMongoCache)_imageCacheManager.GetImageCache(webImage.Url, requestParameters); //if (_imageFilter != null && !_imageFilter(imageCache)) // return false; image = imageCache.Image; } else if (imageRequest.LoadImageFromWeb) image = HttpManager.CurrentHttpManager.LoadImage(new HttpRequest { Url = webImage.Url }, requestParameters); if (imageRequest.LoadImageToData) webImage.Image = image; } catch (Exception ex) { Trace.WriteLine("error loading image \"{0}\"", webImage.Url); Trace.WriteLine(ex.Message); //return false; } } return true; }
//public IEnumerable<WebImage> LoadImages(IEnumerable<WebImage> images, ImageRequest imageRequest, HttpRequestParameters requestParameters = null) //{ // foreach (WebImage image in images) // { // if (LoadImage(image, imageRequest, requestParameters)) // yield return image; // } //} public void LoadImages(IEnumerable<WebImage> images, WebImageRequest imageRequest, HttpRequestParameters requestParameters = null) { foreach (WebImage image in images) { LoadImage(image, imageRequest, requestParameters); } }
//Predicate<ImageMongoCache> filter = null public bool LoadImage(WebImage webImage, WebImageRequest imageRequest, HttpRequestParameters requestParameters = null) { //Trace.WriteLine($"WebImageMongo.LoadImage() : \"{webImage.Url}\" _imageCacheManager {_imageCacheManager}"); if (webImage.Url != null && webImage.Image == null) { try { Image image = null; if (_imageCacheManager != null) { ImageMongoCache imageCache = (ImageMongoCache)_imageCacheManager.GetImageCache(webImage.Url, requestParameters); //if (_imageFilter != null && !_imageFilter(imageCache)) // return false; image = imageCache.Image; } else if (imageRequest.LoadImageFromWeb) { image = HttpManager.CurrentHttpManager.LoadImage(new HttpRequest { Url = webImage.Url }, requestParameters); } if (imageRequest.LoadImageToData) { webImage.Image = image; } } catch (Exception ex) { Trace.WriteLine("error loading image \"{0}\"", webImage.Url); Trace.WriteLine(ex.Message); //return false; } } return(true); }
//public IEnumerable<WebImage> LoadImages(IEnumerable<WebImage> images, ImageRequest imageRequest, HttpRequestParameters requestParameters = null) //{ // foreach (WebImage image in images) // { // if (LoadImage(image, imageRequest, requestParameters)) // yield return image; // } //} public void LoadImages(IEnumerable <WebImage> images, WebImageRequest imageRequest, HttpRequestParameters requestParameters = null) { foreach (WebImage image in images) { LoadImage(image, imageRequest, requestParameters); } }
private void LoadImages_v2(WebImageRequest imageRequest) { WebLoadImageManager_v2 <TData> webLoadImageManager = _webDataManager_v4.WebLoadImageManager; if ((_dataLoadedFromWeb && (imageRequest.LoadImageFromWeb || imageRequest.RefreshImage)) || (!_dataLoadedFromWeb && imageRequest.LoadMissingImageFromWeb)) { //if (webLoadImageManager.LoadImagesFromWeb(this)) if (_data is IGetWebImages) { if (webLoadImageManager.LoadImagesFromWeb(imageRequest, ((IGetWebImages)_data).GetWebImages(), _webDataManager_v4.GetImageSubDirectory?.Invoke(this))) { if (_id != null) { _documentStore.SaveWithId(_id, _data); } else { _documentStore.SaveWithKey(_key, _data); } } } } if (imageRequest.LoadImageToData) { webLoadImageManager.LoadImagesToData(_data); } }
private void LoadImages_v1(WebImageRequest imageRequest) { if ((_dataLoadedFromWeb && (imageRequest.LoadImageFromWeb || imageRequest.RefreshImage)) || (!_dataLoadedFromWeb && (imageRequest.LoadImageToData || imageRequest.LoadMissingImageFromWeb))) { WebLoadImageManager_v1.LoadImages(_data, imageRequest); } }
//ILoadImages public void LoadImages(WebImageRequest imageRequest) { WebImageMongoManager.Current.LoadImages(Images, imageRequest); }