Repository: jena
Updated Branches:
  refs/heads/master 59e5e06c8 -> a1c0532c8


Add PrefixMap.forEach

Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/7e40c514
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/7e40c514
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/7e40c514

Branch: refs/heads/master
Commit: 7e40c5140ba491ef3f9ff51ede5da5a08ef9301f
Parents: 59e5e06
Author: Andy Seaborne <a...@apache.org>
Authored: Tue Sep 13 14:42:07 2016 +0100
Committer: Andy Seaborne <a...@apache.org>
Committed: Tue Sep 13 14:42:07 2016 +0100

----------------------------------------------------------------------
 .../org/apache/jena/riot/system/PrefixMap.java  |  6 +++
 .../apache/jena/riot/system/PrefixMapBase.java  |  7 ++++
 .../apache/jena/riot/system/PrefixMapNull.java  |  4 ++
 .../jena/riot/system/PrefixMapUnmodifiable.java |  2 +-
 .../jena/riot/system/PrefixMapWrapper.java      | 43 ++++++++++++--------
 5 files changed, 43 insertions(+), 19 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jena/blob/7e40c514/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMap.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMap.java 
b/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMap.java
index 1b9e98b..a365dd1 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMap.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMap.java
@@ -18,6 +18,7 @@
 package org.apache.jena.riot.system;
 
 import java.util.Map;
+import java.util.function.BiConsumer ;
 
 import org.apache.jena.atlas.lib.Pair;
 import org.apache.jena.iri.IRI;
@@ -72,6 +73,11 @@ public interface PrefixMap {
     public abstract Map<String, String> getMappingCopyStr();
 
     /**
+     * Apply a {@link BiConsumer}{@code<String, IRI>} to each entry in the 
Prefixmap.
+     */
+    public abstract void forEach(BiConsumer<String, IRI> action) ;
+
+    /**
      * Add a prefix, overwrites any existing association
      * 
      * @param prefix

http://git-wip-us.apache.org/repos/asf/jena/blob/7e40c514/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapBase.java
----------------------------------------------------------------------
diff --git 
a/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapBase.java 
b/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapBase.java
index 10dc6de..3447af3 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapBase.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapBase.java
@@ -23,6 +23,8 @@ import static java.util.stream.Collectors.toMap;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Map.Entry;
+import java.util.function.BiConsumer ;
+
 import org.apache.jena.atlas.lib.Pair;
 import org.apache.jena.iri.IRI;
 import org.apache.jena.iri.IRIFactory;
@@ -57,6 +59,11 @@ public abstract class PrefixMapBase implements PrefixMap {
     }
     
     @Override
+    public void forEach(BiConsumer<String, IRI> action) {
+        getMapping().forEach(action);
+    }
+    
+    @Override
     public void add(String prefix, String iriString) {
         this.add(prefix, IRIFactory.iriImplementation().create(iriString));
     }

http://git-wip-us.apache.org/repos/asf/jena/blob/7e40c514/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapNull.java
----------------------------------------------------------------------
diff --git 
a/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapNull.java 
b/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapNull.java
index 30338ab..c403ccc 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapNull.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapNull.java
@@ -20,6 +20,7 @@ package org.apache.jena.riot.system ;
 
 import java.util.Collections ;
 import java.util.Map ;
+import java.util.function.BiConsumer ;
 
 import org.apache.jena.atlas.lib.Pair ;
 import org.apache.jena.iri.IRI ;
@@ -47,6 +48,9 @@ public class PrefixMapNull implements PrefixMap {
     }
 
     @Override
+    public void forEach(BiConsumer<String, IRI> action) {}
+
+    @Override
     public void add(String prefix, String iriString) {
         throw new UnsupportedOperationException("Unmodifiable PrefixMap") ;
     }

http://git-wip-us.apache.org/repos/asf/jena/blob/7e40c514/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapUnmodifiable.java
----------------------------------------------------------------------
diff --git 
a/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapUnmodifiable.java 
b/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapUnmodifiable.java
index 5cecb9a..836a855 100644
--- 
a/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapUnmodifiable.java
+++ 
b/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapUnmodifiable.java
@@ -31,7 +31,7 @@ public class PrefixMapUnmodifiable extends PrefixMapWrapper
 
     @Override
     public Map<String, IRI> getMapping()
-    { return Collections.unmodifiableMap(other.getMapping()) ; }
+    { return Collections.unmodifiableMap(get().getMapping()) ; }
 
     @Override
     public void add(String prefix, String iriString)

http://git-wip-us.apache.org/repos/asf/jena/blob/7e40c514/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapWrapper.java
----------------------------------------------------------------------
diff --git 
a/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapWrapper.java 
b/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapWrapper.java
index d087b47..856be69 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapWrapper.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapWrapper.java
@@ -19,6 +19,7 @@
 package org.apache.jena.riot.system;
 
 import java.util.Map ;
+import java.util.function.BiConsumer ;
 
 import org.apache.jena.atlas.lib.Pair ;
 import org.apache.jena.iri.IRI ;
@@ -26,75 +27,81 @@ import org.apache.jena.shared.PrefixMapping ;
 
 public class PrefixMapWrapper implements PrefixMap
 {
-    protected final PrefixMap other ;
+    private final PrefixMap other ;
+    protected PrefixMap get() { return other; }
 
     public PrefixMapWrapper(PrefixMap other) { this.other = other ; }
 
     @Override
     public Map<String, IRI> getMapping()
-    { return other.getMapping() ; }
+    { return get().getMapping() ; }
 
     @Override
     public Map<String, IRI> getMappingCopy()
-    { return other.getMappingCopy() ; }
+    { return get().getMappingCopy() ; }
 
     @Override
     public Map<String, String> getMappingCopyStr()
-    { return other.getMappingCopyStr() ; } 
+    { return get().getMappingCopyStr() ; } 
+
+    @Override
+    public void forEach(BiConsumer<String, IRI> action) {
+        get().forEach(action);
+    }
 
     @Override
     public void add(String prefix, String iriString)
-    { other.add(prefix, iriString) ; }
+    { get().add(prefix, iriString) ; }
 
     @Override
     public void add(String prefix, IRI iri)
-    { other.add(prefix, iri) ; }
+    { get().add(prefix, iri) ; }
 
     @Override
     public void putAll(PrefixMap pmap)
-    { other.putAll(pmap) ; }
+    { get().putAll(pmap) ; }
 
     @Override
     public void putAll(PrefixMapping pmap)
-    { other.putAll(pmap) ; }
+    { get().putAll(pmap) ; }
 
     @Override
     public void putAll(Map<String, String> mapping)
-    { other.putAll(mapping) ; }
+    { get().putAll(mapping) ; }
 
     @Override
     public void delete(String prefix)
-    { other.delete(prefix) ; }
+    { get().delete(prefix) ; }
 
     @Override
     public void clear()
-    { other.clear(); }
+    { get().clear(); }
 
     @Override
     public boolean contains(String prefix)
-    { return other.contains(prefix) ; }
+    { return get().contains(prefix) ; }
 
     @Override
     public String abbreviate(String uriStr)
-    { return other.abbreviate(uriStr) ; }
+    { return get().abbreviate(uriStr) ; }
 
     @Override
     public Pair<String, String> abbrev(String uriStr)
-    { return other.abbrev(uriStr) ; }
+    { return get().abbrev(uriStr) ; }
 
     @Override
     public String expand(String prefixedName)
-    { return other.expand(prefixedName) ; }
+    { return get().expand(prefixedName) ; }
 
     @Override
     public String expand(String prefix, String localName)
-    { return other.expand(prefix, localName) ; }
+    { return get().expand(prefix, localName) ; }
 
     @Override
     public boolean isEmpty()
-    { return other.isEmpty() ; }
+    { return get().isEmpty() ; }
 
     @Override
     public int size()
-    { return other.size() ; }
+    { return get().size() ; }
 }

Reply via email to