diff options
author | Sam Blitzstein <sblitz@google.com> | 2013-10-09 14:11:27 -0700 |
---|---|---|
committer | Sam Blitzstein <sblitz@google.com> | 2013-10-15 17:34:58 -0700 |
commit | 93a35b93dc582e38ff8ee5979754a16b4bf4da0c (patch) | |
tree | 9034ab3155e8781b0cd77fb70882f911080f6f89 /src/com/android/bitmap/PooledCache.java | |
parent | ce2b0fdc1e9c9d083faab75b6bdfbea27bf574e2 (diff) | |
download | bitmap-93a35b93dc582e38ff8ee5979754a16b4bf4da0c.tar.gz |
Initial commit from Gmail's Cache system.
Change-Id: I14168ab3bc02b77399a1812f62bd77ac797232c5
Diffstat (limited to 'src/com/android/bitmap/PooledCache.java')
-rw-r--r-- | src/com/android/bitmap/PooledCache.java | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/src/com/android/bitmap/PooledCache.java b/src/com/android/bitmap/PooledCache.java new file mode 100644 index 0000000..6d6684f --- /dev/null +++ b/src/com/android/bitmap/PooledCache.java @@ -0,0 +1,37 @@ +/* + * Copyright (C) 2013 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.bitmap; + +public interface PooledCache<K, V> { + + V get(K key, boolean incrementRefCount); + V put(K key, V value); + void offer(V scrapValue); + V poll(); + String toDebugString(); + + /** + * Purge existing Poolables from the pool+cache. Usually, this is done when situations + * change and the items in the pool+cache are no longer appropriate. For example, + * if the layout changes, the pool+cache may need to hold larger bitmaps. + * + * <p/> + * The existing Poolables will be garbage collected when they are no longer being referenced + * by other objects. + */ + void clear(); +} |