# This patch file was generated by NetBeans IDE
# Following Index: paths are relative to: C:\Users\alexandre.nouvel\Documents\NetBeansProjects\trunk\src
# This patch can be applied using context Tools: Patch action on respective folder.
# It uses platform neutral UTF-8 encoding and \n newlines.
# Above lines and this line are ignored by the patching process.
Index: org/openstreetmap/josm/data/osm/Changeset.java
--- org/openstreetmap/josm/data/osm/Changeset.java Base (BASE)
+++ org/openstreetmap/josm/data/osm/Changeset.java Locally Modified (Based On LOCAL)
@@ -207,11 +207,12 @@
     @Override
     public void setKeys(Map<String, String> keys) {
         CheckParameterUtil.ensureParameterNotNull(keys, "keys");
-        for (String value : keys.values()) {
-            if (value != null && value.length() > MAX_CHANGESET_TAG_LENGTH) {
+        keys.values().stream()
+                .filter(value -> (value != null && value.length() > MAX_CHANGESET_TAG_LENGTH))
+                .findFirst()
+                .ifPresent(value -> {
                 throw new IllegalArgumentException("Changeset tag value is too long: "+value);
-            }
-        }
+        });
         this.tags = keys;
     }
 
Index: org/openstreetmap/josm/data/osm/ChangesetCache.java
--- org/openstreetmap/josm/data/osm/ChangesetCache.java Base (BASE)
+++ org/openstreetmap/josm/data/osm/ChangesetCache.java Locally Modified (Based On LOCAL)
@@ -9,6 +9,7 @@
 import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.CopyOnWriteArrayList;
+import java.util.stream.Collectors;
 
 import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.data.Preferences.PreferenceChangeEvent;
@@ -182,12 +183,9 @@
      * @return The list of open changesets
      */
     public List<Changeset> getOpenChangesets() {
-        List<Changeset> ret = new ArrayList<>();
-        for (Changeset cs: cache.values()) {
-            if (cs.isOpen()) {
-                ret.add(cs);
-            }
-        }
+        List<Changeset> ret = cache.values().stream()
+                .filter(cs -> cs.isOpen())
+                .collect(Collectors.toList());
         return ret;
     }
 
Index: org/openstreetmap/josm/data/osm/ChangesetDataSet.java
--- org/openstreetmap/josm/data/osm/ChangesetDataSet.java Base (BASE)
+++ org/openstreetmap/josm/data/osm/ChangesetDataSet.java Locally Modified (Based On LOCAL)
@@ -7,6 +7,7 @@
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Set;
+import java.util.stream.Collectors;
 
 import org.openstreetmap.josm.data.osm.history.HistoryOsmPrimitive;
 import org.openstreetmap.josm.tools.CheckParameterUtil;
@@ -116,12 +117,10 @@
      */
     public Set<HistoryOsmPrimitive> getPrimitivesByModificationType(ChangesetModificationType cmt) {
         CheckParameterUtil.ensureParameterNotNull(cmt, "cmt");
-        Set<HistoryOsmPrimitive> ret = new HashSet<>();
-        for (Entry<PrimitiveId, ChangesetModificationType> entry: modificationTypes.entrySet()) {
-            if (entry.getValue().equals(cmt)) {
-                ret.add(primitives.get(entry.getKey()));
-            }
-        }
+        Set<HistoryOsmPrimitive> ret = modificationTypes.entrySet().stream()
+                .filter(entry -> entry.getValue().equals(cmt))
+                .map(entry -> primitives.get(entry.getKey()))
+                .collect(Collectors.toSet());
         return ret;
     }
 
Index: org/openstreetmap/josm/data/osm/DataSet.java
--- org/openstreetmap/josm/data/osm/DataSet.java Base (BASE)
+++ org/openstreetmap/josm/data/osm/DataSet.java Locally Modified (Based On LOCAL)
@@ -21,6 +21,7 @@
 import java.util.concurrent.locks.ReadWriteLock;
 import java.util.concurrent.locks.ReentrantReadWriteLock;
 import java.util.function.Predicate;
+import java.util.stream.Collectors;
 
 import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.data.Bounds;
@@ -421,12 +422,9 @@
         lock.readLock().lock();
         try {
             // QuadBuckets might be useful here (don't forget to do reindexing after some of rm is changed)
-            List<Relation> result = new ArrayList<>();
-            for (Relation r: relations) {
-                if (r.getBBox().intersects(bbox)) {
-                    result.add(r);
-                }
-            }
+            List<Relation> result = relations.stream()
+                    .filter(r -> r.getBBox().intersects(bbox))
+                    .collect(Collectors.toList());
             return result;
         } finally {
             lock.readLock().unlock();
Index: org/openstreetmap/josm/gui/conflict/pair/ListMergeModel.java
--- org/openstreetmap/josm/gui/conflict/pair/ListMergeModel.java Base (BASE)
+++ org/openstreetmap/josm/gui/conflict/pair/ListMergeModel.java Locally Modified (Based On LOCAL)
@@ -225,11 +225,11 @@
     protected void fireFrozenChanged(boolean oldValue, boolean newValue) {
         synchronized (listeners) {
             PropertyChangeEvent evt = new PropertyChangeEvent(this, FROZEN_PROP, oldValue, newValue);
-            for (PropertyChangeListener listener: listeners) {
+            listeners.stream().forEach((listener) -> {
                 listener.propertyChange(evt);
+            });
             }
         }
-    }
 
     public final void setFrozen(boolean isFrozen) {
         boolean oldValue = this.isFrozen;
@@ -677,11 +677,8 @@
 
             if (row >= getEntries().size()) return false;
             T e1 = getEntries().get(row);
-            for (T e2: getOppositeEntries()) {
-                if (isEqualEntry(e1, e2)) return true;
+            return (getOppositeEntries().stream().anyMatch((e2) -> (isEqualEntry(e1, e2))));
             }
-            return false;
-        }
 
         protected List<T> getEntries() {
             return entries.get(role);
