TileLoader/TileDataSource: add cancel() method

- used to force closing sockets when changing theme or tilesource
This commit is contained in:
Hannes Janetzek
2014-10-03 02:34:13 +02:00
parent 41085f915e
commit 5f9a9cc909
18 changed files with 107 additions and 76 deletions

View File

@@ -40,17 +40,22 @@ public abstract class TileLoader implements ITileDataSink {
mTileManager = tileManager;
}
public abstract void cleanup();
public abstract void dispose();
protected abstract boolean loadTile(MapTile tile);
boolean isInterrupted;
public void interrupt() {
public void finish() {
isInterrupted = true;
// cancel loading
}
public void cancel() {
isInterrupted = true;
// cancel loading... ?
}
boolean mPausing;
public boolean isCanceled() {

View File

@@ -84,7 +84,13 @@ public class UrlTileDataSource implements ITileDataSource {
}
@Override
public void destroy() {
public void dispose() {
mConn.close();
}
@Override
public void cancel() {
mConn.close();
}
}

View File

@@ -126,7 +126,12 @@ public class BitmapTileSource extends UrlTileSource {
}
@Override
public void destroy() {
public void dispose() {
}
@Override
public void cancel() {
}
}
}

View File

@@ -72,7 +72,12 @@ public class JsonTileDataSource implements ITileDataSource {
boolean mFinished;
@Override
public void destroy() {
public void dispose() {
mFinished = true;
}
@Override
public void cancel() {
mFinished = true;
}