package fitnesse.wiki; import java.util.Map; import fitnesse.wikitext.parser.VariableSource; import fitnesse.wikitext.parser.Maybe; public class UrlPathVariableSource implements VariableSource { private final VariableSource systemVariables; private final Map<String,String> urlParams; public UrlPathVariableSource(VariableSource systemVariables, Map<String,String> urlParams) { this.systemVariables = systemVariables; this.urlParams = urlParams; } @Override public Maybe<String> findVariable(String name) { if(urlParams != null && urlParams.containsKey(name)) { return new Maybe<>(urlParams.get(name)); } return systemVariables.findVariable(name); } public Maybe<String> findUrlVariable(String name) { if(urlParams != null && urlParams.containsKey(name)) { return new Maybe<>(urlParams.get(name)); } return Maybe.noString; } }