private boolean hasValue( final PersistentHashMap<String, ?> map, Map<String, Boolean> cache, final String value) { Boolean res = cache.get(value); if (res == null) { res = doIndexTask( new IndexTask<Boolean>() { public Boolean doTask() throws Exception { return map.tryEnumerate(value) != 0; } }, false) .booleanValue(); cache.put(value, res); } return res; }
private static <T> void persist(Map<String, T> map, PersistentHashMap<String, T> persistentMap) throws IOException { for (Map.Entry<String, T> each : map.entrySet()) { persistentMap.put(each.getKey(), each.getValue()); } }