Index: applications/editors/josm/plugins/mapdust/.classpath
===================================================================
--- applications/editors/josm/plugins/mapdust/.classpath	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/.classpath	(revision 30532)
@@ -4,6 +4,6 @@
 	<classpathentry including="conf/|images/" kind="src" path=""/>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
-	<classpathentry kind="lib" path="lib/gson-1.5.jar"/>
 	<classpathentry combineaccessrules="false" kind="src" path="/JOSM"/>
+	<classpathentry kind="lib" path="lib/gson-2.2.4.jar"/>
 	<classpathentry kind="output" path="build/classes"/>
 </classpath>
Index: applications/editors/josm/plugins/mapdust/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- applications/editors/josm/plugins/mapdust/.settings/org.eclipse.jdt.core.prefs	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/.settings/org.eclipse.jdt.core.prefs	(revision 30532)
@@ -1,3 +1,9 @@
 eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
+org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
+org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
+org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
+org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
+org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
 org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
@@ -7,5 +13,87 @@
 org.eclipse.jdt.core.compiler.debug.localVariable=generate
 org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
 org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
 org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
+org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=ignore
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
+org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
+org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
+org.eclipse.jdt.core.compiler.problem.nullReference=warning
+org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
+org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
+org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=warning
+org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
 org.eclipse.jdt.core.compiler.source=1.7
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/MapdustActionUploaderException.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/MapdustActionUploaderException.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/MapdustActionUploaderException.java	(revision 30532)
@@ -36,7 +36,4 @@
  */
 public class MapdustActionUploaderException extends Exception {
-
-    /** Serial version UID */
-    private static final long serialVersionUID = -6128820229665805478L;
 
     /**
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/adapter/DisplayMenu.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/adapter/DisplayMenu.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/adapter/DisplayMenu.java	(revision 30532)
@@ -31,6 +31,9 @@
 import java.awt.event.MouseAdapter;
 import java.awt.event.MouseEvent;
+
 import javax.swing.JList;
 import javax.swing.JPopupMenu;
+
+import org.openstreetmap.josm.plugins.mapdust.service.value.MapdustBug;
 
 
@@ -48,5 +51,5 @@
 
     /** The list of bugs */
-    private JList listBugs;
+    private JList<MapdustBug> listBugs;
 
     /**
@@ -61,5 +64,5 @@
      * @param menu The <code>JPopupMenu</code> object
      */
-    public DisplayMenu(JList listBugs, JPopupMenu menu) {
+    public DisplayMenu(JList<MapdustBug> listBugs, JPopupMenu menu) {
         this.listBugs = listBugs;
         this.menu = menu;
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/adapter/WindowClose.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/adapter/WindowClose.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/adapter/WindowClose.java	(revision 30532)
@@ -45,6 +45,4 @@
  */
 public class WindowClose extends WindowAdapter {
-
-    /** Serial version UID */
 
     /** A <code>AbstractDialog</code> object */
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/execute/ExecuteActionList.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/execute/ExecuteActionList.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/execute/ExecuteActionList.java	(revision 30532)
@@ -55,7 +55,4 @@
 public class ExecuteActionList extends MapdustExecuteAction implements
         MapdustUpdateObservable {
-
-    /** Serial version UID */
-    private static final long serialVersionUID = -7487830542214611774L;
 
     /** List of MapdustRefreshObserver objects */
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/execute/ExecuteCloseBug.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/execute/ExecuteCloseBug.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/execute/ExecuteCloseBug.java	(revision 30532)
@@ -64,7 +64,4 @@
 public class ExecuteCloseBug extends MapdustExecuteAction implements
         MapdustBugObservable, MapdustActionObservable {
-
-    /** Serial version UID */
-    private static final long serialVersionUID = 3468827127588061014L;
 
     /** The list of Mapdust bug observers */
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/execute/MapdustExecuteAction.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/execute/MapdustExecuteAction.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/action/execute/MapdustExecuteAction.java	(revision 30532)
@@ -44,7 +44,4 @@
  */
 public abstract class MapdustExecuteAction extends AbstractAction {
-
-    /** Serial version UID */
-    private static final long serialVersionUID = 4318259806647818543L;
 
     /** The abstract dialog object */
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/dialog/CreateBugDialog.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/dialog/CreateBugDialog.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/dialog/CreateBugDialog.java	(revision 30532)
@@ -28,5 +28,4 @@
 package org.openstreetmap.josm.plugins.mapdust.gui.component.dialog;
 
-
 import java.awt.Color;
 import java.awt.Font;
@@ -34,4 +33,5 @@
 import java.awt.Point;
 import java.awt.Rectangle;
+
 import javax.swing.JButton;
 import javax.swing.JComboBox;
@@ -41,4 +41,5 @@
 import javax.swing.JTextField;
 import javax.swing.WindowConstants;
+
 import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.plugins.mapdust.MapdustPlugin;
@@ -49,6 +50,6 @@
 import org.openstreetmap.josm.plugins.mapdust.gui.component.renderer.ComboBoxRenderer;
 import org.openstreetmap.josm.plugins.mapdust.gui.component.util.ComponentUtil;
+import org.openstreetmap.josm.plugins.mapdust.service.value.BugType;
 import org.openstreetmap.josm.tools.ImageProvider;
-
 
 /**
@@ -71,5 +72,5 @@
 
     /** The combo-box for the bug types */
-    private JComboBox cbbType;
+    private JComboBox<BugType> cbbType;
 
     /** The nickname label */
@@ -248,5 +249,5 @@
      * @return the cbbType
      */
-    public JComboBox getCbbType() {
+    public JComboBox<BugType> getCbbType() {
         return cbbType;
     }
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/model/ActionListModel.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/model/ActionListModel.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/model/ActionListModel.java	(revision 30532)
@@ -40,5 +40,5 @@
  * @version $Revision$
  */
-public class ActionListModel extends AbstractListModel {
+public class ActionListModel extends AbstractListModel<MapdustAction> {
 
     /** The serial version UID */
@@ -73,5 +73,5 @@
      */
     @Override
-    public Object getElementAt(int index) {
+    public MapdustAction getElementAt(int index) {
         if (index >= 0 && index < list.size()) {
             return list.get(index);
@@ -89,4 +89,3 @@
         return (list != null ? list.size() : 0);
     }
-
 }
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/model/BugsListModel.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/model/BugsListModel.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/model/BugsListModel.java	(revision 30532)
@@ -28,9 +28,7 @@
 package org.openstreetmap.josm.plugins.mapdust.gui.component.model;
 
-
 import java.util.List;
 import javax.swing.AbstractListModel;
 import org.openstreetmap.josm.plugins.mapdust.service.value.MapdustBug;
-
 
 /**
@@ -40,5 +38,5 @@
  *
  */
-public class BugsListModel extends AbstractListModel {
+public class BugsListModel extends AbstractListModel<MapdustBug> {
 
     /** The serial version UID */
@@ -71,5 +69,5 @@
      */
     @Override
-    public Object getElementAt(int index) {
+    public MapdustBug getElementAt(int index) {
         if (index >= 0 && index < bugs.size()) {
             return bugs.get(index);
@@ -94,4 +92,3 @@
         this.fireContentsChanged(this, 0, bugs.size() - 1);
     }
-
 }
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/model/CommentListModel.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/model/CommentListModel.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/model/CommentListModel.java	(revision 30532)
@@ -40,5 +40,5 @@
  *
  */
-public class CommentListModel implements ListModel {
+public class CommentListModel implements ListModel<MapdustComment> {
 
     /** The list of <code>MapdustBug</code> objects */
@@ -68,5 +68,5 @@
      */
     @Override
-    public Object getElementAt(int index) {
+    public MapdustComment getElementAt(int index) {
         if (index > 0 && index < comments.length) {
             return comments[index];
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/model/TypesListModel.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/model/TypesListModel.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/model/TypesListModel.java	(revision 30532)
@@ -28,9 +28,7 @@
 package org.openstreetmap.josm.plugins.mapdust.gui.component.model;
 
-
 import javax.swing.AbstractListModel;
 import javax.swing.ComboBoxModel;
 import org.openstreetmap.josm.plugins.mapdust.service.value.BugType;
-
 
 /**
@@ -40,5 +38,5 @@
  * @version $Revision$
  */
-public class TypesListModel extends AbstractListModel implements ComboBoxModel {
+public class TypesListModel extends AbstractListModel<BugType> implements ComboBoxModel<BugType> {
 
     /** The serial version UID */
@@ -65,5 +63,5 @@
      */
     @Override
-    public Object getElementAt(int index) {
+    public BugType getElementAt(int index) {
         return types[index];
     }
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/panel/MapdustActionPanel.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/panel/MapdustActionPanel.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/panel/MapdustActionPanel.java	(revision 30532)
@@ -28,8 +28,9 @@
 package org.openstreetmap.josm.plugins.mapdust.gui.component.panel;
 
+import static org.openstreetmap.josm.tools.I18n.tr;
 
-import static org.openstreetmap.josm.tools.I18n.tr;
 import java.awt.BorderLayout;
 import java.util.List;
+
 import javax.swing.AbstractAction;
 import javax.swing.JList;
@@ -37,4 +38,5 @@
 import javax.swing.JScrollPane;
 import javax.swing.JToggleButton;
+
 import org.openstreetmap.josm.plugins.mapdust.MapdustPlugin;
 import org.openstreetmap.josm.plugins.mapdust.gui.action.execute.ExecuteActionList;
@@ -42,5 +44,4 @@
 import org.openstreetmap.josm.plugins.mapdust.gui.component.util.ComponentUtil;
 import org.openstreetmap.josm.plugins.mapdust.gui.value.MapdustAction;
-
 
 /**
@@ -52,12 +53,9 @@
 public class MapdustActionPanel extends JPanel {
 
-    /** The serial version UID */
-    private static final long serialVersionUID = -6648507056357610823L;
-
     /** The scroll pane */
     private JScrollPane cmpActionList;
 
     /** The JList containing the MapDust action objects */
-    private JList actionJList;
+    private JList<MapdustAction> actionJList;
 
     /** The list of <code>MapdustAction</code> objects */
@@ -113,5 +111,4 @@
         cmpActionList.getViewport().setView(actionJList);
         cmpActionList.invalidate();
-
     }
 
@@ -133,4 +130,3 @@
         this.actionList = actionList;
     }
-
 }
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/panel/MapdustBugListPanel.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/panel/MapdustBugListPanel.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/panel/MapdustBugListPanel.java	(revision 30532)
@@ -79,5 +79,5 @@
 
     /** The list of bugs */
-    private JList mapdustBugsJList;
+    private JList<MapdustBug> mapdustBugsJList;
 
     /** The scroll pane for the <code>MapdustBug</code>s */
@@ -163,5 +163,5 @@
             String text = " No bugs in the current view for the selected";
             text += " filters!";
-            JList textJList = new JList(new String[] { text });
+            JList<String> textJList = new JList<>(new String[] { text });
             textJList.setBorder(new LineBorder(Color.black, 1, false));
             textJList.setCellRenderer(new BugListCellRenderer());
@@ -192,5 +192,5 @@
             String text = " No bugs in the current view for the selected";
             text += " filters!";
-            JList textJList = new JList(new String[] { text });
+            JList<String> textJList = new JList<>(new String[] { text });
             textJList.setBorder(new LineBorder(Color.black, 1, false));
             textJList.setCellRenderer(new BugListCellRenderer());
@@ -198,6 +198,5 @@
         } else {
             if (mapdustBugsJList == null) {
-                mapdustBugsJList = ComponentUtil.createJList(mapdustBugsList,
-                        menu);
+                mapdustBugsJList = ComponentUtil.createJList(mapdustBugsList, menu);
                 mapdustBugsJList.addListSelectionListener(this);
                 DisplayMenu adapter = new DisplayMenu(mapdustBugsJList, menu);
@@ -349,5 +348,5 @@
      * @return the listBugs
      */
-    public JList getMapdustBugsJList() {
+    public JList<MapdustBug> getMapdustBugsJList() {
         return mapdustBugsJList;
     }
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/renderer/ActionListCellRenderer.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/renderer/ActionListCellRenderer.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/renderer/ActionListCellRenderer.java	(revision 30532)
@@ -28,5 +28,4 @@
 package org.openstreetmap.josm.plugins.mapdust.gui.component.renderer;
 
-
 import java.awt.Component;
 import java.awt.Font;
@@ -39,5 +38,4 @@
 import org.openstreetmap.josm.tools.ImageProvider;
 
-
 /**
  * Cell renderer for the <code>MapdustAction</code> objects.
@@ -47,7 +45,4 @@
  */
 public class ActionListCellRenderer extends DefaultListCellRenderer {
-
-    /** The serial version UID */
-    private static final long serialVersionUID = 7552949107018269769L;
 
     /**
@@ -61,5 +56,5 @@
      */
     @Override
-    public Component getListCellRendererComponent(JList list, Object value,
+    public Component getListCellRendererComponent(JList<?> list, Object value,
             int index, boolean isSelected, boolean hasFocus) {
         JLabel label = (JLabel) super.getListCellRendererComponent(list, value,
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/renderer/BugListCellRenderer.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/renderer/BugListCellRenderer.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/renderer/BugListCellRenderer.java	(revision 30532)
@@ -61,5 +61,5 @@
      */
     @Override
-    public Component getListCellRendererComponent(JList list, Object value,
+    public Component getListCellRendererComponent(JList<?> list, Object value,
             int index, boolean isSelected, boolean hasFocus) {
         JLabel label =(JLabel) super.getListCellRendererComponent(list, value,
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/renderer/ComboBoxRenderer.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/renderer/ComboBoxRenderer.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/renderer/ComboBoxRenderer.java	(revision 30532)
@@ -28,5 +28,4 @@
 package org.openstreetmap.josm.plugins.mapdust.gui.component.renderer;
 
-
 import java.awt.Component;
 import java.awt.Font;
@@ -39,5 +38,4 @@
 import org.openstreetmap.josm.tools.ImageProvider;
 
-
 /**
  * Cell renderer for the <code>MapdustBug</code> types.
@@ -45,5 +43,5 @@
  * @author Bea
  */
-public class ComboBoxRenderer implements ListCellRenderer {
+public class ComboBoxRenderer implements ListCellRenderer<BugType> {
 
     /** The default renderer */
@@ -61,19 +59,15 @@
      */
     @Override
-    public Component getListCellRendererComponent(JList list, Object value,
+    public Component getListCellRendererComponent(JList<? extends BugType> list, BugType type,
             int index, boolean isSelected, boolean cellHasFocus) {
         JLabel label = (JLabel) defaultRenderer.getListCellRendererComponent(
-                list, value, index, isSelected, cellHasFocus);
-        if (value instanceof BugType) {
-            BugType type = (BugType) value;
-            String iconPath = "bugs/normal/open_" + type.getKey() + ".png";
-            String text = type.getValue();
-            ImageIcon icon = ImageProvider.get(iconPath);
-            label.setIcon(icon);
-            label.setText(text);
-            label.setFont( new Font("Times New Roman", Font.BOLD, 12));
-        }
+                list, type, index, isSelected, cellHasFocus);
+        String iconPath = "bugs/normal/open_" + type.getKey() + ".png";
+        String text = type.getValue();
+        ImageIcon icon = ImageProvider.get(iconPath);
+        label.setIcon(icon);
+        label.setText(text);
+        label.setFont( new Font("Times New Roman", Font.BOLD, 12));
         return label;
     }
-
 }
Index: applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/util/ComponentUtil.java
===================================================================
--- applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/util/ComponentUtil.java	(revision 30502)
+++ applications/editors/josm/plugins/mapdust/src/org/openstreetmap/josm/plugins/mapdust/gui/component/util/ComponentUtil.java	(revision 30532)
@@ -30,4 +30,5 @@
 
 import static org.openstreetmap.josm.tools.I18n.tr;
+
 import java.awt.Color;
 import java.awt.Component;
@@ -35,4 +36,5 @@
 import java.awt.Rectangle;
 import java.util.List;
+
 import javax.swing.AbstractAction;
 import javax.swing.Action;
@@ -52,4 +54,5 @@
 import javax.swing.SwingConstants;
 import javax.swing.border.LineBorder;
+
 import org.openstreetmap.josm.plugins.mapdust.gui.component.model.ActionListModel;
 import org.openstreetmap.josm.plugins.mapdust.gui.component.model.BugsListModel;
@@ -58,4 +61,5 @@
 import org.openstreetmap.josm.plugins.mapdust.gui.component.renderer.BugListCellRenderer;
 import org.openstreetmap.josm.plugins.mapdust.gui.value.MapdustAction;
+import org.openstreetmap.josm.plugins.mapdust.service.value.BugType;
 import org.openstreetmap.josm.plugins.mapdust.service.value.MapdustBug;
 import org.openstreetmap.josm.tools.ImageProvider;
@@ -211,5 +215,5 @@
      * @return A <code>JScrollPane</code> object
      */
-    public static JScrollPane createJScrollPane(JList list) {
+    public static JScrollPane createJScrollPane(JList<?> list) {
         JScrollPane jScrollPane = new JScrollPane();
         jScrollPane.setViewportView(list);
@@ -224,6 +228,6 @@
      * @return A <code>JList</code> object
      */
-    public static JList createJList(List<MapdustAction> list) {
-        final JList jList = new JList(new ActionListModel(list));
+    public static JList<MapdustAction> createJList(List<MapdustAction> list) {
+        final JList<MapdustAction> jList = new JList<>(new ActionListModel(list));
         jList.setBorder(new LineBorder(Color.black, 1, false));
         jList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
@@ -240,7 +244,6 @@
      * @return A <code>JList</code>
      */
-    public static JList createJList(List<MapdustBug> bugsList,
-            final JPopupMenu menu) {
-        final JList jList = new JList(new BugsListModel(bugsList));
+    public static JList<MapdustBug> createJList(List<MapdustBug> bugsList, final JPopupMenu menu) {
+        final JList<MapdustBug> jList = new JList<>(new BugsListModel(bugsList));
         jList.setBorder(new LineBorder(Color.black, 1, false));
         jList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
@@ -296,7 +299,7 @@
      * @return A <code>JComboBox</code> object
      */
-    public static JComboBox createJComboBox(Rectangle bounds,
-            ListCellRenderer renderer, Color backgroundColor) {
-        JComboBox jComboBox = new JComboBox(new TypesListModel());
+    public static JComboBox<BugType> createJComboBox(Rectangle bounds,
+            ListCellRenderer<BugType> renderer, Color backgroundColor) {
+        JComboBox<BugType> jComboBox = new JComboBox<>(new TypesListModel());
         jComboBox.setSelectedIndex(0);
         jComboBox.setBackground(backgroundColor);
