private IProducer <CloseableReference <IPooledByteBuffer> > GetBasicEncodedImageSequence( ImageRequest imageRequest) { Preconditions.CheckNotNull(imageRequest); Uri uri = imageRequest.SourceUri; Preconditions.CheckNotNull(uri, "Uri is null."); if (UriUtil.IsNetworkUri(uri)) { lock (_gate) { if (_encodedImageProducerSequence == null) { _encodedImageProducerSequence = new RemoveImageTransformMetaDataProducer( GetBackgroundNetworkFetchToEncodedMemorySequence()); } } return(_encodedImageProducerSequence); } else if (UriUtil.IsAppDataUri(uri)) { return(GetEncodedLocalImageFileFetchSequence()); } else if (UriUtil.IsAppPackageUri(uri)) { return(GetEncodedLocalAssetFetchSequence()); } else if (UriUtil.IsAppResourceUri(uri)) { return(GetEncodedLocalResourceFetchSequence()); } else if (UriUtil.IsDataUri(uri)) { return(GetEncodedDataFetchSequence()); } else if (UriUtil.IsFileUri(uri)) { return(GetEncodedLocalImageFileFetchSequence()); } else if (UriUtil.IsFutureAccessListUri(uri)) { return(GetEncodedFutureAccessListFetchSequence()); } else { string uriString = uri.ToString(); if (uriString.Length > 30) { uriString = uriString.Substring(0, 30) + "..."; } throw new Exception("Unsupported uri scheme! Uri is: " + uriString); } }
private IProducer <CloseableReference <CloseableImage> > GetBasicDecodedImageSequence( ImageRequest imageRequest) { Preconditions.CheckNotNull(imageRequest); Uri uri = imageRequest.SourceUri; Preconditions.CheckNotNull(uri, "Uri is null."); if (UriUtil.IsNetworkUri(uri)) { return(GetNetworkFetchSequence()); } else if (UriUtil.IsAppDataUri(uri)) { if (MediaUtils.IsVideo(MediaUtils.ExtractMime(uri.ToString()))) { return(GetLocalVideoFileFetchSequence()); } else { return(GetLocalImageFileFetchSequence()); } } else if (UriUtil.IsAppPackageUri(uri)) { return(GetLocalAssetFetchSequence()); } else if (UriUtil.IsAppResourceUri(uri)) { return(GetLocalResourceFetchSequence()); } else if (UriUtil.IsDataUri(uri)) { return(GetDataFetchSequence()); } else if (UriUtil.IsFileUri(uri)) { return(GetLocalImageFileFetchSequence()); } else if (UriUtil.IsFutureAccessListUri(uri)) { return(GetFutureAccessListFetchSequence()); } else { string uriString = uri.ToString(); if (uriString.Length > 30) { uriString = uriString.Substring(0, 30) + "..."; } throw new Exception("Unsupported uri scheme! Uri is: " + uriString); } }