Improve code / xml formatting, closes #54
This commit is contained in:
@@ -16,15 +16,8 @@
|
||||
*/
|
||||
package org.oscim.layers;
|
||||
|
||||
import static org.oscim.tiling.QueryResult.FAILED;
|
||||
import static org.oscim.tiling.QueryResult.SUCCESS;
|
||||
import static org.oscim.tiling.QueryResult.TILE_NOT_FOUND;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.IOException;
|
||||
|
||||
import org.jeo.tile.TileDataset;
|
||||
import org.jeo.tile.Tile;
|
||||
import org.jeo.tile.TileDataset;
|
||||
import org.oscim.backend.CanvasAdapter;
|
||||
import org.oscim.backend.canvas.Bitmap;
|
||||
import org.oscim.layers.tile.MapTile;
|
||||
@@ -34,73 +27,80 @@ import org.oscim.tiling.TileSource;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.IOException;
|
||||
|
||||
import static org.oscim.tiling.QueryResult.FAILED;
|
||||
import static org.oscim.tiling.QueryResult.SUCCESS;
|
||||
import static org.oscim.tiling.QueryResult.TILE_NOT_FOUND;
|
||||
|
||||
public class JeoTileSource extends TileSource {
|
||||
final static Logger log = LoggerFactory.getLogger(JeoTileSource.class);
|
||||
final static Logger log = LoggerFactory.getLogger(JeoTileSource.class);
|
||||
|
||||
final TileDataset mTileDataset;
|
||||
final TileDataset mTileDataset;
|
||||
|
||||
public JeoTileSource(TileDataset tileDataset) {
|
||||
log.debug("load tileset {}", tileDataset.name());
|
||||
mTileDataset = tileDataset;
|
||||
//mTileDataset.pyramid().
|
||||
mZoomMax = 1;
|
||||
mZoomMin = 0;
|
||||
}
|
||||
public JeoTileSource(TileDataset tileDataset) {
|
||||
log.debug("load tileset {}", tileDataset.name());
|
||||
mTileDataset = tileDataset;
|
||||
//mTileDataset.pyramid().
|
||||
mZoomMax = 1;
|
||||
mZoomMin = 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ITileDataSource getDataSource() {
|
||||
return new ITileDataSource() {
|
||||
@Override
|
||||
public ITileDataSource getDataSource() {
|
||||
return new ITileDataSource() {
|
||||
|
||||
@Override
|
||||
public void query(MapTile tile, ITileDataSink sink) {
|
||||
log.debug("query {}", tile);
|
||||
try {
|
||||
Tile t = mTileDataset.read(tile.zoomLevel, tile.tileX,
|
||||
// flip Y axis
|
||||
(1 << tile.zoomLevel) - 1 - tile.tileY);
|
||||
if (t == null) {
|
||||
log.debug("not found {}", tile);
|
||||
sink.completed(TILE_NOT_FOUND);
|
||||
return;
|
||||
}
|
||||
Bitmap b = CanvasAdapter.decodeBitmap(new ByteArrayInputStream(t.data()));
|
||||
sink.setTileImage(b);
|
||||
log.debug("success {}", tile);
|
||||
sink.completed(SUCCESS);
|
||||
return;
|
||||
@Override
|
||||
public void query(MapTile tile, ITileDataSink sink) {
|
||||
log.debug("query {}", tile);
|
||||
try {
|
||||
Tile t = mTileDataset.read(tile.zoomLevel, tile.tileX,
|
||||
// flip Y axis
|
||||
(1 << tile.zoomLevel) - 1 - tile.tileY);
|
||||
if (t == null) {
|
||||
log.debug("not found {}", tile);
|
||||
sink.completed(TILE_NOT_FOUND);
|
||||
return;
|
||||
}
|
||||
Bitmap b = CanvasAdapter.decodeBitmap(new ByteArrayInputStream(t.data()));
|
||||
sink.setTileImage(b);
|
||||
log.debug("success {}", tile);
|
||||
sink.completed(SUCCESS);
|
||||
return;
|
||||
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
log.debug("fail {}", tile);
|
||||
sink.completed(FAILED);
|
||||
}
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
log.debug("fail {}", tile);
|
||||
sink.completed(FAILED);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dispose() {
|
||||
@Override
|
||||
public void dispose() {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void cancel() {
|
||||
@Override
|
||||
public void cancel() {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
int mRefs;
|
||||
int mRefs;
|
||||
|
||||
@Override
|
||||
public OpenResult open() {
|
||||
mRefs++;
|
||||
return OpenResult.SUCCESS;
|
||||
}
|
||||
@Override
|
||||
public OpenResult open() {
|
||||
mRefs++;
|
||||
return OpenResult.SUCCESS;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void close() {
|
||||
if (--mRefs == 0)
|
||||
mTileDataset.close();
|
||||
}
|
||||
@Override
|
||||
public void close() {
|
||||
if (--mRefs == 0)
|
||||
mTileDataset.close();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user