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 2019/04/03 19:58:22 UTC
[jena] branch master updated: JENA-1699: Clear deleted prefix from
the abbreviation map
This is an automated email from the ASF dual-hosted git repository.
andy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jena.git
The following commit(s) were added to refs/heads/master by this push:
new 36d05a3 JENA-1699: Clear deleted prefix from the abbreviation map
new ec802b2 Merge pull request #551 from afs/prefixmap-delete
36d05a3 is described below
commit 36d05a3f1c57e0f7b9d961fa0554fc693530ee4f
Author: Andy Seaborne <an...@apache.org>
AuthorDate: Wed Apr 3 09:34:24 2019 +0100
JENA-1699: Clear deleted prefix from the abbreviation map
---
.../src/main/java/org/apache/jena/riot/system/PrefixMap.java | 3 +--
.../src/main/java/org/apache/jena/riot/system/PrefixMapStd.java | 2 ++
.../java/org/apache/jena/riot/system/AbstractTestPrefixMap.java | 9 +++++++++
3 files changed, 12 insertions(+), 2 deletions(-)
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 1fd73bb..bccaa92 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
@@ -30,7 +30,7 @@ import org.apache.jena.shared.PrefixMapping ;
* functionality.
* <p>
* The contract also does not require an implementation to do any validation
- * unlike the Jena Core {@link PrefixMapping} which require validation of
+ * unlike the Jena Core {@link PrefixMapping} which requires validation of
* prefixes.
* </p>
* <h3>Implementations</h3>
@@ -43,7 +43,6 @@ import org.apache.jena.shared.PrefixMapping ;
* implementation. See the javadoc for those classes for more explanation
* of their differences.
* </p>
- *
*/
public interface PrefixMap {
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 20f239f..07480c8 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
@@ -81,6 +81,8 @@ public class PrefixMapStd extends PrefixMapBase {
public void delete(String prefix) {
prefix = canonicalPrefix(prefix);
prefixes.remove(prefix);
+ // Remove from the abbreviation map.
+ uriToPrefix.values().remove(prefix);
}
@Override
diff --git a/jena-arq/src/test/java/org/apache/jena/riot/system/AbstractTestPrefixMap.java b/jena-arq/src/test/java/org/apache/jena/riot/system/AbstractTestPrefixMap.java
index 4967e54..78b319b 100644
--- a/jena-arq/src/test/java/org/apache/jena/riot/system/AbstractTestPrefixMap.java
+++ b/jena-arq/src/test/java/org/apache/jena/riot/system/AbstractTestPrefixMap.java
@@ -292,6 +292,15 @@ public abstract class AbstractTestPrefixMap extends BaseTest {
pmTest("http://example/a", "q1:");
}
+ @Test
+ public void prefixMap_abbrev_20() {
+ PrefixMap pmap = PrefixMapFactory.create();
+ pmap.add("ex", "http://example/");
+ pmap.delete("ex");
+ String x = pmap.abbreviate("http://example/s");
+ assertNull(x);
+ }
+
public void pmTest(String iriStr, String... expected) {
PrefixMap pm = create();
String x = pm.abbreviate(iriStr);