protected boolean removeEldestEntry(Map.Entry eldest) {
protected synchronized boolean removeEldestEntry(Map.Entry eldest) { log.debug("BlockCache size: "+size());
	protected boolean removeEldestEntry(Map.Entry eldest) {		if(size()>MAX_SIZE) {			try{				((Block)eldest.getValue()).flush();				//notify the listeners				CacheEvent event = new CacheEvent(eldest.getValue(),CacheEvent.REMOVED);				Iterator listeners=cacheListeners.iterator();				while(listeners.hasNext()) {					((CacheListener)listeners.next()).elementRemoved(event);				}			}catch(IOException e) {				log.error("Exception when flushing a block from the cache", e); 				}			return true;		} else			return false;	}