Index: /trunk/src/org/openstreetmap/josm/data/imagery/AbstractWMSTileSource.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/imagery/AbstractWMSTileSource.java	(revision 10991)
+++ /trunk/src/org/openstreetmap/josm/data/imagery/AbstractWMSTileSource.java	(revision 10992)
@@ -20,7 +20,6 @@
  * @author Wiktor Niesiobędzki
  * @since 10990
- *
  */
-public class AbstractWMSTileSource extends TMSTileSource {
+public abstract class AbstractWMSTileSource extends TMSTileSource {
 
     private EastNorth anchorPosition;
@@ -32,6 +31,17 @@
     private static final float SCALE_DENOMINATOR_ZOOM_LEVEL_1 = 559082264.0287178f;
 
+    /**
+     * Constructs a new {@code AbstractWMSTileSource}.
+     * @param info tile source info
+     */
     public AbstractWMSTileSource(TileSourceInfo info) {
         super(info);
+    }
+
+    private void initAnchorPosition(Projection proj) {
+        Bounds worldBounds = proj.getWorldBoundsLatLon();
+        EastNorth min = proj.latlon2eastNorth(worldBounds.getMin());
+        EastNorth max = proj.latlon2eastNorth(worldBounds.getMax());
+        this.anchorPosition = new EastNorth(min.east(), max.north());
     }
 
@@ -41,11 +51,4 @@
     public void initProjection() {
         initProjection(Main.getProjection());
-    }
-
-    private void initAnchorPosition(Projection proj) {
-        Bounds worldBounds = proj.getWorldBoundsLatLon();
-        EastNorth min = proj.latlon2eastNorth(worldBounds.getMin());
-        EastNorth max = proj.latlon2eastNorth(worldBounds.getMax());
-        this.anchorPosition = new EastNorth(min.east(), max.north());
     }
 
@@ -97,11 +100,4 @@
     }
 
-    @Override
-    public TileXY latLonToTileXY(double lat, double lon, int zoom) {
-        Projection proj = Main.getProjection();
-        EastNorth enPoint = proj.latlon2eastNorth(new LatLon(lat, lon));
-        return eastNorthToTileXY(enPoint, zoom);
-    }
-
     private TileXY eastNorthToTileXY(EastNorth enPoint, int zoom) {
         double scale = getDegreesPerTile(zoom);
@@ -110,4 +106,10 @@
                 (anchorPosition.north() - enPoint.north()) / scale
                 );
+    }
+
+    @Override
+    public TileXY latLonToTileXY(double lat, double lon, int zoom) {
+        EastNorth enPoint = Main.getProjection().latlon2eastNorth(new LatLon(lat, lon));
+        return eastNorthToTileXY(enPoint, zoom);
     }
 
