aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/mammoth/internal/xml/NamespacePrefixes.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-03-26 17:50:01 +0000
committerMichael Williamson <mike@zwobble.org>2016-03-26 17:55:50 +0000
commit3a83dfa0318e00847c88119a18c1614df790e3fb (patch)
tree1182f01ff99609b10c3a9c017b0f7a456b0abbfb /src/main/java/org/zwobble/mammoth/internal/xml/NamespacePrefixes.java
parent9eb7942ae589c6418d12dbde7c6ae1ffdcf3d1cd (diff)
Remove Guava usage from XML parsing
Diffstat (limited to 'src/main/java/org/zwobble/mammoth/internal/xml/NamespacePrefixes.java')
-rw-r--r--src/main/java/org/zwobble/mammoth/internal/xml/NamespacePrefixes.java36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/xml/NamespacePrefixes.java b/src/main/java/org/zwobble/mammoth/internal/xml/NamespacePrefixes.java
new file mode 100644
index 0000000..82872bd
--- /dev/null
+++ b/src/main/java/org/zwobble/mammoth/internal/xml/NamespacePrefixes.java
@@ -0,0 +1,36 @@
+package org.zwobble.mammoth.internal.xml;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Optional;
+
+import static org.zwobble.mammoth.internal.util.MammothMaps.lookup;
+
+public class NamespacePrefixes {
+ public static Builder builder() {
+ return new Builder();
+ }
+
+ public static class Builder {
+ private final Map<String, String> uriToPrefix = new HashMap<>();
+
+ public Builder put(String prefix, String uri) {
+ uriToPrefix.put(uri, prefix);
+ return this;
+ }
+
+ public NamespacePrefixes build() {
+ return new NamespacePrefixes(uriToPrefix);
+ }
+ }
+
+ private final Map<String, String> uriToPrefix;
+
+ public NamespacePrefixes(Map<String, String> uriToPrefix) {
+ this.uriToPrefix = uriToPrefix;
+ }
+
+ public Optional<String> prefixForUri(String uri) {
+ return lookup(uriToPrefix, uri);
+ }
+}