package org.apache.lucene.index;
import java.util.Map;
import java.util.WeakHashMap;
import org.apache.lucene.store.Directory;
import com.nearinfinity.bloomfilter.BloomFilter;
public class TermInfosCache {
private static Map<Directory, Map<String,BloomFilter>> bloomFilterCache = new WeakHashMap<Directory, Map<String,BloomFilter>>();
public synchronized static void addToCache(Directory directory, String segment, BloomFilter bloomFilter) {
Map<String, BloomFilter> map = bloomFilterCache.get(directory);
if (map == null) {
map = new WeakHashMap<String, BloomFilter>();
bloomFilterCache.put(directory, map);
}
map.put(segment, bloomFilter);
}
public static BloomFilter getFromCache(Directory directory, String segment) {
Map<String, BloomFilter> map = bloomFilterCache.get(directory);
if (map == null) {
return null;
}
return map.get(segment);
}
}