public synchronized boolean put(String key, T value) {
        try {
            key = URLEncoder.encode(key, "UTF-8");
            cache.put(key, value);
            tempList.add(new KV<String, T>(key, value));
            if (tempList.size() == tempMaxSize) {
                commit();
            }
            return true;
        } catch (Exception e) {
            logger.error("Failed to store item in persitent hashtable.", e);
            return false;
        }
    }
DEPRECATED: may cause OutOfMemoryError on large crawls.

@return
ache/src/main/java/achecrawler/util/persistence/PersistentHashtable.java