Index: /applications/editors/josm/plugins/cadastre-fr/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- /applications/editors/josm/plugins/cadastre-fr/.settings/org.eclipse.jdt.core.prefs	(revision 34222)
+++ /applications/editors/josm/plugins/cadastre-fr/.settings/org.eclipse.jdt.core.prefs	(revision 34223)
@@ -41,5 +41,5 @@
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=public
+org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
 org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
 org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
@@ -55,5 +55,5 @@
 org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters=disabled
 org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=public
+org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
 org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
 org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
Index: /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/actions/mapmode/Address.java
===================================================================
--- /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/actions/mapmode/Address.java	(revision 34222)
+++ /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/actions/mapmode/Address.java	(revision 34223)
@@ -89,6 +89,4 @@
     JLabel link = new JLabel();
     private transient Way selectedWay;
-    private boolean shift;
-    private boolean ctrl;
 
     /**
@@ -129,6 +127,5 @@
         if (e.getButton() != MouseEvent.BUTTON1)
             return;
-        shift = (e.getModifiers() & ActionEvent.SHIFT_MASK) != 0;
-        ctrl = (e.getModifiers() & ActionEvent.CTRL_MASK) != 0;
+        updateKeyModifiers(e);
         MapView mv = MainApplication.getMap().mapView;
         Point mousePos = e.getPoint();
@@ -379,9 +376,10 @@
             // fall through to default action.
             // (for semi-parallel lines, intersection might be miles away!)
-            if (MainApplication.getMap().mapView.getPoint(n).distance(MainApplication.getMap().mapView.getPoint(intersection)) < snapToIntersectionThreshold) {
+            MapView mv = MainApplication.getMap().mapView;
+            if (mv.getPoint(n).distance(mv.getPoint(intersection)) < snapToIntersectionThreshold) {
                 n.setEastNorth(intersection);
                 return;
             }
-
+            // fall through
         default:
             EastNorth P = n.getEastNorth();
Index: /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/actions/upload/CheckSourceUploadHook.java
===================================================================
--- /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/actions/upload/CheckSourceUploadHook.java	(revision 34222)
+++ /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/actions/upload/CheckSourceUploadHook.java	(revision 34223)
@@ -55,13 +55,9 @@
     /**
      * Check whenever one of the keys of the object is "source"
+     * @param osm primitive to check
      * @return true if one of keys is "source"
      */
     private boolean tagSourceExist(OsmPrimitive osm) {
-        for (String key : osm.keySet()) {
-            if (key.equals("source")) {
-                return true;
-            }
-        }
-        return false;
+        return osm.hasKey("source");
     }
 
Index: /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/download/CadastreDownloadData.java
===================================================================
--- /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/download/CadastreDownloadData.java	(revision 34222)
+++ /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/download/CadastreDownloadData.java	(revision 34223)
@@ -18,4 +18,13 @@
     /**
      * Constructs a new {@code CadastreDownloadData}.
+     * @param downloadWater whether to download water layer
+     * @param downloadBuilding whether to download building layer
+     * @param downloadSymbol whether to download symbol layer
+     * @param downloadParcel whether to download parcel layer
+     * @param downloadParcelNumber whether to download parcel number layer
+     * @param downloadAddress whether to download address layer
+     * @param downloadLocality whether to download locality layer
+     * @param downloadSection whether to download section layer
+     * @param downloadCommune whether to download communal layer
      */
     CadastreDownloadData(boolean downloadWater, boolean downloadBuilding, boolean downloadSymbol,
Index: /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/edigeo/EdigeoLotFile.java
===================================================================
--- /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/edigeo/EdigeoLotFile.java	(revision 34222)
+++ /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/edigeo/EdigeoLotFile.java	(revision 34223)
@@ -77,4 +77,5 @@
     /**
      * Finds a descriptor by its identifier.
+     * @param <T> block type
      * @param values 4 values obtained from a {@code EdigeoRecord}:<ol>
      * <li>Lot identifier</li>
Index: /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/edigeo/utils/ClassToInstancesMap.java
===================================================================
--- /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/edigeo/utils/ClassToInstancesMap.java	(revision 34222)
+++ /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/edigeo/utils/ClassToInstancesMap.java	(revision 34223)
@@ -20,4 +20,5 @@
      * entry for this class is present. This will only return values that were
      * bound to this specific class, not values that may have been bound to a subtype.
+     * @param <T> block type
      * @param type type
      * @return the values the specified class is mapped to, or {@code null}
@@ -28,4 +29,5 @@
      * Maps the specified class to the specified values. Does <i>not</i> associate
      * these values with any of the class's supertypes.
+     * @param <T> block type
      * @param type type
      * @param values new values
@@ -38,4 +40,5 @@
     /**
      * Adds a new value to the list mapped to the specified class.
+     * @param <T> block type
      * @param type type
      * @param value value to add
Index: /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CacheFileLambert4ZoneFilter.java
===================================================================
--- /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CacheFileLambert4ZoneFilter.java	(revision 34222)
+++ /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CacheFileLambert4ZoneFilter.java	(revision 34223)
@@ -17,4 +17,7 @@
     private final String description;
 
+    /**
+     * Filters for each one of the 4 Lambert zones.
+     */
     public static final CacheFileLambert4ZoneFilter[] filters = {
         new CacheFileLambert4ZoneFilter("1", tr("Lambert Zone {0} cache file (.{0})", 1)),
@@ -26,5 +29,6 @@
     /**
      * Construct an extension file filter by giving the extension to check after.
-     *
+     * @param extension file extension
+     * @param description file description
      */
     private CacheFileLambert4ZoneFilter(String extension, String description) {
@@ -33,5 +37,5 @@
     }
 
-    public boolean acceptName(String filename) {
+    boolean acceptName(String filename) {
         String name = filename.toLowerCase(Locale.FRANCE);
         for (String ext : extension.split(",")) {
Index: /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CacheFileLambert9ZoneFilter.java
===================================================================
--- /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CacheFileLambert9ZoneFilter.java	(revision 34222)
+++ /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CacheFileLambert9ZoneFilter.java	(revision 34223)
@@ -16,4 +16,7 @@
     private final String description;
 
+    /**
+     * Filters for each one of the 9 Lambert zones.
+     */
     public static CacheFileLambert9ZoneFilter[] filters = {
         new CacheFileLambert9ZoneFilter("cc1", tr("Lambert CC9 Zone {0} cache file (.CC{0})", 1)),
@@ -30,5 +33,6 @@
     /**
      * Construct an extension file filter by giving the extension to check after.
-     *
+     * @param extension file extension
+     * @param description file description
      */
     private CacheFileLambert9ZoneFilter(String extension, String description) {
@@ -37,5 +41,5 @@
     }
 
-    public boolean acceptName(String filename) {
+    boolean acceptName(String filename) {
         String name = filename.toLowerCase();
         for (String ext : extension.split(",")) {
@@ -57,4 +61,3 @@
         return description;
     }
-
 }
Index: /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CacheFileUTM20NFilter.java
===================================================================
--- /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CacheFileUTM20NFilter.java	(revision 34222)
+++ /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CacheFileUTM20NFilter.java	(revision 34223)
@@ -16,4 +16,7 @@
     private final String description;
 
+    /**
+     * Filters for each one of the 4 French UTM zones.
+     */
     public static CacheFileUTM20NFilter[] filters = {
         new CacheFileUTM20NFilter("utm1", tr("Guadeloupe Fort-Marigot cache file (.UTM1)")),
@@ -25,5 +28,6 @@
     /**
      * Construct an extension file filter by giving the extension to check after.
-     *
+     * @param extension file extension
+     * @param description file description
      */
     private CacheFileUTM20NFilter(String extension, String description) {
@@ -32,5 +36,5 @@
     }
 
-    public boolean acceptName(String filename) {
+    boolean acceptName(String filename) {
         String name = filename.toLowerCase();
         for (String ext : extension.split(",")) {
@@ -52,4 +56,3 @@
         return description;
     }
-
 }
Index: /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CadastreGrabber.java
===================================================================
--- /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CadastreGrabber.java	(revision 34222)
+++ /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CadastreGrabber.java	(revision 34223)
@@ -21,5 +21,5 @@
     private CadastreInterface wmsInterface = new CadastreInterface();
 
-    public GeorefImage grab(WMSLayer wmsLayer, EastNorth lambertMin, EastNorth lambertMax)
+    GeorefImage grab(WMSLayer wmsLayer, EastNorth lambertMin, EastNorth lambertMax)
             throws IOException, OsmTransferException {
         try {
@@ -89,5 +89,5 @@
     }
 
-    public CadastreInterface getWmsInterface() {
+    CadastreInterface getWmsInterface() {
         return wmsInterface;
     }
Index: /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CadastreInterface.java
===================================================================
--- /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CadastreInterface.java	(revision 34222)
+++ /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/CadastreInterface.java	(revision 34223)
@@ -38,5 +38,5 @@
 
 public class CadastreInterface {
-    public boolean downloadCanceled;
+    boolean downloadCanceled;
     private Response urlConn;
 
@@ -60,5 +60,5 @@
     private long cookieTimestamp;
 
-    public static final String BASE_URL = "https://www.cadastre.gouv.fr";
+    static final String BASE_URL = "https://www.cadastre.gouv.fr";
     static final String C_IMAGE_FORMAT = "Cette commune est au format ";
     static final String C_COMMUNE_LIST_START = "<select name=\"codeCommune\"";
@@ -84,5 +84,5 @@
     static final int RETRIES_GET_COOKIE = 10; // 10 times every 3 seconds means 30 seconds trying to get a cookie
 
-    public boolean retrieveInterface(WMSLayer wmsLayer) throws DuplicateLayerException, WMSException {
+    boolean retrieveInterface(WMSLayer wmsLayer) throws DuplicateLayerException, WMSException {
         if (wmsLayer.getName().isEmpty())
             return false;
@@ -120,4 +120,5 @@
      * Returns if a cookie is delivered by WMS, throws exception if WMS is not opening a client session
      * (too many clients or in maintenance)
+     * @throws IOException if an I/O error occurs
      */
     private void getCookie() throws IOException {
@@ -174,10 +175,10 @@
     }
 
-    public void resetCookie() {
+    void resetCookie() {
         lastWMSLayerName = null;
         cookie = null;
     }
 
-    public boolean isCookieExpired() {
+    boolean isCookieExpired() {
         long now = new Date().getTime();
         if ((now - cookieTimestamp) > COOKIE_EXPIRATION) {
@@ -188,5 +189,5 @@
     }
 
-    public void resetInterfaceRefIfNewLayer(String newWMSLayerName) {
+    void resetInterfaceRefIfNewLayer(String newWMSLayerName) {
         if (!newWMSLayerName.equals(lastWMSLayerName)) {
             interfaceRef = null;
@@ -195,9 +196,9 @@
     }
 
-    public HttpClient getHttpClient(URL url) {
+    HttpClient getHttpClient(URL url) {
         return HttpClient.create(url).setHeader("Cookie", cookie);
     }
 
-    public HttpClient getHttpClient(URL url, String method) {
+    HttpClient getHttpClient(URL url, String method) {
         return HttpClient.create(url, method).setHeader("Cookie", cookie);
     }
@@ -275,6 +276,9 @@
      * The returned string is the interface name used in further requests, e.g. "afficherCarteCommune.do?c=QP224"
      * where QP224 is the code commune known by the WMS (or "afficherCarteTa.do?c=..." for raster images).
+     * @param wmsLayer WMS layer
+     * @param codeCommune Commune code
      *
      * @return retURL url to available code commune in the cadastre; "" if not found
+     * @throws IOException if an I/O error occurs
      */
     private String postForm(WMSLayer wmsLayer, String codeCommune) throws IOException {
@@ -466,5 +470,5 @@
      * @throws IOException if any I/O error occurs
      */
-    public void retrieveCommuneBBox(WMSLayer wmsLayer) throws IOException {
+    void retrieveCommuneBBox(WMSLayer wmsLayer) throws IOException {
         if (interfaceRef == null)
             return;
@@ -542,5 +546,5 @@
     }
 
-    public void cancel() {
+    void cancel() {
         if (urlConn != null) {
             urlConn.disconnect();
@@ -550,5 +554,5 @@
     }
 
-    public InputStream getContent(URL url) throws IOException, OsmTransferException {
+    InputStream getContent(URL url) throws IOException, OsmTransferException {
         urlConn = getHttpClient(url).setHeader("Connection", "close").connect();
         return urlConn.getContent();
Index: /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/GrabThread.java
===================================================================
--- /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/GrabThread.java	(revision 34222)
+++ /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/GrabThread.java	(revision 34223)
@@ -36,6 +36,7 @@
     /**
      * Call directly grabber for raster images or prepare thread for vector images
+     * @param moreImages more images to grab
      */
-    public void addImages(ArrayList<EastNorthBound> moreImages) {
+    void addImages(ArrayList<EastNorthBound> moreImages) {
         lockImagesToGrag.lock();
         imagesToGrab.addAll(moreImages);
@@ -57,5 +58,5 @@
     }
 
-    public ArrayList<EastNorthBound> getImagesToGrabCopy() {
+    ArrayList<EastNorthBound> getImagesToGrabCopy() {
         ArrayList<EastNorthBound> copyList = new ArrayList<>();
         lockImagesToGrag.lock();
@@ -68,5 +69,5 @@
     }
 
-    public void clearImagesToGrab() {
+    void clearImagesToGrab() {
         lockImagesToGrag.lock();
         imagesToGrab.clear();
@@ -143,5 +144,5 @@
     }
 
-    public void saveToCache(GeorefImage image) {
+    void saveToCache(GeorefImage image) {
         if (CacheControl.cacheEnabled && !wmsLayer.isRaster()) {
             getCacheControl().saveCache(image);
@@ -160,4 +161,7 @@
     }
 
+    /**
+     * Cancel grab.
+     */
     public void cancel() {
         clearImagesToGrab();
@@ -170,4 +174,8 @@
     }
 
+    /**
+     * Returns the Cache control.
+     * @return the Cache control
+     */
     public CacheControl getCacheControl() {
         if (cacheControl == null)
@@ -176,9 +184,9 @@
     }
 
-    public GrabThread(WMSLayer wmsLayer) {
+    GrabThread(WMSLayer wmsLayer) {
         this.wmsLayer = wmsLayer;
     }
 
-    public void paintBoxesToGrab(Graphics g, MapView mv) {
+    void paintBoxesToGrab(Graphics g, MapView mv) {
         if (getImagesToGrabSize() > 0) {
             ArrayList<EastNorthBound> imagesToGrab = getImagesToGrabCopy();
@@ -207,17 +215,17 @@
     }
 
-    public boolean isCanceled() {
+    boolean isCanceled() {
         return canceled;
     }
 
-    public void setCanceled(boolean canceled) {
+    void setCanceled(boolean canceled) {
         this.canceled = canceled;
     }
 
-    public CadastreGrabber getGrabber() {
+    CadastreGrabber getGrabber() {
         return grabber;
     }
 
-    public void setGrabber(CadastreGrabber grabber) {
+    void setGrabber(CadastreGrabber grabber) {
         this.grabber = grabber;
     }
Index: /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/ImageModifier.java
===================================================================
--- /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/ImageModifier.java	(revision 34222)
+++ /applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/wms/ImageModifier.java	(revision 34223)
@@ -20,6 +20,6 @@
     protected BufferedImage bufferedImage;
 
-    public static int[] cRoofColors = new int[] {-197380, -592138};
-    public static int[] cBuilingFootColors = new int[] {-256};
+    private static int[] cRoofColors = new int[] {-197380, -592138};
+    private static int[] cBuilingFootColors = new int[] {-256};
 
     protected BufferedImage convert1(BufferedImage src) {
@@ -70,14 +70,14 @@
         };
         return convert4(src, cmap);
-      }
+    }
 
-      /**
-       * Converts the source image to 4-bit colour
-       * using the given colour map.  No transparency.
-       * @param src the source image to convert
-       * @param cmap the colour map, which should contain no more than 16 entries
-       * The entries are in the form RRGGBB (hex).
-       * @return a copy of the source image with a 4-bit colour depth, with the custom colour pallette
-       */
+    /**
+     * Converts the source image to 4-bit colour
+     * using the given colour map.  No transparency.
+     * @param src the source image to convert
+     * @param cmap the colour map, which should contain no more than 16 entries
+     * The entries are in the form RRGGBB (hex).
+     * @return a copy of the source image with a 4-bit colour depth, with the custom colour pallette
+     */
     protected BufferedImage convert4(BufferedImage src, int[] cmap) {
         IndexColorModel icm = new IndexColorModel(
@@ -156,4 +156,8 @@
     /**
      * Checks if the rgb value is the black background color
+     * @param img image
+     * @param x X coordinate
+     * @param y Y coordinate
+     * @return {@code true} if the rgb value is the black background color
      */
     public boolean isBackgroundColor(BufferedImage img, int x, int y) {
