public Object exec(List names) throws TemplateModelException {
if (names == null || names.isEmpty()) {
return this;
}
AncestorSequence result = new AncestorSequence(env);
for (int i=0; i< size(); i++) {
TemplateNodeModel tnm = (TemplateNodeModel) get(i);
String nodeName = tnm.getNodeName();
String nsURI = tnm.getNodeNamespace();
if (nsURI == null) {
if (names.contains(nodeName)) {
result.add(tnm);
}
} else {
for (int j = 0; j< names.size(); j++) {
if (StringUtil.matchesName((String) names.get(j), nodeName, nsURI, env)) {
result.add(tnm);
break;
}
}
}
}
return result;
}
|