package com.idega.util.xml;
import java.util.HashMap;
import java.util.Map;
import javax.xml.namespace.QName;
import javax.xml.xpath.XPathVariableResolver;
/**
* @author <a href="mailto:civilis@idega.com">Vytautas Čivilis</a>
* @version $Revision: 1.1 $
*
* Last modified: $Date: 2007/10/30 21:55:22 $ by $Author: civilis $
*/
public final class XPathVariableResolverImpl implements XPathVariableResolver {
public XPathVariableResolverImpl() { }
public Object resolveVariable(QName variable) {
if(variable == null)
throw new NullPointerException("Variable parameter not provided");
return getVariables().get(variable);
}
private Map<QName, Object> variables;
public Map<QName, Object> getVariables() {
if(variables == null)
variables = new HashMap<QName, Object>();
return variables;
}
public void setVariables(Map<QName, Object> variables) {
this.variables = variables;
}
public void addVariable(QName variable, Object value) {
getVariables().put(variable, value);
}
public void clearVariables() {
if(variables != null)
variables.clear();
}
}