From 1421a1f6b6b92fc8f3b339c91061f1273600f8d6 Mon Sep 17 00:00:00 2001 From: Hannes Janetzek Date: Tue, 17 Sep 2013 22:42:51 +0200 Subject: [PATCH] API: remove TileSource.getMapInfo(), cleanups - move MapInfo to mapfile package --- .../source/common/PbfTileDataSource.java | 1 - .../layers/tile/vector/VectorTileLayer.java | 36 +------------------ .../org/oscim/tiling/source/TileSource.java | 15 +++----- .../tiling/source/common/UrlTileSource.java | 20 ++--------- .../source/mapfile/MapFileTileSource.java | 2 -- .../tiling/source/{ => mapfile}/MapInfo.java | 2 +- .../source/mapfile/header/MapFileInfo.java | 2 +- .../tiling/source/test/TestTileSource.java | 12 ------- 8 files changed, 10 insertions(+), 80 deletions(-) rename vtm/src/org/oscim/tiling/source/{ => mapfile}/MapInfo.java (98%) diff --git a/vtm-gdx-html/src/org/oscim/gdx/emu/org/oscim/tiling/source/common/PbfTileDataSource.java b/vtm-gdx-html/src/org/oscim/gdx/emu/org/oscim/tiling/source/common/PbfTileDataSource.java index 67a1ee8b..d52c8015 100644 --- a/vtm-gdx-html/src/org/oscim/gdx/emu/org/oscim/tiling/source/common/PbfTileDataSource.java +++ b/vtm-gdx-html/src/org/oscim/gdx/emu/org/oscim/tiling/source/common/PbfTileDataSource.java @@ -21,7 +21,6 @@ import org.oscim.backend.Log; import org.oscim.tiling.MapTile; import org.oscim.tiling.source.ITileDataSink; import org.oscim.tiling.source.ITileDataSource; -import org.oscim.tiling.source.ITileDataSource.QueryResult; /** * diff --git a/vtm/src/org/oscim/layers/tile/vector/VectorTileLayer.java b/vtm/src/org/oscim/layers/tile/vector/VectorTileLayer.java index ed8a805a..b8c38a50 100644 --- a/vtm/src/org/oscim/layers/tile/vector/VectorTileLayer.java +++ b/vtm/src/org/oscim/layers/tile/vector/VectorTileLayer.java @@ -15,15 +15,12 @@ package org.oscim.layers.tile.vector; import org.oscim.backend.Log; -import org.oscim.core.GeoPoint; -import org.oscim.core.MapPosition; import org.oscim.layers.tile.TileLayer; import org.oscim.map.Map; import org.oscim.theme.IRenderTheme; import org.oscim.tiling.TileLoader; import org.oscim.tiling.TileManager; import org.oscim.tiling.source.ITileDataSource; -import org.oscim.tiling.source.MapInfo; import org.oscim.tiling.source.TileSource; import org.oscim.tiling.source.TileSource.OpenResult; @@ -76,7 +73,7 @@ public class VectorTileLayer extends TileLayer { mTileLoader.get(i).setTileDataSource(tileDataSource); } - mTileManager.setZoomTable(mTileSource.getMapInfo().zoomLevel); + //mTileManager.setZoomTable(mTileSource.getMapInfo().zoomLevel); mMap.clearMap(); @@ -96,35 +93,4 @@ public class VectorTileLayer extends TileLayer { resumeLoaders(); } - - /** - * @deprecated - */ - public MapPosition getMapFileCenter() { - if (mTileSource == null) - return null; - - MapInfo mapInfo = mTileSource.getMapInfo(); - if (mapInfo == null) - return null; - - GeoPoint startPos = mapInfo.startPosition; - - if (startPos == null) - startPos = mapInfo.mapCenter; - - if (startPos == null) - startPos = new GeoPoint(0, 0); - - MapPosition mapPosition = new MapPosition(); - mapPosition.setPosition(startPos); - - if (mapInfo.startZoomLevel == null) - mapPosition.setZoomLevel(2); - else - mapPosition.setZoomLevel((mapInfo.startZoomLevel).byteValue()); - - return mapPosition; - } - } diff --git a/vtm/src/org/oscim/tiling/source/TileSource.java b/vtm/src/org/oscim/tiling/source/TileSource.java index 5d8660d7..f967a8a1 100644 --- a/vtm/src/org/oscim/tiling/source/TileSource.java +++ b/vtm/src/org/oscim/tiling/source/TileSource.java @@ -19,27 +19,21 @@ import java.util.HashMap; public abstract class TileSource { public abstract ITileDataSource getDataSource(); + public abstract OpenResult open(); + public abstract void close(); protected final Options options = new Options(); - public void setOption(String key, String value){ + public void setOption(String key, String value) { options.put(key, value); } - public String getOption(String key){ + public String getOption(String key) { return options.get(key); } - /** - * @return the metadata for the current map file. - * @throws IllegalStateException - * if no map is currently opened. - */ - public abstract MapInfo getMapInfo(); - - public static class Options extends HashMap { private static final long serialVersionUID = 1L; @@ -59,6 +53,7 @@ public abstract class TileSource { return true; } } + /** * A FileOpenResult is a simple DTO which is returned by * IMapDatabase#open(). diff --git a/vtm/src/org/oscim/tiling/source/common/UrlTileSource.java b/vtm/src/org/oscim/tiling/source/common/UrlTileSource.java index 21cd958d..3696f51f 100644 --- a/vtm/src/org/oscim/tiling/source/common/UrlTileSource.java +++ b/vtm/src/org/oscim/tiling/source/common/UrlTileSource.java @@ -17,20 +17,11 @@ package org.oscim.tiling.source.common; import java.net.MalformedURLException; import java.net.URL; -import org.oscim.core.BoundingBox; -import org.oscim.core.GeoPoint; -import org.oscim.tiling.source.MapInfo; import org.oscim.tiling.source.TileSource; -public abstract class UrlTileSource extends TileSource{ +public abstract class UrlTileSource extends TileSource { private final static String KEY_URL = "url"; - private static final MapInfo mMapInfo = - new MapInfo(new BoundingBox(-180, -90, 180, 90), - new Byte((byte) 4), new GeoPoint(53.11, 8.85), - null, 0, 0, 0, "de", "comment", "author", null); - - protected URL mUrl; @Override @@ -53,15 +44,8 @@ public abstract class UrlTileSource extends TileSource{ } - public boolean setUrl(String urlString){ + public boolean setUrl(String urlString) { options.put("url", urlString); return open() == OpenResult.SUCCESS; } - - @Override - public MapInfo getMapInfo() { - return mMapInfo; - } - } - diff --git a/vtm/src/org/oscim/tiling/source/mapfile/MapFileTileSource.java b/vtm/src/org/oscim/tiling/source/mapfile/MapFileTileSource.java index d3dcca25..c8a00369 100644 --- a/vtm/src/org/oscim/tiling/source/mapfile/MapFileTileSource.java +++ b/vtm/src/org/oscim/tiling/source/mapfile/MapFileTileSource.java @@ -20,7 +20,6 @@ import java.io.IOException; import java.io.RandomAccessFile; import org.oscim.tiling.source.ITileDataSource; -import org.oscim.tiling.source.MapInfo; import org.oscim.tiling.source.TileSource; import org.oscim.tiling.source.mapfile.header.MapFileHeader; import org.oscim.tiling.source.mapfile.header.MapFileInfo; @@ -129,7 +128,6 @@ public class MapFileTileSource extends TileSource { } } - @Override public MapInfo getMapInfo() { return fileInfo; } diff --git a/vtm/src/org/oscim/tiling/source/MapInfo.java b/vtm/src/org/oscim/tiling/source/mapfile/MapInfo.java similarity index 98% rename from vtm/src/org/oscim/tiling/source/MapInfo.java rename to vtm/src/org/oscim/tiling/source/mapfile/MapInfo.java index b85c4763..15adf0b6 100644 --- a/vtm/src/org/oscim/tiling/source/MapInfo.java +++ b/vtm/src/org/oscim/tiling/source/mapfile/MapInfo.java @@ -12,7 +12,7 @@ * You should have received a copy of the GNU Lesser General Public License along with * this program. If not, see . */ -package org.oscim.tiling.source; +package org.oscim.tiling.source.mapfile; import org.oscim.core.BoundingBox; import org.oscim.core.GeoPoint; diff --git a/vtm/src/org/oscim/tiling/source/mapfile/header/MapFileInfo.java b/vtm/src/org/oscim/tiling/source/mapfile/header/MapFileInfo.java index 15422f79..35507f6f 100644 --- a/vtm/src/org/oscim/tiling/source/mapfile/header/MapFileInfo.java +++ b/vtm/src/org/oscim/tiling/source/mapfile/header/MapFileInfo.java @@ -20,7 +20,7 @@ import org.oscim.core.Tag; * Contains the immutable metadata of a map file. * */ -public class MapFileInfo extends org.oscim.tiling.source.MapInfo { +public class MapFileInfo extends org.oscim.tiling.source.mapfile.MapInfo { /** * True if the map file includes debug information, false otherwise. diff --git a/vtm/src/org/oscim/tiling/source/test/TestTileSource.java b/vtm/src/org/oscim/tiling/source/test/TestTileSource.java index 9681d0e5..87d032fe 100644 --- a/vtm/src/org/oscim/tiling/source/test/TestTileSource.java +++ b/vtm/src/org/oscim/tiling/source/test/TestTileSource.java @@ -14,23 +14,16 @@ */ package org.oscim.tiling.source.test; -import org.oscim.core.BoundingBox; import org.oscim.core.MapElement; import org.oscim.core.Tag; import org.oscim.core.Tile; import org.oscim.tiling.MapTile; import org.oscim.tiling.source.ITileDataSink; import org.oscim.tiling.source.ITileDataSource; -import org.oscim.tiling.source.MapInfo; import org.oscim.tiling.source.TileSource; public class TestTileSource extends TileSource { - private final MapInfo mMapInfo = - new MapInfo(new BoundingBox(-180, -90, 180, 90), - new Byte((byte) 5), null, null, 0, 0, 0, - "", "", "", null); - // private boolean mOpenFile = false; @Override @@ -49,11 +42,6 @@ public class TestTileSource extends TileSource { // mOpenFile = false; } - @Override - public MapInfo getMapInfo() { - return mMapInfo; - } - static class TileDataSource implements ITileDataSource { private static final Tag[] mTags = {