com.xtremelabs.imageutils
Class ImageCacher
java.lang.Object
com.xtremelabs.imageutils.ImageCacher
- All Implemented Interfaces:
- AsyncOperationsObserver, ImageDiskObserver
public class ImageCacher
- extends java.lang.Object
- implements ImageDiskObserver, AsyncOperationsObserver
This class defensively handles requests from four locations: LifecycleReferenceManager, ImageMemoryCacherInterface, ImageDiskCacherInterface, ImageNetworkInterface and the AsyncOperationsMaps.
The job of this class is to "route" messages appropriately in order to ensure synchronized handling of image downloading and caching operations.
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
getInstance
public static ImageCacher getInstance(Context appContext)
getBitmap
public com.xtremelabs.imageutils.ImageResponse getBitmap(com.xtremelabs.imageutils.ImageRequest imageRequest,
ImageCacher.ImageCacherListener imageCacherListener)
getSampleSize
public int getSampleSize(com.xtremelabs.imageutils.ImageRequest imageRequest)
- Specified by:
getSampleSize
in interface AsyncOperationsObserver
precacheImageToDisk
public void precacheImageToDisk(com.xtremelabs.imageutils.ImageRequest imageRequest)
- Caches the image at the provided uri to disk. If the image is already on disk, it gets bumped on the eviction queue.
- Parameters:
uri
-
clearMemCache
public void clearMemCache()
setMaximumMemCacheSize
public void setMaximumMemCacheSize(long size)
setMaximumDiskCacheSize
public void setMaximumDiskCacheSize(long maxSizeInBytes)
cancelRequestForBitmap
public void cancelRequestForBitmap(ImageCacher.ImageCacherListener imageCacherListener)
onImageDecoded
public void onImageDecoded(DecodeSignature decodeSignature,
Bitmap bitmap,
ImageReturnedFrom returnedFrom)
- Specified by:
onImageDecoded
in interface ImageDiskObserver
onImageDecodeFailed
public void onImageDecodeFailed(DecodeSignature decodeSignature,
java.lang.String message)
- Specified by:
onImageDecodeFailed
in interface ImageDiskObserver
onImageDownloaded
public void onImageDownloaded(java.lang.String uri)
onImageDownloadFailed
public void onImageDownloadFailed(java.lang.String uri,
java.lang.String message)
onImageDecodeRequired
public void onImageDecodeRequired(DecodeSignature decodeSignature)
- Specified by:
onImageDecodeRequired
in interface AsyncOperationsObserver
isNetworkRequestPending
public boolean isNetworkRequestPending(java.lang.String uri)
- Specified by:
isNetworkRequestPending
in interface AsyncOperationsObserver
isDecodeRequestPending
public boolean isDecodeRequestPending(DecodeSignature decodeSignature)
- Specified by:
isDecodeRequestPending
in interface AsyncOperationsObserver
setNetworkRequestCreator
public void setNetworkRequestCreator(NetworkRequestCreator networkRequestCreator)
onImageDetailsRetrieved
public void onImageDetailsRetrieved(java.lang.String uri)
- Specified by:
onImageDetailsRetrieved
in interface ImageDiskObserver
onImageDetailsRequestFailed
public void onImageDetailsRequestFailed(java.lang.String uri,
java.lang.String message)
- Specified by:
onImageDetailsRequestFailed
in interface ImageDiskObserver
onImageDetailsRequired
public void onImageDetailsRequired(java.lang.String uri)
- Specified by:
onImageDetailsRequired
in interface AsyncOperationsObserver
invalidateFileSystemUri
public void invalidateFileSystemUri(java.lang.String uri)