com.nostra13.universalimageloader.cache.memory
Class LimitedMemoryCache

java.lang.Object
  extended by com.nostra13.universalimageloader.cache.memory.BaseMemoryCache
      extended by com.nostra13.universalimageloader.cache.memory.LimitedMemoryCache
All Implemented Interfaces:
MemoryCache, MemoryCacheAware<String,android.graphics.Bitmap>
Direct Known Subclasses:
FIFOLimitedMemoryCache, LargestLimitedMemoryCache, LRULimitedMemoryCache, UsingFreqLimitedMemoryCache

public abstract class LimitedMemoryCache
extends BaseMemoryCache

Limited cache. Provides object storing. Size of all stored bitmaps will not to exceed size limit ( getSizeLimit()).

NOTE: This cache uses strong and weak references for stored Bitmaps. Strong references - for limited count of Bitmaps (depends on cache size), weak references - for all other cached Bitmaps.

Since:
1.0.0
Author:
Sergey Tarasevich (nostra13[at]gmail[dot]com)
See Also:
BaseMemoryCache

Constructor Summary
LimitedMemoryCache(int sizeLimit)
           
 
Method Summary
 void clear()
          Remove all items from cache
protected abstract  int getSize(android.graphics.Bitmap value)
           
protected  int getSizeLimit()
           
 boolean put(String key, android.graphics.Bitmap value)
          Puts value into cache by key
 android.graphics.Bitmap remove(String key)
          Removes item by key
protected abstract  android.graphics.Bitmap removeNext()
           
 
Methods inherited from class com.nostra13.universalimageloader.cache.memory.BaseMemoryCache
createReference, get, keys
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LimitedMemoryCache

public LimitedMemoryCache(int sizeLimit)
Parameters:
sizeLimit - Maximum size for cache (in bytes)
Method Detail

put

public boolean put(String key,
                   android.graphics.Bitmap value)
Description copied from interface: MemoryCacheAware
Puts value into cache by key

Specified by:
put in interface MemoryCacheAware<String,android.graphics.Bitmap>
Overrides:
put in class BaseMemoryCache
Returns:
true - if value was put into cache successfully, false - if value was not put into cache

remove

public android.graphics.Bitmap remove(String key)
Description copied from interface: MemoryCacheAware
Removes item by key

Specified by:
remove in interface MemoryCacheAware<String,android.graphics.Bitmap>
Overrides:
remove in class BaseMemoryCache

clear

public void clear()
Description copied from interface: MemoryCacheAware
Remove all items from cache

Specified by:
clear in interface MemoryCacheAware<String,android.graphics.Bitmap>
Overrides:
clear in class BaseMemoryCache

getSizeLimit

protected int getSizeLimit()

getSize

protected abstract int getSize(android.graphics.Bitmap value)

removeNext

protected abstract android.graphics.Bitmap removeNext()


Copyright © 2011-2014. All Rights Reserved.