1 16 17 18 package org.apache.commons.betwixt.strategy; 19 20 import java.util.HashMap ; 21 22 35 public class NamespacePrefixMapper { 36 37 private int count = 0; 38 private HashMap prefixesByUri = new HashMap (); 39 40 45 public String getPrefix(String namespaceUri) { 46 String prefix = (String ) prefixesByUri.get(namespaceUri); 47 if (prefix == null) { 48 prefix = generatePrefix(namespaceUri); 49 setPrefix(namespaceUri, prefix); 50 } 51 return prefix; 52 } 53 54 61 public void setPrefix(String namespaceUri, String prefix) { 62 prefixesByUri.put(namespaceUri, prefix); 63 } 64 65 73 protected String generatePrefix(String namespaceUri) { 74 String prefix = "bt" + ++count; 75 if (prefixesByUri.values().contains(prefix)) { 76 prefix = generatePrefix(namespaceUri); 77 } 78 return prefix; 79 } 80 81 } | Popular Tags |