/* * This file is part of the URI Template library. * * For licensing information please see the file license.txt included in the release. * A copy of this licence can also be found at * http://www.opensource.org/licenses/artistic-license-2.0.php */ package org.weborganic.furi; import java.util.Hashtable; import java.util.Map; /** * A variable resolver backed by a values mapped to objects. * * @author Christophe Lauret * @version 30 December 2008 */ public class VariableResolverMap<V> implements VariableResolver { /** * The list of values. */ private Map<String, ? extends V> _map; /** * Creates a new variable resolver. */ public VariableResolverMap() { this._map = new Hashtable<String, V>(); } /** * Creates a new variable resolver from the given map. * * @param map Variable values mapped to objects. */ public VariableResolverMap(Map<String, ? extends V> map) { this._map = map; } /** * {@inheritDoc} */ public boolean exists(String value) { if (value == null) { return false; } return this._map.containsKey(value); } /** * {@inheritDoc} */ public V resolve(String value) { return this._map.get(value); } }