View Javadoc

1   /**********************************************
2    * Copyright (C) 2010 Lukas Laag
3    * This file is part of lib-gwt-svg.
4    * 
5    * libgwtsvg is free software: you can redistribute it and/or modify
6    * it under the terms of the GNU Lesser General Public License as published by
7    * the Free Software Foundation, either version 3 of the License, or
8    * (at your option) any later version.
9    * 
10   * libgwtsvg is distributed in the hope that it will be useful,
11   * but WITHOUT ANY WARRANTY; without even the implied warranty of
12   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13   * GNU Lesser General Public License for more details.
14   * 
15   * You should have received a copy of the GNU Lesser General Public License
16   * along with libgwtsvg.  If not, see http://www.gnu.org/licenses/
17   **********************************************/
18  package org.vectomatic.dom.svg.utils;
19  
20  import java.util.HashMap;
21  import java.util.Map;
22  
23  /**
24   * Default implementation of the XPathPrefixResolver. It is
25   * capable of solving the commonly used 'svg' and 'xlink' prefixes.
26   * @author laaglu
27   */
28  public class SVGPrefixResolver implements XPathPrefixResolver {
29  	public static final SVGPrefixResolver INSTANCE = new SVGPrefixResolver();
30  	
31  	protected Map<String, String> prefixToUri;
32  	/**
33  	 * Constructor
34  	 */
35  	public SVGPrefixResolver() { 
36  		prefixToUri = new HashMap<String, String>();
37  		prefixToUri.put(SVGConstants.SVG_PREFIX, SVGConstants.SVG_NAMESPACE_URI);
38  		prefixToUri.put(SVGConstants.XLINK_PREFIX, SVGConstants.XLINK_NAMESPACE_URI);
39  	}
40  	@Override
41  	public String resolvePrefix(String prefix) {
42  		return prefixToUri.get(prefix);
43  	}
44  }