@Override public boolean onTileReceived(TileIndex index, TileData<T> tile) { TileCacheEntry<T> entry = _cache.get(index); if (null != entry) { _haveData.add(new Pair<TileIndex, Long>(index, entry.initialRequestTime())); } // Notify any global listeners if (null != _globalCallbacks && !_globalCallbacks.isEmpty()) { for (CacheRequestCallback<T> callback : _globalCallbacks) { callback.onTileReceived(index, tile); } } return false; }