Index: trunk/src/org/openstreetmap/josm/actions/AlignInLineAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/AlignInLineAction.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/actions/AlignInLineAction.java	(revision 16913)
@@ -363,9 +363,12 @@
          * Such as a^2 + b^2 = 1, ie (-b, a) is a unit vector of line
          */
-        private double a, b, c;
+        private double a;
+        private double b;
+        private final double c;
         /**
          * (xM, yM) are coordinates of a point of the line
          */
-        private double xM, yM;
+        private final double xM;
+        private final double yM;
 
         /**
Index: trunk/src/org/openstreetmap/josm/actions/SaveAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/SaveAction.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/actions/SaveAction.java	(revision 16913)
@@ -35,5 +35,5 @@
  */
 public final class SaveAction extends SaveActionBase {
-    private static SaveAction instance = new SaveAction();
+    private static final SaveAction instance = new SaveAction();
 
     private final PropertyChangeListener updateOnRequireSaveChange = evt -> {
Index: trunk/src/org/openstreetmap/josm/actions/SaveAsAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/SaveAsAction.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/actions/SaveAsAction.java	(revision 16913)
@@ -17,5 +17,5 @@
  */
 public class SaveAsAction extends SaveActionBase {
-    private static SaveAsAction instance = new SaveAsAction();
+    private static final SaveAsAction instance = new SaveAsAction();
 
     /**
Index: trunk/src/org/openstreetmap/josm/actions/SelectNonBranchingWaySequences.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/SelectNonBranchingWaySequences.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/actions/SelectNonBranchingWaySequences.java	(revision 16913)
@@ -22,9 +22,9 @@
      * outer endpoints of selected ways
      */
-    private Set<Node> outerNodes;
+    private final Set<Node> outerNodes;
     /**
      * endpoints of selected ways
      */
-    private Set<Node> nodes;
+    private final Set<Node> nodes;
 
     /**
Index: trunk/src/org/openstreetmap/josm/data/APIDataSet.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/APIDataSet.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/data/APIDataSet.java	(revision 16913)
@@ -37,5 +37,5 @@
 public class APIDataSet {
     private List<OsmPrimitive> toAdd;
-    private List<OsmPrimitive> toUpdate;
+    private final List<OsmPrimitive> toUpdate;
     private List<OsmPrimitive> toDelete;
 
Index: trunk/src/org/openstreetmap/josm/data/cache/JCSCachedTileLoaderJob.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/cache/JCSCachedTileLoaderJob.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/data/cache/JCSCachedTileLoaderJob.java	(revision 16913)
@@ -93,5 +93,5 @@
     private Runnable finishTask;
     private boolean force;
-    private long minimumExpiryTime;
+    private final long minimumExpiryTime;
 
     /**
Index: trunk/src/org/openstreetmap/josm/data/gpx/GpxExtensionCollection.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/gpx/GpxExtensionCollection.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/data/gpx/GpxExtensionCollection.java	(revision 16913)
@@ -23,5 +23,5 @@
     private static final long serialVersionUID = 1L;
 
-    private Stack<GpxExtension> childStack = new Stack<>();
+    private final Stack<GpxExtension> childStack = new Stack<>();
     private IWithAttributes parent;
 
Index: trunk/src/org/openstreetmap/josm/data/imagery/CachedTileLoaderFactory.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/imagery/CachedTileLoaderFactory.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/data/imagery/CachedTileLoaderFactory.java	(revision 16913)
@@ -30,5 +30,5 @@
     public static final StringProperty PROP_TILECACHE_DIR = getTileCacheDir();
     private final ICacheAccess<String, BufferedImageCacheEntry> cache;
-    private Constructor<? extends TileLoader> tileLoaderConstructor;
+    private final Constructor<? extends TileLoader> tileLoaderConstructor;
 
     /**
Index: trunk/src/org/openstreetmap/josm/data/osm/AbstractDataSourceChangeEvent.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/AbstractDataSourceChangeEvent.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/data/osm/AbstractDataSourceChangeEvent.java	(revision 16913)
@@ -15,6 +15,6 @@
 public abstract class AbstractDataSourceChangeEvent implements DataSourceChangeEvent {
 
-    private DataSet source;
-    private Set<DataSource> old;
+    private final DataSet source;
+    private final Set<DataSource> old;
 
     /**
Index: trunk/src/org/openstreetmap/josm/data/osm/OsmPrimitive.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/OsmPrimitive.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/data/osm/OsmPrimitive.java	(revision 16913)
@@ -59,5 +59,5 @@
      * @see #FLAG_DIRECTION_REVERSED
      */
-    private static volatile Match reversedDirectionKeys;
+    private static final Match reversedDirectionKeys;
 
     static {
Index: trunk/src/org/openstreetmap/josm/data/osm/User.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/User.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/data/osm/User.java	(revision 16913)
@@ -28,5 +28,5 @@
      * the map of known users
      */
-    private static Map<Long, User> userMap = new HashMap<>();
+    private static final Map<Long, User> userMap = new HashMap<>();
 
     /**
Index: trunk/src/org/openstreetmap/josm/data/osm/history/HistoryOsmPrimitive.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/history/HistoryOsmPrimitive.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/data/osm/history/HistoryOsmPrimitive.java	(revision 16913)
@@ -33,11 +33,11 @@
 public abstract class HistoryOsmPrimitive implements Tagged, Comparable<HistoryOsmPrimitive>, PrimitiveId {
 
-    private long id;
-    private boolean visible;
-    private User user;
-    private long changesetId;
+    private final long id;
+    private final boolean visible;
+    private final User user;
+    private final long changesetId;
     private Changeset changeset;
-    private Date timestamp;
-    private long version;
+    private final Date timestamp;
+    private final long version;
     private Map<String, String> tags;
 
Index: trunk/src/org/openstreetmap/josm/data/osm/search/SearchCompiler.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/search/SearchCompiler.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/data/osm/search/SearchCompiler.java	(revision 16913)
@@ -80,10 +80,10 @@
     private final boolean caseSensitive;
     private final boolean regexSearch;
-    private static String rxErrorMsg = marktr("The regex \"{0}\" had a parse error at offset {1}, full error:\n\n{2}");
-    private static String rxErrorMsgNoPos = marktr("The regex \"{0}\" had a parse error, full error:\n\n{1}");
+    private static final String rxErrorMsg = marktr("The regex \"{0}\" had a parse error at offset {1}, full error:\n\n{2}");
+    private static final String rxErrorMsgNoPos = marktr("The regex \"{0}\" had a parse error, full error:\n\n{1}");
     private final PushbackTokenizer tokenizer;
-    private static Map<String, SimpleMatchFactory> simpleMatchFactoryMap = new HashMap<>();
-    private static Map<String, UnaryMatchFactory> unaryMatchFactoryMap = new HashMap<>();
-    private static Map<String, BinaryMatchFactory> binaryMatchFactoryMap = new HashMap<>();
+    private static final Map<String, SimpleMatchFactory> simpleMatchFactoryMap = new HashMap<>();
+    private static final Map<String, UnaryMatchFactory> unaryMatchFactoryMap = new HashMap<>();
+    private static final Map<String, BinaryMatchFactory> binaryMatchFactoryMap = new HashMap<>();
 
     static {
@@ -230,5 +230,5 @@
 
     public static class CoreUnaryMatchFactory implements UnaryMatchFactory {
-        private static Collection<String> keywords = Arrays.asList("parent", "child");
+        private static final Collection<String> keywords = Arrays.asList("parent", "child");
 
         @Override
@@ -1167,5 +1167,5 @@
      */
     public static class UserMatch extends Match {
-        private String user;
+        private final String user;
 
         UserMatch(String user) {
@@ -1219,5 +1219,5 @@
      */
     private static class RoleMatch extends Match {
-        private String role;
+        private final String role;
 
         RoleMatch(String role) {
Index: trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/StyledMapRenderer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/StyledMapRenderer.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/StyledMapRenderer.java	(revision 16913)
@@ -355,5 +355,5 @@
 
     //flag that activate wider highlight mode
-    private boolean useWiderHighlight;
+    private final boolean useWiderHighlight;
 
     private boolean useStrokes;
Index: trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2GridShiftFileWrapper.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2GridShiftFileWrapper.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2GridShiftFileWrapper.java	(revision 16913)
@@ -25,5 +25,5 @@
     public static final float NTV2_SOURCE_PRIORITY_DOWNLOAD = 5f;
 
-    private static Map<Float, NTV2GridShiftFileSource> sources = new TreeMap<>(Collections.reverseOrder());
+    private static final Map<Float, NTV2GridShiftFileSource> sources = new TreeMap<>(Collections.reverseOrder());
 
     /**
Index: trunk/src/org/openstreetmap/josm/data/validation/tests/SharpAngles.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/validation/tests/SharpAngles.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/data/validation/tests/SharpAngles.java	(revision 16913)
@@ -34,5 +34,5 @@
     private double maxLength = 10.0; // meters
     /** Specific highway types to ignore */
-    private Collection<String> ignoreHighways = new TreeSet<>(
+    private final Collection<String> ignoreHighways = new TreeSet<>(
             Arrays.asList("platform", "rest_area", "services", "via_ferrata"));
 
Index: trunk/src/org/openstreetmap/josm/data/validation/tests/TagChecker.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/validation/tests/TagChecker.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/data/validation/tests/TagChecker.java	(revision 16913)
@@ -88,5 +88,5 @@
     private static volatile HashSet<String> additionalPresetsValueData;
     /** often used tags which are not in presets */
-    private static volatile MultiMap<String, String> oftenUsedTags = new MultiMap<>();
+    private static final MultiMap<String, String> oftenUsedTags = new MultiMap<>();
     private static final Map<TaggingPreset, List<TaggingPresetItem>> presetIndex = new LinkedHashMap<>();
 
Index: trunk/src/org/openstreetmap/josm/gui/ExtendedDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/ExtendedDialog.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/ExtendedDialog.java	(revision 16913)
@@ -85,5 +85,5 @@
     private int toggleValue = -1;
     private ConditionalOptionPaneUtil.MessagePanel togglePanel;
-    private Component parent;
+    private final Component parent;
     private Component content;
     private final String[] bTexts;
@@ -94,5 +94,5 @@
     protected JButton defaultButton;
     private transient Icon icon;
-    private boolean modal;
+    private final boolean modal;
     private boolean focusOnDefaultButton;
 
Index: trunk/src/org/openstreetmap/josm/gui/IconToggleButton.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/IconToggleButton.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/IconToggleButton.java	(revision 16913)
@@ -26,5 +26,5 @@
     private transient ShowHideButtonListener listener;
     private boolean hideIfDisabled;
-    private boolean isExpert;
+    private final boolean isExpert;
 
     /**
Index: trunk/src/org/openstreetmap/josm/gui/MainApplication.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/MainApplication.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/MainApplication.java	(revision 16913)
@@ -737,5 +737,5 @@
             Policy.setPolicy(new Policy() {
                 // Permissions for plug-ins loaded when josm is started via webstart
-                private PermissionCollection pc;
+                private final PermissionCollection pc;
 
                 {
Index: trunk/src/org/openstreetmap/josm/gui/MenuScroller.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/MenuScroller.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/MenuScroller.java	(revision 16913)
@@ -43,6 +43,6 @@
     private JPopupMenu menu;
     private Component[] menuItems;
-    private MenuScrollItem upItem;
-    private MenuScrollItem downItem;
+    private final MenuScrollItem upItem;
+    private final MenuScrollItem downItem;
     private final MenuScrollListener menuListener = new MenuScrollListener();
     private final MouseWheelListener mouseWheelListener = new MouseScrollListener();
Index: trunk/src/org/openstreetmap/josm/gui/NotificationManager.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/NotificationManager.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/NotificationManager.java	(revision 16913)
@@ -67,5 +67,5 @@
     private final Deque<Notification> queue;
 
-    private static IntegerProperty pauseTime = new IntegerProperty("notification-default-pause-time-ms", 300); // milliseconds
+    private static final IntegerProperty pauseTime = new IntegerProperty("notification-default-pause-time-ms", 300); // milliseconds
 
     private long displayTimeStart;
Index: trunk/src/org/openstreetmap/josm/gui/PleaseWaitRunnable.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/PleaseWaitRunnable.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/PleaseWaitRunnable.java	(revision 16913)
@@ -25,5 +25,5 @@
  */
 public abstract class PleaseWaitRunnable implements Runnable, CancelListener {
-    private boolean ignoreException;
+    private final boolean ignoreException;
     private final String title;
 
Index: trunk/src/org/openstreetmap/josm/gui/bbox/SlippyMapBBoxChooser.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/bbox/SlippyMapBBoxChooser.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/bbox/SlippyMapBBoxChooser.java	(revision 16913)
@@ -60,5 +60,5 @@
     }
 
-    private static CopyOnWriteArrayList<TileSourceProvider> providers = new CopyOnWriteArrayList<>();
+    private static final CopyOnWriteArrayList<TileSourceProvider> providers = new CopyOnWriteArrayList<>();
     static {
         addTileSourceProvider(new DefaultOsmTileSourceProvider());
Index: trunk/src/org/openstreetmap/josm/gui/bbox/SlippyMapControler.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/bbox/SlippyMapControler.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/bbox/SlippyMapControler.java	(revision 16913)
@@ -37,5 +37,5 @@
 
     /** How often to do the moving (milliseconds) */
-    private static long timerInterval = 20;
+    private static final long timerInterval = 20;
 
     /** The maximum speed (pixels per timer interval) */
Index: trunk/src/org/openstreetmap/josm/gui/bugreport/DebugTextDisplay.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/bugreport/DebugTextDisplay.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/bugreport/DebugTextDisplay.java	(revision 16913)
@@ -20,5 +20,5 @@
     private static final String CODE_PATTERN = "{{{%n%s%n}}}";
     private String text;
-    private JosmTextArea textArea;
+    private final JosmTextArea textArea;
 
     /**
Index: trunk/src/org/openstreetmap/josm/gui/correction/CorrectionTableModel.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/correction/CorrectionTableModel.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/correction/CorrectionTableModel.java	(revision 16913)
@@ -18,5 +18,5 @@
 
     private final transient List<C> corrections;
-    private boolean[] apply;
+    private final boolean[] apply;
     private final int applyColumn;
 
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/ToggleDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/ToggleDialog.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/ToggleDialog.java	(revision 16913)
@@ -150,5 +150,5 @@
 
     /** the preferred height if the toggle dialog is expanded */
-    private int preferredHeight;
+    private final int preferredHeight;
 
     /** the JDialog displaying the toggle dialog as undocked dialog */
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/layer/ActivateLayerAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/layer/ActivateLayerAction.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/layer/ActivateLayerAction.java	(revision 16913)
@@ -29,5 +29,5 @@
 implements IEnabledStateUpdating, ActiveLayerChangeListener, MultikeyShortcutAction {
     private transient Layer layer;
-    private transient Shortcut multikeyShortcut;
+    private final transient Shortcut multikeyShortcut;
     private final LayerListModel model;
 
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/layer/MergeAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/layer/MergeAction.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/layer/MergeAction.java	(revision 16913)
@@ -25,6 +25,6 @@
  */
 public final class MergeAction extends AbstractAction implements IEnabledStateUpdating, LayerAction, Layer.MultiLayerAction {
-    private transient Layer layer;
-    private transient List<Layer> layers;
+    private final transient Layer layer;
+    private final transient List<Layer> layers;
     private final LayerListModel model;
 
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/relation/ChildRelationBrowser.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/relation/ChildRelationBrowser.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/relation/ChildRelationBrowser.java	(revision 16913)
@@ -65,8 +65,8 @@
     private RelationTree childTree;
     /**  the tree model */
-    private transient RelationTreeModel model;
+    private final transient RelationTreeModel model;
 
     /** the osm data layer this browser is related to */
-    private transient OsmDataLayer layer;
+    private final transient OsmDataLayer layer;
 
     /** the editAction used in the bottom panel and for doubleClick */
Index: trunk/src/org/openstreetmap/josm/gui/download/DownloadSourceSizingPolicy.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/download/DownloadSourceSizingPolicy.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/download/DownloadSourceSizingPolicy.java	(revision 16913)
@@ -68,5 +68,5 @@
 
         private final AbstractProperty<Integer> preference;
-        private IntSupplier minHeight;
+        private final IntSupplier minHeight;
 
         /**
Index: trunk/src/org/openstreetmap/josm/gui/io/CustomConfigurator.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/io/CustomConfigurator.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/io/CustomConfigurator.java	(revision 16913)
@@ -379,5 +379,5 @@
     public static class XMLCommandProcessor {
 
-        private Preferences mainPrefs;
+        private final Preferences mainPrefs;
         private final Map<String, Element> tasksMap = new HashMap<>();
         private final Map<String, String> environment = new HashMap<>();
Index: trunk/src/org/openstreetmap/josm/gui/layer/AbstractCachedTileSourceLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/AbstractCachedTileSourceLayer.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/layer/AbstractCachedTileSourceLayer.java	(revision 16913)
@@ -26,5 +26,5 @@
 public abstract class AbstractCachedTileSourceLayer<T extends AbstractTMSTileSource> extends AbstractTileSourceLayer<T> {
     /** loader factory responsible for loading tiles for all layers */
-    private static Map<String, TileLoaderFactory> loaderFactories = new ConcurrentHashMap<>();
+    private static final Map<String, TileLoaderFactory> loaderFactories = new ConcurrentHashMap<>();
 
     private static final String PREFERENCE_PREFIX = "imagery.cache.";
Index: trunk/src/org/openstreetmap/josm/gui/layer/AbstractTileSourceLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/AbstractTileSourceLayer.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/layer/AbstractTileSourceLayer.java	(revision 16913)
@@ -155,5 +155,5 @@
 
     /** additional layer menu actions */
-    private static List<MenuAddition> menuAdditions = new LinkedList<>();
+    private static final List<MenuAddition> menuAdditions = new LinkedList<>();
 
     /** minimum zoom level to show to user */
Index: trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java	(revision 16913)
@@ -380,5 +380,5 @@
      */
     public final DataSet data;
-    private DataSetListenerAdapter dataSetListenerAdapter;
+    private final DataSetListenerAdapter dataSetListenerAdapter;
 
     /**
Index: trunk/src/org/openstreetmap/josm/gui/layer/geoimage/GeoImageLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/geoimage/GeoImageLayer.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/layer/geoimage/GeoImageLayer.java	(revision 16913)
@@ -73,5 +73,5 @@
         JumpToMarkerLayer, NavigatableComponent.ZoomChangeListener, ImageDataUpdateListener {
 
-    private static List<Action> menuAdditions = new LinkedList<>();
+    private static final List<Action> menuAdditions = new LinkedList<>();
 
     private static volatile List<MapMode> supportedMapModes;
Index: trunk/src/org/openstreetmap/josm/gui/layer/gpx/GpxDrawHelper.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/gpx/GpxDrawHelper.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/layer/gpx/GpxDrawHelper.java	(revision 16913)
@@ -176,10 +176,10 @@
 
     // setup color maps used by heat map
-    private static Color[] heatMapLutColorJosmInferno = createColorFromResource("inferno");
-    private static Color[] heatMapLutColorJosmViridis = createColorFromResource("viridis");
-    private static Color[] heatMapLutColorJosmBrown2Green = createColorFromResource("brown2green");
-    private static Color[] heatMapLutColorJosmRed2Blue = createColorFromResource("red2blue");
-
-    private static Color[] rtkLibQualityColors = {
+    private static final Color[] heatMapLutColorJosmInferno = createColorFromResource("inferno");
+    private static final Color[] heatMapLutColorJosmViridis = createColorFromResource("viridis");
+    private static final Color[] heatMapLutColorJosmBrown2Green = createColorFromResource("brown2green");
+    private static final Color[] heatMapLutColorJosmRed2Blue = createColorFromResource("red2blue");
+
+    private static final Color[] rtkLibQualityColors = {
         Color.GREEN, // Fixed, solution by carrier‐based relative positioning and the integer ambiguity is properly resolved.
         Color.ORANGE, // Float, solution by carrier‐based relative positioning but the integer ambiguity is not resolved.
Index: trunk/src/org/openstreetmap/josm/gui/mappaint/MapPaintStyles.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/mappaint/MapPaintStyles.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/mappaint/MapPaintStyles.java	(revision 16913)
@@ -82,5 +82,5 @@
     }
 
-    private static ElemStyles styles = new ElemStyles();
+    private static final ElemStyles styles = new ElemStyles();
 
     /**
Index: trunk/src/org/openstreetmap/josm/gui/preferences/advanced/AdvancedPreference.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/advanced/AdvancedPreference.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/advanced/AdvancedPreference.java	(revision 16913)
@@ -237,5 +237,5 @@
         p.add(more, GBC.std().insets(5, 5, 0, 0));
         more.addActionListener(new ActionListener() {
-            private JPopupMenu menu = buildPopupMenu();
+            private final JPopupMenu menu = buildPopupMenu();
             @Override
             public void actionPerformed(ActionEvent ev) {
Index: trunk/src/org/openstreetmap/josm/gui/preferences/imagery/HeadersTable.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/imagery/HeadersTable.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/imagery/HeadersTable.java	(revision 16913)
@@ -81,5 +81,5 @@
     }
 
-    private List<String[]> headers;
+    private final List<String[]> headers;
 
     /**
Index: trunk/src/org/openstreetmap/josm/gui/preferences/plugin/PluginListPanel.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/plugin/PluginListPanel.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/plugin/PluginListPanel.java	(revision 16913)
@@ -37,5 +37,5 @@
     }
 
-    private transient PluginPreferencesModel model;
+    private final transient PluginPreferencesModel model;
 
     /**
Index: trunk/src/org/openstreetmap/josm/gui/preferences/projection/GaussKruegerProjectionChoice.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/projection/GaussKruegerProjectionChoice.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/projection/GaussKruegerProjectionChoice.java	(revision 16913)
@@ -16,5 +16,5 @@
 public class GaussKruegerProjectionChoice extends ListProjectionChoice {
 
-    private static String[] zones = {"2", "3", "4", "5"};
+    private static final String[] zones = {"2", "3", "4", "5"};
 
     /**
Index: trunk/src/org/openstreetmap/josm/gui/preferences/projection/LambertCC9ZonesProjectionChoice.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/projection/LambertCC9ZonesProjectionChoice.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/projection/LambertCC9ZonesProjectionChoice.java	(revision 16913)
@@ -23,5 +23,5 @@
 public class LambertCC9ZonesProjectionChoice extends ListProjectionChoice {
 
-    private static String[] lambert9zones = {
+    private static final String[] lambert9zones = {
         tr("{0} ({1} to {2} degrees)", 1, 41, 43),
         tr("{0} ({1} to {2} degrees)", 2, 42, 44),
Index: trunk/src/org/openstreetmap/josm/gui/preferences/server/ProxyPreference.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/server/ProxyPreference.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/server/ProxyPreference.java	(revision 16913)
@@ -29,5 +29,5 @@
     }
 
-    private static Set<ProxyPreferenceListener> listeners = new HashSet<>();
+    private static final Set<ProxyPreferenceListener> listeners = new HashSet<>();
 
     private ProxyPreferencesPanel pnlProxyPreferences;
Index: trunk/src/org/openstreetmap/josm/gui/preferences/shortcut/PrefJPanel.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/shortcut/PrefJPanel.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/shortcut/PrefJPanel.java	(revision 16913)
@@ -70,5 +70,5 @@
     // A list of keys to present the user. Sadly this really is a list of keys Java knows about,
     // not a list of real physical keys. If someone knows how to get that list?
-    private static Map<Integer, String> keyList = setKeyList();
+    private static final Map<Integer, String> keyList = setKeyList();
 
     private final JCheckBox cbAlt = new JCheckBox();
Index: trunk/src/org/openstreetmap/josm/gui/tagging/TagModel.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/tagging/TagModel.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/tagging/TagModel.java	(revision 16913)
@@ -15,5 +15,5 @@
 
     /** the list of values */
-    private List<String> values;
+    private final List<String> values;
 
     /**
Index: trunk/src/org/openstreetmap/josm/gui/widgets/QuadStateCheckBox.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/widgets/QuadStateCheckBox.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/gui/widgets/QuadStateCheckBox.java	(revision 16913)
@@ -45,5 +45,5 @@
 
     private final transient QuadStateDecorator cbModel;
-    private State[] allowed;
+    private final State[] allowed;
     private final transient MouseListener mouseAdapter = new MouseAdapter() {
         @Override
Index: trunk/src/org/openstreetmap/josm/io/OsmServerBackreferenceReader.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/OsmServerBackreferenceReader.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/io/OsmServerBackreferenceReader.java	(revision 16913)
@@ -37,7 +37,7 @@
 
     /** the id of the primitive whose referrers are to be read */
-    private long id;
+    private final long id;
     /** the type of the primitive */
-    private OsmPrimitiveType primitiveType;
+    private final OsmPrimitiveType primitiveType;
     /** true if this reader should complete incomplete primitives */
     private boolean readFull;
Index: trunk/src/org/openstreetmap/josm/io/OsmServerObjectReader.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/OsmServerObjectReader.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/io/OsmServerObjectReader.java	(revision 16913)
@@ -28,9 +28,9 @@
 public class OsmServerObjectReader extends OsmServerReader {
     /** the id of the object to download */
-    private PrimitiveId id;
+    private final PrimitiveId id;
     /** true if a full download is required, i.e. a download including the immediate children */
-    private boolean full;
+    private final boolean full;
     /** the specific version number, if required (incompatible with full), or -1 else */
-    private int version;
+    private final int version;
 
     /**
Index: trunk/src/org/openstreetmap/josm/io/audio/JavaSoundPlayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/audio/JavaSoundPlayer.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/io/audio/JavaSoundPlayer.java	(revision 16913)
@@ -28,5 +28,5 @@
 class JavaSoundPlayer implements SoundPlayer {
 
-    private static int chunk = 4000; /* bytes */
+    private static final int chunk = 4000; /* bytes */
 
     private AudioInputStream audioInputStream;
Index: trunk/src/org/openstreetmap/josm/io/imagery/ImageryReader.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/imagery/ImageryReader.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/io/imagery/ImageryReader.java	(revision 16913)
@@ -133,5 +133,5 @@
         private ImageryInfo mirrorEntry;
         private ImageryBounds bounds;
-        private Map<ImageryBounds, ImageryBounds> boundsInterner = new HashMap<>();
+        private final Map<ImageryBounds, ImageryBounds> boundsInterner = new HashMap<>();
         private Shape shape;
         // language of last element, does only work for simple ENTRY_ATTRIBUTE's
Index: trunk/src/org/openstreetmap/josm/io/remotecontrol/RequestProcessor.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/remotecontrol/RequestProcessor.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/io/remotecontrol/RequestProcessor.java	(revision 16913)
@@ -83,5 +83,5 @@
      * can extend this list by using @see addRequestHandler
      */
-    private static Map<String, Class<? extends RequestHandler>> handlers = new TreeMap<>();
+    private static final Map<String, Class<? extends RequestHandler>> handlers = new TreeMap<>();
 
     static {
Index: trunk/src/org/openstreetmap/josm/io/session/SessionWriter.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/session/SessionWriter.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/io/session/SessionWriter.java	(revision 16913)
@@ -58,5 +58,5 @@
 public class SessionWriter {
 
-    private static Map<Class<? extends Layer>, Class<? extends SessionLayerExporter>> sessionLayerExporters = new HashMap<>();
+    private static final Map<Class<? extends Layer>, Class<? extends SessionLayerExporter>> sessionLayerExporters = new HashMap<>();
 
     private final List<Layer> layers;
Index: trunk/src/org/openstreetmap/josm/tools/I18n.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/I18n.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/tools/I18n.java	(revision 16913)
@@ -94,6 +94,6 @@
     /** Map (english/locale) of plural strings **/
     private static volatile Map<String, String[]> pstrings;
-    private static Locale originalLocale = Locale.getDefault();
-    private static Map<String, PluralMode> languages = new HashMap<>();
+    private static final Locale originalLocale = Locale.getDefault();
+    private static final Map<String, PluralMode> languages = new HashMap<>();
     // NOTE: check also WikiLanguage handling in LanguageInfo.java when adding new languages
     static {
Index: trunk/src/org/openstreetmap/josm/tools/ListenableWeakReference.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/ListenableWeakReference.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/tools/ListenableWeakReference.java	(revision 16913)
@@ -19,5 +19,5 @@
     private static final ReferenceQueue<Object> GLOBAL_QUEUE = new ReferenceQueue<>();
     private static Thread thread;
-    private Runnable runOnDereference;
+    private final Runnable runOnDereference;
 
     /**
Index: trunk/src/org/openstreetmap/josm/tools/OptionParser.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/OptionParser.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/tools/OptionParser.java	(revision 16913)
@@ -22,5 +22,5 @@
 public class OptionParser {
 
-    private HashMap<String, AvailableOption> availableOptions = new HashMap<>();
+    private final HashMap<String, AvailableOption> availableOptions = new HashMap<>();
     private final String program;
 
Index: trunk/src/org/openstreetmap/josm/tools/Shortcut.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/Shortcut.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/tools/Shortcut.java	(revision 16913)
@@ -306,5 +306,5 @@
 
     // here we store our shortcuts
-    private static ShortcutCollection shortcuts = new ShortcutCollection();
+    private static final ShortcutCollection shortcuts = new ShortcutCollection();
 
     private static class ShortcutCollection extends CopyOnWriteArrayList<Shortcut> {
@@ -331,5 +331,5 @@
 
     // and here our modifier groups
-    private static Map<Integer, Integer> groups = new HashMap<>();
+    private static final Map<Integer, Integer> groups = new HashMap<>();
 
     // check if something collides with an existing shortcut
@@ -387,6 +387,6 @@
 
     /* for reassignment */
-    private static int[] mods = {ALT_CTRL, ALT_SHIFT, CTRL_SHIFT, ALT_CTRL_SHIFT};
-    private static int[] keys = {KeyEvent.VK_F1, KeyEvent.VK_F2, KeyEvent.VK_F3, KeyEvent.VK_F4,
+    private static final int[] mods = {ALT_CTRL, ALT_SHIFT, CTRL_SHIFT, ALT_CTRL_SHIFT};
+    private static final int[] keys = {KeyEvent.VK_F1, KeyEvent.VK_F2, KeyEvent.VK_F3, KeyEvent.VK_F4,
                                  KeyEvent.VK_F5, KeyEvent.VK_F6, KeyEvent.VK_F7, KeyEvent.VK_F8,
                                  KeyEvent.VK_F9, KeyEvent.VK_F10, KeyEvent.VK_F11, KeyEvent.VK_F12};
Index: trunk/src/org/openstreetmap/josm/tools/bugreport/BugReportQueue.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/bugreport/BugReportQueue.java	(revision 16912)
+++ trunk/src/org/openstreetmap/josm/tools/bugreport/BugReportQueue.java	(revision 16913)
@@ -91,5 +91,5 @@
     private class BugReportDisplayRunnable implements Runnable {
 
-        private volatile boolean running = true;
+        private final boolean running = true;
 
         @Override
