Revision: 5162
          http://sourceforge.net/p/jump-pilot/code/5162
Author:   michaudm
Date:     2016-11-06 10:55:04 +0000 (Sun, 06 Nov 2016)
Log Message:
-----------
Upgrade selection api to java 7  (generics, unboxing)

Modified Paths:
--------------
    core/trunk/src/com/vividsolutions/jump/workbench/ui/AbstractSelection.java
    core/trunk/src/com/vividsolutions/jump/workbench/ui/FeatureSelection.java
    core/trunk/src/com/vividsolutions/jump/workbench/ui/LineStringSelection.java
    core/trunk/src/com/vividsolutions/jump/workbench/ui/PartSelection.java
    core/trunk/src/com/vividsolutions/jump/workbench/ui/SelectionManager.java

Modified: 
core/trunk/src/com/vividsolutions/jump/workbench/ui/AbstractSelection.java
===================================================================
--- core/trunk/src/com/vividsolutions/jump/workbench/ui/AbstractSelection.java  
2016-11-06 10:16:42 UTC (rev 5161)
+++ core/trunk/src/com/vividsolutions/jump/workbench/ui/AbstractSelection.java  
2016-11-06 10:55:04 UTC (rev 5162)
@@ -36,7 +36,6 @@
 import java.util.Collection;
 import java.util.Collections;
 import java.util.HashMap;
-import java.util.HashSet;
 import java.util.Iterator;
 import java.util.LinkedHashMap;
 import java.util.LinkedHashSet;
@@ -46,7 +45,6 @@
 
 import com.vividsolutions.jts.geom.Geometry;
 import com.vividsolutions.jump.feature.Feature;
-import com.vividsolutions.jump.util.CollectionMap;
 import com.vividsolutions.jump.workbench.model.Layer;
 
 /**
@@ -56,8 +54,7 @@
 // lists with size 1 only)
 public abstract class AbstractSelection {
     
-    private Map<Layer,Map<Feature,Set<Integer>>> layerMap = 
-        new HashMap<Layer,Map<Feature,Set<Integer>>>();
+    private Map<Layer,Map<Feature,Set<Integer>>> layerMap = new HashMap<>();
 
     public abstract String getRendererContentID();
 
@@ -84,9 +81,9 @@
      */
     public List<Geometry> items(Geometry geometry, Collection<Integer> 
indices) {
         List<Geometry> allItems = items(geometry);
-        List<Geometry> items = new ArrayList<Geometry>(1);
+        List<Geometry> items = new ArrayList<>(1);
         for (Integer index : indices) {
-            items.add(allItems.get(index.intValue()));
+            items.add(allItems.get(index));
         }
         return items;
     }
@@ -108,26 +105,25 @@
      */
     public Set<Integer> getSelectedItemIndices(Layer layer, Feature feature) {
         Set<Integer> indices = 
getFeatureToSelectedItemIndexCollectionMap(layer).get(feature);
-        return indices == null ? Collections.EMPTY_SET : indices;
+        return indices == null ? Collections.<Integer>emptySet() : indices;
     }
 
     /**
      * Returns a mapping of each feature to selected items in this feature.
      */
     public Map<Feature,List<Geometry>> 
getFeatureToSelectedItemCollectionMap(Layer layer) {
-        Map<Feature,List<Geometry>> collectionMap = new 
LinkedHashMap<Feature,List<Geometry>>();
+        Map<Feature,List<Geometry>> collectionMap = new LinkedHashMap<>();
         for (Feature feature : 
getFeatureToSelectedItemIndexCollectionMap(layer).keySet()) {
             Set<Integer> set = getSelectedItemIndices(layer, feature);
-            if (set == null) {
-                //set = Collections.EMPTY_SET;
+            if (set != null) {
+                collectionMap.put(feature, items(feature.getGeometry(), set));
             }
-            else collectionMap.put(feature, items(feature.getGeometry(), set));
         }
         return collectionMap;
     }
 
     public Collection<Layer> getLayersWithSelectedItems() {
-        List<Layer> layersWithSelectedItems = new ArrayList<Layer>();
+        List<Layer> layersWithSelectedItems = new ArrayList<>();
         for (Layer layer : layerMap.keySet()) {
             if (!getFeaturesWithSelectedItems(layer).isEmpty()) {
                 layersWithSelectedItems.add(layer);
@@ -137,7 +133,7 @@
     }
 
     public Collection<Feature> getFeaturesWithSelectedItems() {
-        List<Feature> featuresWithSelectedItems = new ArrayList<Feature>();
+        List<Feature> featuresWithSelectedItems = new ArrayList<>();
         for (Layer layer : layerMap.keySet()) {
             
featuresWithSelectedItems.addAll(getFeaturesWithSelectedItems(layer));
         }
@@ -145,7 +141,7 @@
     }
 
     public Collection<Feature> getFeaturesWithSelectedItems(Layer layer) {
-        List<Feature> featuresWithSelectedItems = new ArrayList<Feature>();
+        List<Feature> featuresWithSelectedItems = new ArrayList<>();
         for (Feature feature : 
getFeatureToSelectedItemIndexCollectionMap(layer).keySet()) {
             if 
(!getFeatureToSelectedItemIndexCollectionMap(layer).get(feature).isEmpty()) {
                 featuresWithSelectedItems.add(feature);
@@ -155,7 +151,7 @@
     }
 
     public Collection<Geometry> getSelectedItems() {
-        ArrayList selectedItems = new ArrayList(1);
+        ArrayList<Geometry> selectedItems = new ArrayList<>(1);
         for (Layer layer : layerMap.keySet()) {
             selectedItems.addAll(getSelectedItems(layer));
         }
@@ -163,7 +159,7 @@
     }
 
     public Collection<Geometry> getSelectedItems(Layer layer) {
-        List<Geometry> selectedItems = new ArrayList<Geometry>(1);
+        List<Geometry> selectedItems = new ArrayList<>(1);
         for (Feature feature : 
getFeatureToSelectedItemIndexCollectionMap(layer).keySet()) {
             selectedItems.addAll(getSelectedItems(layer, feature));
         }
@@ -181,7 +177,7 @@
      */
     public Collection<Geometry> getSelectedItems(Layer layer, Feature feature, 
Geometry geometry) {
         Set<Integer> indices = 
getFeatureToSelectedItemIndexCollectionMap(layer).get(feature);
-        if (indices == null) indices = Collections.EMPTY_SET;
+        if (indices == null) indices = Collections.emptySet();
         return items(geometry, indices);
     }
 
@@ -190,9 +186,9 @@
      */
     public Set<Integer> indices(Geometry geometry, Collection<Geometry> items) 
{
         List<Geometry> allItems = items(geometry);
-        Set<Integer> indices = new LinkedHashSet<Integer>(1);
+        Set<Integer> indices = new LinkedHashSet<>(1);
         for (Geometry item : items) {
-            indices.add(new Integer(allItems.indexOf(item)));
+            indices.add(allItems.indexOf(item));
         }
         return indices;
     }
@@ -225,7 +221,7 @@
         updatePanel();
     }
 
-    public void selectItems(Layer layer, Feature feature, Collection items) {
+    public void selectItems(Layer layer, Feature feature, Collection<Geometry> 
items) {
         Collection<Geometry> itemsToSelect = 
itemsNotSelectedInAncestors(layer, feature, items);
         boolean originalPanelUpdatesEnabled = 
selectionManager.arePanelUpdatesEnabled();
         selectionManager.setPanelUpdatesEnabled(false);
@@ -246,7 +242,7 @@
         updatePanel();
     }
 
-    public void unselectItems(Layer layer, Feature feature, Collection items) {
+    public void unselectItems(Layer layer, Feature feature, 
Collection<Geometry> items) {
         boolean originalPanelUpdatesEnabled = 
selectionManager.arePanelUpdatesEnabled();
         selectionManager.setPanelUpdatesEnabled(false);
         try {
@@ -265,11 +261,10 @@
         updatePanel();
     }
 
-    public Collection itemsNotSelectedInAncestors(Layer layer, Feature 
feature, Collection items) {
-        ArrayList itemsNotSelectedInAncestors = new ArrayList(1);
+    public Collection<Geometry> itemsNotSelectedInAncestors(Layer layer, 
Feature feature, Collection<Geometry> items) {
+        ArrayList<Geometry> itemsNotSelectedInAncestors = new ArrayList<>(1);
         if (layer.isSelectable()) {
-            for (Object object : items) {
-                Geometry item = (Geometry) object;
+            for (Geometry item : items) {
                 if (!selectedInAncestors(layer, feature, item)) {
                     itemsNotSelectedInAncestors.add(item);
                 }
@@ -280,7 +275,7 @@
 
     protected abstract boolean selectedInAncestors(Layer layer, Feature 
feature, Geometry item);
 
-    protected abstract void unselectInDescendants(Layer layer, Feature 
feature, Collection items);
+    protected abstract void unselectInDescendants(Layer layer, Feature 
feature, Collection<Geometry> items);
 
     public void selectItems(Layer layer, Feature feature) {
         selectItems(layer, feature, items(feature.getGeometry()));
@@ -302,13 +297,12 @@
 
     public void unselectFromFeaturesWithModifiedItemCounts(
         Layer layer,
-        Collection features,
-        Collection oldFeatureClones) {
-        List featuresToUnselect = new ArrayList(1);
+        Collection<Feature> features,
+        Collection<Feature> oldFeatureClones) {
+        List<Feature> featuresToUnselect = new ArrayList<>(1);
         Iterator j = oldFeatureClones.iterator();
         j.hasNext();
-        for (Object object : features) {
-            Feature feature = (Feature) object;
+        for (Feature feature : features) {
             Feature oldFeatureClone = (Feature) j.next();
             if (items(feature.getGeometry()).size()
                 != items(oldFeatureClone.getGeometry()).size()) {
@@ -350,7 +344,7 @@
     public void unselectItem(Layer layer, Feature feature, int 
selectedItemIndex) {
         Set<Integer> indices = 
getFeatureToSelectedItemIndexCollectionMap(layer).get(feature);
         if (indices != null) {
-            indices.remove(new Integer(selectedItemIndex));
+            indices.remove(selectedItemIndex);
             if (indices.isEmpty()) {
                 
getFeatureToSelectedItemIndexCollectionMap(layer).remove(feature);
             }

Modified: 
core/trunk/src/com/vividsolutions/jump/workbench/ui/FeatureSelection.java
===================================================================
--- core/trunk/src/com/vividsolutions/jump/workbench/ui/FeatureSelection.java   
2016-11-06 10:16:42 UTC (rev 5161)
+++ core/trunk/src/com/vividsolutions/jump/workbench/ui/FeatureSelection.java   
2016-11-06 10:55:04 UTC (rev 5162)
@@ -36,6 +36,7 @@
 import com.vividsolutions.jump.feature.Feature;
 import com.vividsolutions.jump.workbench.model.Layer;
 import com.vividsolutions.jump.workbench.ui.renderer.FeatureSelectionRenderer;
+
 /**
  * A collection of selected {@link Feature Features}
  */
@@ -45,7 +46,7 @@
      * Returns a list containing the geometry itself.
      */
     public List<Geometry> items(Geometry geometry) {
-        List<Geometry> items = new ArrayList<Geometry>(1);
+        List<Geometry> items = new ArrayList<>(1);
         items.add(geometry);
         return items;
     }
@@ -63,7 +64,7 @@
         //[michael.mich...@free.fr].        
         //[Jon Aquino 2004-04-27]
         Assert.isTrue(items.size() == 1 || items.isEmpty());
-        return items.isEmpty() ? Collections.EMPTY_SET : 
Collections.singleton(0);
+        return items.isEmpty() ? Collections.<Integer>emptySet() : 
Collections.singleton(0);
     }
     
     public String getRendererContentID() {
@@ -76,7 +77,7 @@
     }
     
     protected void unselectInDescendants(Layer layer, Feature feature,
-            Collection items) {
+            Collection<Geometry> items) {
         Assert.isTrue(getChild() instanceof PartSelection);
         Assert.isTrue(getChild().getChild() instanceof LineStringSelection);
         getChild().unselectItems(layer, feature);

Modified: 
core/trunk/src/com/vividsolutions/jump/workbench/ui/LineStringSelection.java
===================================================================
--- 
core/trunk/src/com/vividsolutions/jump/workbench/ui/LineStringSelection.java    
    2016-11-06 10:16:42 UTC (rev 5161)
+++ 
core/trunk/src/com/vividsolutions/jump/workbench/ui/LineStringSelection.java    
    2016-11-06 10:55:04 UTC (rev 5162)
@@ -34,7 +34,6 @@
 
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Iterator;
 import java.util.List;
 
 import com.vividsolutions.jts.geom.Geometry;
@@ -56,7 +55,7 @@
      * Returns a list of LineString items contained in this geometry.
      */
     public List<Geometry> items(Geometry geometry) {
-        List<Geometry> items = new ArrayList<Geometry>(1);
+        List<Geometry> items = new ArrayList<>(1);
 
         if (geometry instanceof LineString) {
             items.add(geometry);
@@ -92,14 +91,13 @@
         Assert.isTrue(getParent().getParent() instanceof FeatureSelection);
         Assert.isTrue(getParent() instanceof PartSelection);        
         if 
(getParent().getParent().getFeaturesWithSelectedItems().contains(feature)) { 
return true; }
-        for (Iterator i = getParent().getSelectedItems(layer, 
feature).iterator(); i.hasNext(); ) {
-            Geometry selectedPart = (Geometry) i.next();
+        for (Geometry selectedPart : getParent().getSelectedItems(layer, 
feature)) {
             if (items(selectedPart).contains(item)) { return true; }
         }
         return false;
     }
 
-    protected void unselectInDescendants(Layer layer, Feature feature, 
Collection items) {
+    protected void unselectInDescendants(Layer layer, Feature feature, 
Collection<Geometry> items) {
         Assert.isTrue(getChild() == null);        
     }
 

Modified: core/trunk/src/com/vividsolutions/jump/workbench/ui/PartSelection.java
===================================================================
--- core/trunk/src/com/vividsolutions/jump/workbench/ui/PartSelection.java      
2016-11-06 10:16:42 UTC (rev 5161)
+++ core/trunk/src/com/vividsolutions/jump/workbench/ui/PartSelection.java      
2016-11-06 10:55:04 UTC (rev 5162)
@@ -34,11 +34,9 @@
 
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Iterator;
 import java.util.List;
 
 import com.vividsolutions.jts.geom.Geometry;
-import com.vividsolutions.jts.geom.GeometryCollection;
 import com.vividsolutions.jts.geom.LineString;
 import com.vividsolutions.jts.util.Assert;
 import com.vividsolutions.jump.feature.Feature;
@@ -57,7 +55,7 @@
      */
     public List<Geometry> items(Geometry geometry) {
         int partNumber = geometry.getNumGeometries();
-        List<Geometry> items = new ArrayList<Geometry>(partNumber);
+        List<Geometry> items = new ArrayList<>(partNumber);
         if (partNumber > 1) {
             for (int i = 0; i < partNumber; i++) {
                 items.addAll(items(geometry.getGeometryN(i)));
@@ -83,15 +81,12 @@
         return getParent().getFeaturesWithSelectedItems().contains(feature);
     }
 
-    protected void unselectInDescendants(Layer layer, Feature feature, 
Collection items) {
+    protected void unselectInDescendants(Layer layer, Feature feature, 
Collection<Geometry> items) {
         Assert.isTrue(getChild() instanceof LineStringSelection);
-        for (Iterator i = items.iterator(); i.hasNext();) {
-            Geometry part = (Geometry) i.next();
+        for (Geometry part : items) {
             List partLineStrings = getChild().items(part);
-            for (Iterator j = getChild().getSelectedItems(layer, 
feature).iterator();
-                j.hasNext();
-                ) {
-                LineString selectedLineString = (LineString) j.next();
+            for (Geometry selectedItem : getChild().getSelectedItems(layer, 
feature)) {
+                LineString selectedLineString = (LineString) selectedItem;
                 if (partLineStrings.contains(selectedLineString)) {
                     getChild().unselectItem(
                         layer,

Modified: 
core/trunk/src/com/vividsolutions/jump/workbench/ui/SelectionManager.java
===================================================================
--- core/trunk/src/com/vividsolutions/jump/workbench/ui/SelectionManager.java   
2016-11-06 10:16:42 UTC (rev 5161)
+++ core/trunk/src/com/vividsolutions/jump/workbench/ui/SelectionManager.java   
2016-11-06 10:55:04 UTC (rev 5162)
@@ -50,7 +50,6 @@
 import java.util.Collection;
 import java.util.Collections;
 import java.util.HashSet;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
 
@@ -85,22 +84,20 @@
      * A feature may get split into two or more -- for example, if two
      * linestrings of a feature are selected. 
      */
-    public Collection createFeaturesFromSelectedItems() {
-        List newFeatures = new ArrayList();
+    public Collection<Feature> createFeaturesFromSelectedItems() {
+        List<Feature> newFeatures = new ArrayList<>();
         for (Layer layer : getLayersWithSelectedItems()) {
             newFeatures.addAll(createFeaturesFromSelectedItems(layer));
         }
         return newFeatures;
     }
 
-    public Collection createFeaturesFromSelectedItems(Layer layer) {
-        ArrayList newFeatures = new ArrayList();
-        for (Iterator i = getFeaturesWithSelectedItems(layer).iterator(); 
i.hasNext();) {
-            Feature feature = (Feature) i.next();
-            for (Iterator j = getSelectedItems(layer, feature).iterator(); 
j.hasNext();) {
-                Geometry item = (Geometry) j.next();
+    public Collection<Feature> createFeaturesFromSelectedItems(Layer layer) {
+        ArrayList<Feature> newFeatures = new ArrayList<>();
+        for (Feature feature : getFeaturesWithSelectedItems(layer)) {
+            for (Geometry item : getSelectedItems(layer, feature)) {
                 // Geometry is changed just after, no need to clone it
-                Feature newFeature = (Feature) feature.clone(false);
+                Feature newFeature = feature.clone(false);
                 newFeature.setGeometry(item);
                 newFeatures.add(newFeature);
             }
@@ -123,8 +120,7 @@
         lineStringSelection.setParent(partSelection);
         lineStringSelection.setChild(null);
         selections = Collections.unmodifiableList(Arrays.asList(
-            new AbstractSelection[] {featureSelection, partSelection, 
lineStringSelection}
-        ));
+                featureSelection, partSelection,lineStringSelection));
         addLayerListenerTo(layerManagerProxy.getLayerManager());
     }
 
@@ -202,8 +198,8 @@
      * of a Geometry (an element of a GeometryCollection or a ring of a 
Polygon).
      * @return a collection of Geometries
      */
-    public Collection getSelectedItems() {
-        ArrayList selectedItems = new ArrayList();
+    public Collection<Geometry> getSelectedItems() {
+        ArrayList<Geometry> selectedItems = new ArrayList<>();
         for (AbstractSelection selection : selections) {
             selectedItems.addAll(selection.getSelectedItems());
         }
@@ -214,16 +210,16 @@
        return selectedItems;
     }
 
-    public Collection getSelectedItems(Layer layer) {
-        List selectedItems = new ArrayList();
+    public Collection<Geometry> getSelectedItems(Layer layer) {
+        List<Geometry> selectedItems = new ArrayList<>();
         for (AbstractSelection selection : selections) {
             selectedItems.addAll(selection.getSelectedItems(layer));
         }
         return selectedItems;
     }
 
-    public Collection getSelectedItems(Layer layer, Feature feature) {
-        List selectedItems = new ArrayList();
+    public Collection<Geometry> getSelectedItems(Layer layer, Feature feature) 
{
+        List<Geometry> selectedItems = new ArrayList<>();
         for (AbstractSelection selection : selections) {
             selectedItems.addAll(selection.getSelectedItems(layer, feature));
         }
@@ -235,8 +231,8 @@
      * similar enough Geometry from which Geometries can be retrieved using
      * the selection indices
      */
-    public Collection getSelectedItems(Layer layer, Feature feature, Geometry 
geometry) {
-        ArrayList selectedItems = new ArrayList();
+    public Collection<Geometry> getSelectedItems(Layer layer, Feature feature, 
Geometry geometry) {
+        ArrayList<Geometry> selectedItems = new ArrayList<>();
         for (AbstractSelection selection : selections) {
             selectedItems.addAll(selection.getSelectedItems(layer, feature, 
geometry));
         }
@@ -244,7 +240,7 @@
     }
 
     public Collection<Layer> getLayersWithSelectedItems() {
-        Set<Layer> layersWithSelectedItems = new HashSet<Layer>();
+        Set<Layer> layersWithSelectedItems = new HashSet<>();
         for (AbstractSelection selection : selections) {
             
layersWithSelectedItems.addAll(selection.getLayersWithSelectedItems());
         }
@@ -309,8 +305,8 @@
 
     public void unselectFromFeaturesWithModifiedItemCounts(
         Layer layer,
-        Collection features,
-        Collection oldFeatureClones) {
+        Collection<Feature> features,
+        Collection<Feature> oldFeatureClones) {
         boolean originalPanelUpdatesEnabled = arePanelUpdatesEnabled();
         setPanelUpdatesEnabled(false);
         try {


------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to