Ignore:
Timestamp:
2015-05-02T00:55:19+02:00 (9 years ago)
Author:
Don-vip
Message:

fix potential NPEs and Sonar issues related to serialization

Location:
trunk/src/org/openstreetmap/josm/actions
Files:
30 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/actions/AddImageryLayerAction.java

    r7693 r8308  
    1111import java.net.MalformedURLException;
    1212
    13 import javax.swing.Action;
    1413import javax.swing.JComboBox;
    1514import javax.swing.JOptionPane;
     
    3635 */
    3736public class AddImageryLayerAction extends JosmAction implements AdaptableAction {
    38     private final ImageryInfo info;
     37    private final transient ImageryInfo info;
    3938
    4039    /**
  • trunk/src/org/openstreetmap/josm/actions/AutoScaleAction.java

    r8200 r8308  
    5555    private final String mode;
    5656
    57     protected ZoomChangeAdapter zoomChangeAdapter;
    58     protected MapFrameAdapter mapFrameAdapter;
     57    protected transient ZoomChangeAdapter zoomChangeAdapter;
     58    protected transient MapFrameAdapter mapFrameAdapter;
    5959    /** Time of last zoom to bounds action */
    6060    protected long lastZoomTime = -1;
  • trunk/src/org/openstreetmap/josm/actions/ChangesetManagerToggleAction.java

    r6327 r8308  
    1919 */
    2020public class ChangesetManagerToggleAction extends ToggleAction {
    21     private WindowListener changesetCacheManagerClosedHandler;
     21    private transient WindowListener changesetCacheManagerClosedHandler;
    2222
    2323    /**
  • trunk/src/org/openstreetmap/josm/actions/CreateCircleAction.java

    r8303 r8308  
    77import java.awt.event.ActionEvent;
    88import java.awt.event.KeyEvent;
     9import java.io.Serializable;
    910import java.util.ArrayList;
    1011import java.util.Arrays;
     
    113114     * Comparator used to order PolarNode relative to their angle.
    114115     */
    115     private static class PolarNodeComparator implements Comparator<PolarNode> {
    116 
     116    private static class PolarNodeComparator implements Comparator<PolarNode>, Serializable {
     117        private static final long serialVersionUID = 1L;
    117118        @Override
    118119        public int compare(PolarNode pc1, PolarNode pc2) {
  • trunk/src/org/openstreetmap/josm/actions/FullscreenToggleAction.java

    r7335 r8308  
    2828 */
    2929public class FullscreenToggleAction extends ToggleAction {
    30     private GraphicsDevice gd;
     30    private transient GraphicsDevice gd;
    3131    private Rectangle prevBounds;
    3232
  • trunk/src/org/openstreetmap/josm/actions/ImageryAdjustAction.java

    r8152 r8308  
    4646    private double oldDx, oldDy;
    4747    private EastNorth prevEastNorth;
    48     private ImageryLayer layer;
     48    private transient ImageryLayer layer;
    4949    private MapMode oldMapMode;
    5050
  • trunk/src/org/openstreetmap/josm/actions/JoinAreasAction.java

    r7989 r8308  
    5555    private final LinkedList<Command> cmds = new LinkedList<>();
    5656    private int cmdsCount = 0;
    57     private final List<Relation> addedRelations = new LinkedList<>();
     57    private final transient List<Relation> addedRelations = new LinkedList<>();
    5858
    5959    /**
  • trunk/src/org/openstreetmap/josm/actions/JoinNodeWayAction.java

    r7859 r8308  
    77import java.awt.event.ActionEvent;
    88import java.awt.event.KeyEvent;
     9import java.io.Serializable;
    910import java.util.Collection;
    1011import java.util.Collections;
     
    171172     * Sorts collinear nodes by their distance to a common reference node.
    172173     */
    173     private static class NodeDistanceToRefNodeComparator implements Comparator<Node> {
     174    private static class NodeDistanceToRefNodeComparator implements Comparator<Node>, Serializable {
     175
     176        private static final long serialVersionUID = 1L;
     177
    174178        private final EastNorth refPoint;
    175179        private EastNorth refPoint2;
  • trunk/src/org/openstreetmap/josm/actions/JosmAction.java

    r7859 r8308  
    4040public abstract class JosmAction extends AbstractAction implements Destroyable {
    4141
    42     protected Shortcut sc;
    43     private LayerChangeAdapter layerChangeAdapter;
    44     private SelectionChangeAdapter selectionChangeAdapter;
     42    protected transient Shortcut sc;
     43    private transient LayerChangeAdapter layerChangeAdapter;
     44    private transient SelectionChangeAdapter selectionChangeAdapter;
    4545
    4646    /**
  • trunk/src/org/openstreetmap/josm/actions/MapRectifierWMSmenuAction.java

    r8068 r8308  
    7070     * List of available rectifier services.
    7171     */
    72     private final List<RectifierService> services = new ArrayList<>();
     72    private final transient List<RectifierService> services = new ArrayList<>();
    7373
    7474    /**
  • trunk/src/org/openstreetmap/josm/actions/OpenFileAction.java

    r8202 r8308  
    118118                        }
    119119                    });
    120                     if (matchingFiles.length == 1) {
     120                    if (matchingFiles != null && matchingFiles.length == 1) {
    121121                        // use the unique match as filename
    122122                        this.files.add(matchingFiles[0]);
  • trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java

    r8240 r8308  
    5252public class OpenLocationAction extends JosmAction {
    5353
    54     protected final List<Class<? extends DownloadTask>> downloadTasks;
     54    protected final transient List<Class<? extends DownloadTask>> downloadTasks;
    5555
    5656    /**
  • trunk/src/org/openstreetmap/josm/actions/PurgeAction.java

    r8285 r8308  
    6969    }
    7070
    71     protected OsmDataLayer layer;
     71    protected transient OsmDataLayer layer;
    7272    protected JCheckBox cbClearUndoRedo;
    7373
    74     protected Set<OsmPrimitive> toPurge;
     74    protected transient Set<OsmPrimitive> toPurge;
    7575    /**
    7676     * finally, contains all objects that are purged
    7777     */
    78     protected Set<OsmPrimitive> toPurgeChecked;
     78    protected transient Set<OsmPrimitive> toPurgeChecked;
    7979    /**
    8080     * Subset of toPurgeChecked. Marks primitives that remain in the
    8181     * dataset, but incomplete.
    8282     */
    83     protected Set<OsmPrimitive> makeIncomplete;
     83    protected transient Set<OsmPrimitive> makeIncomplete;
    8484    /**
    8585     * Subset of toPurgeChecked. Those that have not been in the selection.
    8686     */
    87     protected List<OsmPrimitive> toPurgeAdditionally;
     87    protected transient List<OsmPrimitive> toPurgeAdditionally;
    8888
    8989    @Override
  • trunk/src/org/openstreetmap/josm/actions/RenameLayerAction.java

    r7026 r8308  
    22package org.openstreetmap.josm.actions;
    33
     4import static org.openstreetmap.josm.gui.help.HelpUtil.ht;
    45import static org.openstreetmap.josm.tools.I18n.tr;
    5 import static org.openstreetmap.josm.gui.help.HelpUtil.ht;
    66
    77import java.awt.Dialog.ModalityType;
     
    1717import org.openstreetmap.josm.Main;
    1818import org.openstreetmap.josm.gui.layer.Layer;
     19import org.openstreetmap.josm.gui.widgets.JosmTextField;
    1920import org.openstreetmap.josm.tools.ImageProvider;
    20 import org.openstreetmap.josm.gui.widgets.JosmTextField;
    2121
    2222/**
     
    2929
    3030    private File file;
    31     private Layer layer;
     31    private transient Layer layer;
    3232
    3333    /**
  • trunk/src/org/openstreetmap/josm/actions/SessionSaveAsAction.java

    r7578 r8308  
    4949public class SessionSaveAsAction extends DiskAccessAction {
    5050
    51     private List<Layer> layers;
    52     private Map<Layer, SessionLayerExporter> exporters;
    53     private MultiMap<Layer, Layer> dependencies;
     51    private transient List<Layer> layers;
     52    private transient Map<Layer, SessionLayerExporter> exporters;
     53    private transient MultiMap<Layer, Layer> dependencies;
    5454
    5555    /**
  • trunk/src/org/openstreetmap/josm/actions/ToggleAction.java

    r7937 r8308  
    2323public abstract class ToggleAction extends JosmAction {
    2424
    25     private final List<ButtonModel> buttonModels = new ArrayList<>();
     25    private final transient List<ButtonModel> buttonModels = new ArrayList<>();
    2626
    2727    /**
  • trunk/src/org/openstreetmap/josm/actions/ToggleUploadDiscouragedLayerAction.java

    r7937 r8308  
    1111public class ToggleUploadDiscouragedLayerAction extends JosmAction {
    1212
    13     private OsmDataLayer layer;
    14    
     13    private transient OsmDataLayer layer;
     14
    1515    public ToggleUploadDiscouragedLayerAction(OsmDataLayer layer) {
    1616        super(tr("Encourage/discourage upload"), null, null, null, false);
  • trunk/src/org/openstreetmap/josm/actions/UnGlueAction.java

    r7152 r8308  
    4747public class UnGlueAction extends JosmAction {
    4848
    49     private Node selectedNode;
    50     private Way selectedWay;
    51     private Set<Node> selectedNodes;
     49    private transient Node selectedNode;
     50    private transient Way selectedWay;
     51    private transient Set<Node> selectedNodes;
    5252
    5353    /**
  • trunk/src/org/openstreetmap/josm/actions/ValidateAction.java

    r7117 r8308  
    3535
    3636    /** Last selection used to validate */
    37     private Collection<OsmPrimitive> lastSelection;
     37    private transient Collection<OsmPrimitive> lastSelection;
    3838
    3939    /**
  • trunk/src/org/openstreetmap/josm/actions/mapmode/AddNoteAction.java

    r8210 r8308  
    2727public class AddNoteAction extends MapMode implements KeyPressReleaseListener {
    2828
    29     private NoteData noteData;
     29    private transient NoteData noteData;
    3030
    3131    /**
  • trunk/src/org/openstreetmap/josm/actions/mapmode/DeleteAction.java

    r8291 r8308  
    5656     * set would have to be checked.
    5757     */
    58     private WaySegment oldHighlightedWaySegment = null;
     58    private transient WaySegment oldHighlightedWaySegment = null;
    5959
    6060    private static final HighlightHelper highlightHelper = new HighlightHelper();
  • trunk/src/org/openstreetmap/josm/actions/mapmode/DrawAction.java

    r8285 r8308  
    7676    private final Cursor cursorJoinWay;
    7777
    78     private Node lastUsedNode = null;
     78    private transient Node lastUsedNode = null;
    7979    private static final double PHI = Math.toRadians(90);
    8080    private double toleranceMultiplier;
    8181
    82     private Node mouseOnExistingNode;
    83     private Set<Way> mouseOnExistingWays = new HashSet<>();
     82    private transient Node mouseOnExistingNode;
     83    private transient Set<Way> mouseOnExistingWays = new HashSet<>();
    8484    // old highlights store which primitives are currently highlighted. This
    8585    // is true, even if target highlighting is disabled since the status bar
    8686    // derives its information from this list as well.
    87     private Set<OsmPrimitive> oldHighlights = new HashSet<>();
     87    private transient Set<OsmPrimitive> oldHighlights = new HashSet<>();
    8888    // new highlights contains a list of primitives that should be highlighted
    8989    // but haven’t been so far. The idea is to compare old and new and only
    9090    // repaint if there are changes.
    91     private Set<OsmPrimitive> newHighlights = new HashSet<>();
     91    private transient Set<OsmPrimitive> newHighlights = new HashSet<>();
    9292    private boolean drawHelperLine;
    9393    private boolean wayIsFinished = false;
     
    9797    private Color rubberLineColor;
    9898
    99     private Node currentBaseNode;
    100     private Node previousNode;
     99    private transient Node currentBaseNode;
     100    private transient Node previousNode;
    101101    private EastNorth currentMouseEastNorth;
    102102
    103     private final SnapHelper snapHelper = new SnapHelper();
    104 
    105     private final Shortcut backspaceShortcut;
     103    private final transient SnapHelper snapHelper = new SnapHelper();
     104
     105    private final transient Shortcut backspaceShortcut;
    106106    private final BackSpaceAction backspaceAction;
    107     private final Shortcut snappingShortcut;
     107    private final transient Shortcut snappingShortcut;
    108108    private boolean ignoreNextKeyRelease;
    109109
     
    111111    private final JCheckBoxMenuItem snapCheckboxMenuItem;
    112112    private boolean useRepeatedShortcut;
    113     private Stroke rubberLineStroke;
     113    private transient Stroke rubberLineStroke;
    114114    private static final BasicStroke BASIC_STROKE = new BasicStroke(1);
    115115
  • trunk/src/org/openstreetmap/josm/actions/mapmode/ExtrudeAction.java

    r7668 r8308  
    2525import java.util.LinkedList;
    2626import java.util.List;
     27
    2728import javax.swing.JCheckBoxMenuItem;
    2829import javax.swing.JMenuItem;
     
    4950import org.openstreetmap.josm.gui.layer.MapViewPaintable;
    5051import org.openstreetmap.josm.gui.layer.OsmDataLayer;
     52import org.openstreetmap.josm.gui.util.GuiHelper;
    5153import org.openstreetmap.josm.gui.util.KeyPressReleaseListener;
    52 import org.openstreetmap.josm.gui.util.GuiHelper;
    5354import org.openstreetmap.josm.gui.util.ModifierListener;
    5455import org.openstreetmap.josm.tools.Geometry;
     
    7273
    7374    private long mouseDownTime = 0;
    74     private WaySegment selectedSegment = null;
    75     private Node selectedNode = null;
     75    private transient WaySegment selectedSegment = null;
     76    private transient Node selectedNode = null;
    7677    private Color mainColor;
    77     private Stroke mainStroke;
     78    private transient Stroke mainStroke;
    7879
    7980    /** settings value whether shared nodes should be ignored or not */
     
    8687     */
    8788    private Color helperColor;
    88     private Stroke helperStrokeDash;
    89     private Stroke helperStrokeRA;
    90 
    91     private Stroke oldLineStroke;
     89    private transient Stroke helperStrokeDash;
     90    private transient Stroke helperStrokeRA;
     91
     92    private transient Stroke oldLineStroke;
    9293    private double symbolSize;
    9394    /**
    9495     * Possible directions to move to.
    9596     */
    96     private List<ReferenceSegment> possibleMoveDirections;
     97    private transient List<ReferenceSegment> possibleMoveDirections;
    9798
    9899
     
    105106     * The direction that is currently active.
    106107     */
    107     private ReferenceSegment activeMoveDirection;
     108    private transient ReferenceSegment activeMoveDirection;
    108109
    109110    /**
     
    135136     * the command that performed last move.
    136137     */
    137     private MoveCommand moveCommand;
     138    private transient MoveCommand moveCommand;
    138139    /**
    139140     *  The command used for dual alignment movement.
    140141     *  Needs to be separate, due to two nodes moving in different directions.
    141142     */
    142     private MoveCommand moveCommand2;
     143    private transient MoveCommand moveCommand2;
    143144
    144145    /** The cursor for the 'create_new' mode. */
     
    176177    private boolean dualAlignActive;
    177178    /** Dual alignment reference segments */
    178     private ReferenceSegment dualAlignSegment1, dualAlignSegment2;
     179    private transient ReferenceSegment dualAlignSegment1, dualAlignSegment2;
    179180    /** {@code true}, if new segment was collapsed */
    180181    private boolean dualAlignSegmentCollapsed = false;
     
    182183    private final DualAlignChangeAction dualAlignChangeAction;
    183184    private final JCheckBoxMenuItem dualAlignCheckboxMenuItem;
    184     private final Shortcut dualAlignShortcut;
     185    private final transient Shortcut dualAlignShortcut;
    185186    private boolean useRepeatedShortcut;
    186187    private boolean ignoreNextKeyRelease;
  • trunk/src/org/openstreetmap/josm/actions/mapmode/ImproveWayAccuracyAction.java

    r8061 r8308  
    6464    private static final long serialVersionUID = 42L;
    6565
    66     private Way targetWay;
    67     private Node candidateNode = null;
    68     private WaySegment candidateSegment = null;
     66    private transient Way targetWay;
     67    private transient Node candidateNode = null;
     68    private transient WaySegment candidateSegment = null;
    6969
    7070    private Point mousePos = null;
     
    8080
    8181    private Color guideColor;
    82     private Stroke selectTargetWayStroke;
    83     private Stroke moveNodeStroke;
    84     private Stroke addNodeStroke;
    85     private Stroke deleteNodeStroke;
     82    private transient Stroke selectTargetWayStroke;
     83    private transient Stroke moveNodeStroke;
     84    private transient Stroke addNodeStroke;
     85    private transient Stroke deleteNodeStroke;
    8686    private int dotSize;
    8787
  • trunk/src/org/openstreetmap/josm/actions/mapmode/ParallelWayAction.java

    r8285 r8308  
    102102    private double snapDistanceNautical;
    103103
    104     private ModifiersSpec snapModifierCombo;
    105     private ModifiersSpec copyTagsModifierCombo;
    106     private ModifiersSpec addToSelectionModifierCombo;
    107     private ModifiersSpec toggleSelectedModifierCombo;
    108     private ModifiersSpec setSelectedModifierCombo;
     104    private transient ModifiersSpec snapModifierCombo;
     105    private transient ModifiersSpec copyTagsModifierCombo;
     106    private transient ModifiersSpec addToSelectionModifierCombo;
     107    private transient ModifiersSpec toggleSelectedModifierCombo;
     108    private transient ModifiersSpec setSelectedModifierCombo;
    109109
    110110    private int initialMoveDelay;
     
    118118    private boolean mouseHasBeenDragged;
    119119
    120     private WaySegment referenceSegment;
    121     private ParallelWays pWays;
    122     private Set<Way> sourceWays;
     120    private transient WaySegment referenceSegment;
     121    private transient ParallelWays pWays;
     122    private transient Set<Way> sourceWays;
    123123    private EastNorth helperLineStart;
    124124    private EastNorth helperLineEnd;
    125125
    126     private Stroke helpLineStroke;
    127     private Stroke refLineStroke;
     126    private transient Stroke helpLineStroke;
     127    private transient Stroke refLineStroke;
    128128    private Color mainColor;
    129129
  • trunk/src/org/openstreetmap/josm/actions/mapmode/PlayHeadDragMode.java

    r6380 r8308  
    2323    private Point mousePos = null;
    2424    private Point mouseStart = null;
    25     private PlayHeadMarker playHeadMarker = null;
     25    private transient PlayHeadMarker playHeadMarker = null;
    2626
    2727    /**
  • trunk/src/org/openstreetmap/josm/actions/mapmode/SelectAction.java

    r8285 r8308  
    122122
    123123    private Mode mode = null;
    124     private final SelectionManager selectionManager;
     124    private final transient SelectionManager selectionManager;
    125125    private boolean cancelDrawMode = false;
    126126    private boolean drawTargetHighlight;
     
    171171     * set would have to be checked.
    172172     */
    173     private Set<OsmPrimitive> oldHighlights = new HashSet<>();
     173    private transient Set<OsmPrimitive> oldHighlights = new HashSet<>();
    174174
    175175    /**
     
    947947    }
    948948
    949     private CycleManager cycleManager = new CycleManager();
    950     private VirtualManager virtualManager = new VirtualManager();
     949    private transient CycleManager cycleManager = new CycleManager();
     950    private transient VirtualManager virtualManager = new VirtualManager();
    951951
    952952    private class CycleManager {
  • trunk/src/org/openstreetmap/josm/actions/mapmode/ZoomAction.java

    r6380 r8308  
    3232
    3333    /**
    34      * Manager that manages the selection rectangle with the aspect ratio of the
    35      * MapView.
     34     * Manager that manages the selection rectangle with the aspect ratio of the MapView.
    3635     */
    37     private final SelectionManager selectionManager;
     36    private final transient SelectionManager selectionManager;
    3837
    3938    /**
  • trunk/src/org/openstreetmap/josm/actions/relation/AbstractRelationAction.java

    r7937 r8308  
    1313
    1414/**
    15  * Ancestor for all actions that want to work with relation collection and 
     15 * Ancestor for all actions that want to work with relation collection and
    1616 * to be disabled if the collection is empty
    1717 * @since 5793
    1818 */
    1919public abstract class AbstractRelationAction extends AbstractAction implements OsmPrimitiveAction {
    20     protected Collection<Relation> relations = Collections.<Relation>emptySet();
     20    protected transient Collection<Relation> relations = Collections.<Relation>emptySet();
    2121
    2222    protected static final Collection<Relation> getRelations(Collection<? extends OsmPrimitive> primitives) {
     
    2828        }
    2929    }
    30    
     30
    3131    @Override
    3232    public void setPrimitives(Collection<? extends OsmPrimitive> primitives) {
     
    3434        updateEnabledState();
    3535    }
    36    
     36
    3737    protected void updateEnabledState() {
    3838        setEnabled(!relations.isEmpty());
  • trunk/src/org/openstreetmap/josm/actions/relation/DownloadSelectedIncompleteMembersAction.java

    r7946 r8308  
    2424public class DownloadSelectedIncompleteMembersAction extends AbstractRelationAction {
    2525
    26     private Collection<OsmPrimitive> incompleteMembers;
     26    private transient Collection<OsmPrimitive> incompleteMembers;
    2727
    2828    /**
Note: See TracChangeset for help on using the changeset viewer.