A
- Some Model type that implements Object.equals(java.lang.Object)
and Object.hashCode()
.B
- Some useful type that may be expensive to create (URL, file path, etc).public class ModelCache<A,B> extends Object
ModelLoader
and ModelLoaderFactory
to cache
some data for a given model, width and height. For a loader that takes a model and returns a url,
the cache could be used to safely memoize url creation based on the width and height of the
view.@Nullable public B get(A model, int width, int height)
model
- The model.width
- The width in pixels of the view the image is being loaded into.height
- The height in pixels of the view the image is being loaded into.public void put(A model, int width, int height, B value)
model
- The model.width
- The width in pixels of the view the image is being loaded into.height
- The height in pixels of the view the image is being loaded into.value
- The value to store.public void clear()