Index: trunk/src/org/openstreetmap/josm/actions/downloadtasks/AbstractDownloadTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/downloadtasks/AbstractDownloadTask.java	(revision 18829)
+++ trunk/src/org/openstreetmap/josm/actions/downloadtasks/AbstractDownloadTask.java	(revision 18830)
@@ -8,5 +8,4 @@
 import org.openstreetmap.josm.data.ProjectionBounds;
 import org.openstreetmap.josm.io.UrlPattern;
-import org.openstreetmap.josm.io.XmlWriter;
 
 /**
@@ -96,24 +95,4 @@
     }
 
-    @Override
-    public String acceptsDocumentationSummary() {
-        StringBuilder buff = new StringBuilder(128)
-            .append("<tr><td>")
-            .append(getTitle())
-            .append(":</td><td>");
-        String[] patterns = getPatterns();
-        if (patterns.length > 0) {
-            buff.append("<ul>");
-            for (String pattern: patterns) {
-                buff.append("<li>")
-                    .append(XmlWriter.encode(pattern))
-                    .append("</li>");
-            }
-            buff.append("</ul>");
-        }
-        buff.append("</td></tr>");
-        return buff.toString();
-    }
-
     /**
      * Determines if the given URL is accepted by {@link #getPatterns}.
@@ -128,10 +107,10 @@
     /**
      * Check / decide if the task is safe for remotecontrol.
-     *
+     * <p>
      * Keep in mind that a potential attacker has full control over the content
      * of the file that will be downloaded.
      * If it is possible to run arbitrary code or write to the local file
      * system, then the task is (obviously) not save for remote execution.
-     *
+     * <p>
      * The default value is false = unsafe. Override in a subclass to
      * allow running the task via remotecontol.
Index: trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadTask.java	(revision 18829)
+++ trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadTask.java	(revision 18830)
@@ -11,4 +11,5 @@
 import org.openstreetmap.josm.gui.progress.NullProgressMonitor;
 import org.openstreetmap.josm.gui.progress.ProgressMonitor;
+import org.openstreetmap.josm.io.XmlWriter;
 import org.openstreetmap.josm.tools.ExceptionUtil;
 
@@ -20,9 +21,9 @@
     /**
      * Asynchronously launches the download task for a given bounding box.
-     *
+     * <p>
      * Set <code>progressMonitor</code> to null, if the task should create, open, and close a progress monitor.
      * Set progressMonitor to {@link NullProgressMonitor#INSTANCE} if progress information is to
      * be discarded.
-     *
+     * <p>
      * You can wait for the asynchronous download task to finish by synchronizing on the returned
      * {@link Future}, but make sure not to freeze up JOSM. Example:
@@ -60,5 +61,5 @@
     /**
      * Asynchronously launches the download task for a given bounding URL.
-     *
+     * <p>
      * Set progressMonitor to null, if the task should create, open, and close a progress monitor.
      * Set progressMonitor to {@link NullProgressMonitor#INSTANCE} if progress information is to
@@ -93,5 +94,22 @@
      * @since 6031
      */
-    String acceptsDocumentationSummary();
+    default String acceptsDocumentationSummary() {
+        StringBuilder buff = new StringBuilder(128)
+                .append("<tr><td>")
+                .append(getTitle())
+                .append(":</td><td>");
+        String[] patterns = getPatterns();
+        if (patterns.length > 0) {
+            buff.append("<ul>");
+            for (String pattern: patterns) {
+                buff.append("<li>")
+                        .append(XmlWriter.encode(pattern))
+                        .append("</li>");
+            }
+            buff.append("</ul>");
+        }
+        buff.append("</td></tr>");
+        return buff.toString();
+    }
 
     /**
@@ -111,5 +129,5 @@
     /**
      * Replies the error objects of the task. Empty list, if no error messages are available.
-     *
+     * <p>
      * Error objects are either {@link String}s with error messages or {@link Exception}s.
      *
@@ -131,5 +149,5 @@
                 return ExceptionUtil.explainException((Exception) o).replace("<html>", "").replace("</html>", "");
             } else {
-                return (String) null;
+                return null;
             }
         }).filter(Objects::nonNull).collect(Collectors.toList());
