Revision 1057 org.gvsig.raster.cache/trunk/org.gvsig.raster.cache/org.gvsig.raster.cache.lib.impl/src/main/java/org/gvsig/raster/cache/tile/impl/layer/TiledLayerImpl.java
TiledLayerImpl.java | ||
---|---|---|
37 | 37 |
import org.gvsig.raster.cache.tile.provider.CacheStruct; |
38 | 38 |
import org.gvsig.raster.cache.tile.provider.TileListener; |
39 | 39 |
import org.gvsig.raster.cache.tile.provider.TileServer; |
40 |
import org.gvsig.tools.task.Cancellable; |
|
40 | 41 |
|
41 | 42 |
/** |
42 | 43 |
* Main implementation for the tile cache |
... | ... | |
142 | 143 |
* (non-Javadoc) |
143 | 144 |
* @see org.gvsig.raster.cache.tile.layer.TiledLayer#getTiles(java.util.ArrayList, org.gvsig.raster.cache.tile.provider.TileListener) |
144 | 145 |
*/ |
145 |
public void getTiles(ArrayList<Tile> tiles, TileListener listener) throws TileGettingException { |
|
146 |
public void getTiles(ArrayList<Tile> tiles, TileListener listener, Cancellable status) throws TileGettingException {
|
|
146 | 147 |
//If a tile is in memory or in disk then this will be returned |
147 | 148 |
//else this will be gotten from the provider |
148 | 149 |
|
149 | 150 |
int nTilesToDownload = 0; |
151 |
|
|
150 | 152 |
for (int i = 0; i < tiles.size(); i++) { |
151 | 153 |
Tile tile = tiles.get(i); |
152 | 154 |
assignPathTile(tile); |
... | ... | |
192 | 194 |
} |
193 | 195 |
|
194 | 196 |
tileCache.updateSize(tile.getFile().length()); |
197 |
|
|
198 |
if(status != null && status.isCanceled()) { |
|
199 |
status.setCanceled(false); |
|
200 |
getThreadPool().emptyPool(); |
|
201 |
break; |
|
202 |
} |
|
203 |
|
|
195 | 204 |
listener.tileReady(tile); |
196 | 205 |
} |
197 | 206 |
getTimerTilePool().stop(); |
Also available in: Unified diff