You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2016/08/20 19:15:10 UTC
[1/3] jena git commit: Add Trie operations .clear() and .isEmpty().
Repository: jena
Updated Branches:
refs/heads/master 9f2ecb5a9 -> 1ed9e6743
Add Trie operations .clear() and .isEmpty().
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/906f0ddb
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/906f0ddb
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/906f0ddb
Branch: refs/heads/master
Commit: 906f0ddbd6fe087798382bfcbcdaeee047667367
Parents: 9f2ecb5
Author: Andy Seaborne <an...@apache.org>
Authored: Sat Aug 20 20:04:41 2016 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Sat Aug 20 20:14:55 2016 +0100
----------------------------------------------------------------------
.../main/java/org/apache/jena/atlas/lib/Trie.java | 15 +++++++++++++++
.../java/org/apache/jena/atlas/lib/TestTrie.java | 16 ++++++++++++++++
2 files changed, 31 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/906f0ddb/jena-base/src/main/java/org/apache/jena/atlas/lib/Trie.java
----------------------------------------------------------------------
diff --git a/jena-base/src/main/java/org/apache/jena/atlas/lib/Trie.java b/jena-base/src/main/java/org/apache/jena/atlas/lib/Trie.java
index 0d823bc..82764ac 100644
--- a/jena-base/src/main/java/org/apache/jena/atlas/lib/Trie.java
+++ b/jena-base/src/main/java/org/apache/jena/atlas/lib/Trie.java
@@ -117,6 +117,21 @@ public final class Trie<T> {
n.setValue(null);
}
}
+
+ /**
+ * Clear the Trie completely.
+ */
+ public void clear() {
+ root = new TrieNode<>(null);
+ }
+
+ /**
+ * Clear the Trie completely.
+ */
+ public boolean isEmpty() {
+ return ! root.hasValue() ;
+ }
+
/**
* Gets whether a key exists in the trie and has a non-null value mapped to
http://git-wip-us.apache.org/repos/asf/jena/blob/906f0ddb/jena-base/src/test/java/org/apache/jena/atlas/lib/TestTrie.java
----------------------------------------------------------------------
diff --git a/jena-base/src/test/java/org/apache/jena/atlas/lib/TestTrie.java b/jena-base/src/test/java/org/apache/jena/atlas/lib/TestTrie.java
index 1cb9e2e..a099fa2 100644
--- a/jena-base/src/test/java/org/apache/jena/atlas/lib/TestTrie.java
+++ b/jena-base/src/test/java/org/apache/jena/atlas/lib/TestTrie.java
@@ -214,6 +214,22 @@ public class TestTrie {
Assert.assertFalse(trie.contains(""));
}
+ @Test
+ public void trie_clear_01() {
+ Trie<Integer> trie = new Trie<>();
+ trie.clear() ;
+ Assert.assertTrue(trie.isEmpty()) ;
+ }
+
+ @Test
+ public void trie_clear_02() {
+ Trie<Integer> trie = new Trie<>();
+ trie.add("", 123);
+ trie.clear() ;
+ Assert.assertFalse(trie.contains(""));
+ Assert.assertTrue(trie.isEmpty()) ;
+ }
+
/**
* Test prefix search
*/
[2/3] jena git commit: Put synchronized on the common "remove"
implementation.
Posted by an...@apache.org.
Put synchronized on the common "remove" implementation.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/21192d9c
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/21192d9c
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/21192d9c
Branch: refs/heads/master
Commit: 21192d9c0c220b498d546f1addf5c68cfc55ad6b
Parents: 906f0dd
Author: Andy Seaborne <an...@apache.org>
Authored: Sat Aug 20 20:07:15 2016 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Sat Aug 20 20:15:04 2016 +0100
----------------------------------------------------------------------
.../main/java/org/apache/jena/tdb/store/DatasetPrefixesTDB.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/21192d9c/jena-tdb/src/main/java/org/apache/jena/tdb/store/DatasetPrefixesTDB.java
----------------------------------------------------------------------
diff --git a/jena-tdb/src/main/java/org/apache/jena/tdb/store/DatasetPrefixesTDB.java b/jena-tdb/src/main/java/org/apache/jena/tdb/store/DatasetPrefixesTDB.java
index e916d19..0e17208 100644
--- a/jena-tdb/src/main/java/org/apache/jena/tdb/store/DatasetPrefixesTDB.java
+++ b/jena-tdb/src/main/java/org/apache/jena/tdb/store/DatasetPrefixesTDB.java
@@ -140,7 +140,7 @@ public class DatasetPrefixesTDB implements DatasetPrefixStorage
}
@Override
- public synchronized void removeFromPrefixMap(String graphName, String prefix) {
+ public void removeFromPrefixMap(String graphName, String prefix) {
Node g = NodeFactory.createURI(graphName) ;
Node p = NodeFactory.createLiteral(prefix) ;
removeAll(g, p, null) ;
@@ -153,7 +153,7 @@ public class DatasetPrefixesTDB implements DatasetPrefixStorage
}
/** Remove by pattern */
- private void removeAll(Node g, Node p, Node uri) {
+ private synchronized void removeAll(Node g, Node p, Node uri) {
Iterator<Tuple<Node>> iter = nodeTupleTable.find(g, p, uri) ;
List<Tuple<Node>> list = Iter.toList(iter) ; // Materialize.
Iter.close(iter) ;
[3/3] jena git commit: Add PrefixMap.clear() and its implementations.
Posted by an...@apache.org.
Add PrefixMap.clear() and its implementations.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/1ed9e674
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/1ed9e674
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/1ed9e674
Branch: refs/heads/master
Commit: 1ed9e67431dbe941c2aa05fcda6e792d0b17eb17
Parents: 21192d9
Author: Andy Seaborne <an...@apache.org>
Authored: Sat Aug 20 20:07:56 2016 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Sat Aug 20 20:15:04 2016 +0100
----------------------------------------------------------------------
.../riot/system/FastAbbreviatingPrefixMap.java | 7 +++
.../org/apache/jena/riot/system/PrefixMap.java | 5 ++
.../jena/riot/system/PrefixMapExtended.java | 7 +++
.../apache/jena/riot/system/PrefixMapNull.java | 61 ++++++++------------
.../apache/jena/riot/system/PrefixMapStd.java | 5 ++
.../jena/riot/system/PrefixMapWrapper.java | 4 ++
6 files changed, 52 insertions(+), 37 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/1ed9e674/jena-arq/src/main/java/org/apache/jena/riot/system/FastAbbreviatingPrefixMap.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/riot/system/FastAbbreviatingPrefixMap.java b/jena-arq/src/main/java/org/apache/jena/riot/system/FastAbbreviatingPrefixMap.java
index b21f234..a7fdef8 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/system/FastAbbreviatingPrefixMap.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/system/FastAbbreviatingPrefixMap.java
@@ -119,6 +119,13 @@ public class FastAbbreviatingPrefixMap extends PrefixMapBase {
}
@Override
+ public void clear() {
+ prefixes.clear();
+ // prefixesView
+ abbrevs.clear() ;
+ }
+
+ @Override
public boolean contains(String prefix) {
prefix = canonicalPrefix(prefix);
return this.prefixes.containsKey(prefix);
http://git-wip-us.apache.org/repos/asf/jena/blob/1ed9e674/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 af6cc5d..1b9e98b 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
@@ -123,6 +123,11 @@ public interface PrefixMap {
public abstract void delete(String prefix);
/**
+ * Clear all prefixes.
+ */
+ public abstract void clear();
+
+ /**
* Gets whether the map contains a given prefix
*
* @param prefix
http://git-wip-us.apache.org/repos/asf/jena/blob/1ed9e674/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapExtended.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapExtended.java b/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapExtended.java
index 7b0beec..50e06f7 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapExtended.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapExtended.java
@@ -70,6 +70,13 @@ public class PrefixMapExtended extends PrefixMapBase {
}
@Override
+ public void clear() {
+ local.clear();
+// if (!parent.isEmpty() )
+// Log.warn(this, "clear() : Parent not empty") ;
+ }
+
+ @Override
public String expand(String prefix, String localName) {
prefix = canonicalPrefix(prefix);
String x = local.expand(prefix, localName);
http://git-wip-us.apache.org/repos/asf/jena/blob/1ed9e674/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 38ea332..30338ab 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
@@ -16,7 +16,7 @@
* limitations under the License.
*/
-package org.apache.jena.riot.system;
+package org.apache.jena.riot.system ;
import java.util.Collections ;
import java.util.Map ;
@@ -26,106 +26,93 @@ import org.apache.jena.iri.IRI ;
import org.apache.jena.shared.PrefixMapping ;
/** Always empty prefix map */
-public class PrefixMapNull implements PrefixMap
-{
+public class PrefixMapNull implements PrefixMap {
public static PrefixMap empty = new PrefixMapNull() ;
- private PrefixMapNull()
- {}
+ private PrefixMapNull() {}
@Override
- public Map<String, IRI> getMapping()
- {
+ public Map<String, IRI> getMapping() {
return Collections.emptyMap() ;
}
@Override
- public Map<String, IRI> getMappingCopy()
- {
+ public Map<String, IRI> getMappingCopy() {
return Collections.emptyMap() ;
}
@Override
- public Map<String, String> getMappingCopyStr()
- {
+ public Map<String, String> getMappingCopyStr() {
return Collections.emptyMap() ;
}
@Override
- public void add(String prefix, String iriString)
- {
+ public void add(String prefix, String iriString) {
throw new UnsupportedOperationException("Unmodifiable PrefixMap") ;
}
@Override
- public void add(String prefix, IRI iri)
- {
+ public void add(String prefix, IRI iri) {
throw new UnsupportedOperationException("Unmodifiable PrefixMap") ;
}
@Override
- public void putAll(PrefixMap pmap)
- {
+ public void putAll(PrefixMap pmap) {
throw new UnsupportedOperationException("Unmodifiable PrefixMap") ;
}
@Override
- public void putAll(PrefixMapping pmap)
- {
+ public void putAll(PrefixMapping pmap) {
throw new UnsupportedOperationException("Unmodifiable PrefixMap") ;
}
@Override
- public void putAll(Map<String, String> mapping)
- {
+ public void putAll(Map<String, String> mapping) {
throw new UnsupportedOperationException("Unmodifiable PrefixMap") ;
}
@Override
- public void delete(String prefix)
- {
+ public void delete(String prefix) {
throw new UnsupportedOperationException("Unmodifiable PrefixMap") ;
}
@Override
- public boolean contains(String prefix)
- {
+ public void clear() {
+ throw new UnsupportedOperationException("Unmodifiable PrefixMap") ;
+ }
+
+ @Override
+ public boolean contains(String prefix) {
return false ;
}
@Override
- public String abbreviate(String uriStr)
- {
+ public String abbreviate(String uriStr) {
return null ;
}
@Override
- public Pair<String, String> abbrev(String uriStr)
- {
+ public Pair<String, String> abbrev(String uriStr) {
return null ;
}
@Override
- public String expand(String prefixedName)
- {
+ public String expand(String prefixedName) {
return null ;
}
@Override
- public String expand(String prefix, String localName)
- {
+ public String expand(String prefix, String localName) {
return null ;
}
@Override
- public boolean isEmpty()
- {
+ public boolean isEmpty() {
return true ;
}
@Override
- public int size()
- {
+ public int size() {
return 0 ;
}
}
http://git-wip-us.apache.org/repos/asf/jena/blob/1ed9e674/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapStd.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapStd.java b/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapStd.java
index a0e9652..865b590 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapStd.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/system/PrefixMapStd.java
@@ -85,6 +85,11 @@ public class PrefixMapStd extends PrefixMapBase {
}
@Override
+ public void clear() {
+ prefixes.clear() ;
+ }
+
+ @Override
public boolean contains(String prefix) {
prefix = canonicalPrefix(prefix);
return prefixes.containsKey(prefix);
http://git-wip-us.apache.org/repos/asf/jena/blob/1ed9e674/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 8c959fb..d087b47 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
@@ -67,6 +67,10 @@ public class PrefixMapWrapper implements PrefixMap
{ other.delete(prefix) ; }
@Override
+ public void clear()
+ { other.clear(); }
+
+ @Override
public boolean contains(String prefix)
{ return other.contains(prefix) ; }