} else if ("parent".equals(key)) { Node parent = node.getParentNode(); result = (parent == null) ? null : new DOMNodeModel(parent); } else if ("ancestorByName".equals(key)) { result = new AncestorByName(); } else if ("nextSibling".equals(key)) { Node next = node.getNextSibling(); result = (next == null) ? null : new DOMNodeModel(next); } else if ("previousSibling".equals(key)) { Node previous = node.getPreviousSibling(); result = (previous == null) ? null : new DOMNodeModel(previous); } else if ("nextSiblingElement".equals(key)) { Node next = nextSiblingElement(node); result = (next == null) ? null : new DOMNodeModel(next); } else if ("previousSiblingElement".equals(key)) { Node previous = previousSiblingElement(node); result = (previous == null) ? null : new DOMNodeModel(previous); } else if ("nextElement".equals(key)) { Node next = nextElement(node); result = (next == null) ? null : new DOMNodeModel(next); } else if ("previousElement".equals(key)) { Node previous = previousElement(node); result = (previous == null) ? null : new DOMNodeModel(previous); } else if ("text".equals(key)) { result = new SimpleScalar(getText(node));
public Object exec(List arguments) throws TemplateModelException { if (arguments.size() != 1) { throw new TemplateModelException("Expecting exactly one string argument here"); } String nodeName = (String) arguments.get(0); DOMNodeModel ancestor = (DOMNodeModel) DOMNodeModel.this.get("parent"); while (ancestor != null) { if (nodeName.equals(ancestor.getNodeName())) { return ancestor; } ancestor = (DOMNodeModel) ancestor.get("parent"); } return null; } }
public TemplateModel get(int index) { DOMNodeModel result = (DOMNodeModel) nodes[index]; if (result == null) { result = new DOMNodeModel(nodeList.item(index)); nodes[index] = result; result.setParent(DOMNodeModel.this); } return result; }
static private String getText(Node node) { String result = ""; if (node instanceof Text) { result = ((Text) node).getData(); } else if (node instanceof Element) { NodeList children = node.getChildNodes(); for (int i = 0; i < children.getLength(); i++) { result += getText(children.item(i)); } } return result; }
static private Element previousElement(Node node) { Element result = previousSiblingElement(node); if (result != null) { return result; } Node parent = node.getParentNode(); if (parent instanceof Element) { return (Element) parent; } return null; }
static private Element nextElement(Node node) { if (node.hasChildNodes()) { NodeList children = node.getChildNodes(); for (int i = 0; i < children.getLength(); i++) { Node child = children.item(i); if (child instanceof Element) { return (Element) child; } } } Element nextSiblingElement = nextSiblingElement(node); if (nextSiblingElement != null) { return nextSiblingElement; } Node parent = node.getParentNode(); while (parent instanceof Element) { Element next = nextSiblingElement(parent); if (next != null) { return next; } parent = parent.getParentNode(); } return null; }
static private String getText(Node node) { String result = ""; if (node instanceof Text) { result = ((Text) node).getData(); } else if (node instanceof Element) { NodeList children = node.getChildNodes(); for (int i = 0; i < children.getLength(); i++) { result += getText(children.item(i)); } } return result; }
static private Element previousElement(Node node) { Element result = previousSiblingElement(node); if (result != null) { return result; } Node parent = node.getParentNode(); if (parent instanceof Element) { return (Element) parent; } return null; }
static private Element nextElement(Node node) { if (node.hasChildNodes()) { NodeList children = node.getChildNodes(); for (int i=0; i<children.getLength();i++) { Node child = children.item(i); if (child instanceof Element) { return (Element) child; } } } Element nextSiblingElement = nextSiblingElement(node); if (nextSiblingElement != null) { return nextSiblingElement; } Node parent = node.getParentNode(); while (parent instanceof Element) { Element next = nextSiblingElement(parent); if (next != null) { return next; } parent = parent.getParentNode(); } return null; }
} else if ("parent".equals(key)) { Node parent = node.getParentNode(); result = (parent == null) ? null : new DOMNodeModel(parent); } else if ("ancestorByName".equals(key)) { result = new AncestorByName(); } else if ("nextSibling".equals(key)) { Node next = node.getNextSibling(); result = (next == null) ? null : new DOMNodeModel(next); } else if ("previousSibling".equals(key)) { Node previous = node.getPreviousSibling(); result = (previous == null) ? null : new DOMNodeModel(previous); } else if ("nextSiblingElement".equals(key)) { Node next = nextSiblingElement(node); result = (next == null) ? null : new DOMNodeModel(next); } else if ("previousSiblingElement".equals(key)) { Node previous = previousSiblingElement(node); result = (previous == null) ? null : new DOMNodeModel(previous); } else if ("nextElement".equals(key)) { Node next = nextElement(node); result = (next == null) ? null : new DOMNodeModel(next); } else if ("previousElement".equals(key)) { Node previous = previousElement(node); result = (previous == null) ? null : new DOMNodeModel(previous); } else if ("text".equals(key)) { result = new SimpleScalar(getText(node));
public TemplateModel get(int index) { DOMNodeModel result = (DOMNodeModel) nodes[index]; if (result == null) { result = new DOMNodeModel(nodeList.item(index)); nodes[index] = result; result.setParent(DOMNodeModel.this); } return result; }
public Object exec(List arguments) throws TemplateModelException { if (arguments.size() != 1) { throw new TemplateModelException("Expecting exactly one string argument here"); } String nodeName = (String) arguments.get(0); DOMNodeModel ancestor = (DOMNodeModel) DOMNodeModel.this.get("parent"); while (ancestor != null) { if (nodeName.equals(ancestor.getNodeName())) { return ancestor; } ancestor = (DOMNodeModel) ancestor.get("parent"); } return null; } }
static private String getText(Node node) { String result = ""; if (node instanceof Text) { result = ((Text) node).getData(); } else if (node instanceof Element) { NodeList children = node.getChildNodes(); for (int i = 0; i < children.getLength(); i++) { result += getText(children.item(i)); } } return result; }
static private Element previousElement(Node node) { Element result = previousSiblingElement(node); if (result != null) { return result; } Node parent = node.getParentNode(); if (parent instanceof Element) { return (Element) parent; } return null; }
static private Element nextElement(Node node) { if (node.hasChildNodes()) { NodeList children = node.getChildNodes(); for (int i = 0; i < children.getLength(); i++) { Node child = children.item(i); if (child instanceof Element) { return (Element) child; } } } Element nextSiblingElement = nextSiblingElement(node); if (nextSiblingElement != null) { return nextSiblingElement; } Node parent = node.getParentNode(); while (parent instanceof Element) { Element next = nextSiblingElement(parent); if (next != null) { return next; } parent = parent.getParentNode(); } return null; }
} else if ("parent".equals(key)) { Node parent = node.getParentNode(); result = (parent == null) ? null : new DOMNodeModel(parent); } else if ("ancestorByName".equals(key)) { result = new AncestorByName(); } else if ("nextSibling".equals(key)) { Node next = node.getNextSibling(); result = (next == null) ? null : new DOMNodeModel(next); } else if ("previousSibling".equals(key)) { Node previous = node.getPreviousSibling(); result = (previous == null) ? null : new DOMNodeModel(previous); } else if ("nextSiblingElement".equals(key)) { Node next = nextSiblingElement(node); result = (next == null) ? null : new DOMNodeModel(next); } else if ("previousSiblingElement".equals(key)) { Node previous = previousSiblingElement(node); result = (previous == null) ? null : new DOMNodeModel(previous); } else if ("nextElement".equals(key)) { Node next = nextElement(node); result = (next == null) ? null : new DOMNodeModel(next); } else if ("previousElement".equals(key)) { Node previous = previousElement(node); result = (previous == null) ? null : new DOMNodeModel(previous); } else if ("text".equals(key)) { result = new SimpleScalar(getText(node));
public TemplateModel get(int index) { DOMNodeModel result = (DOMNodeModel) nodes[index]; if (result == null) { result = new DOMNodeModel(nodeList.item(index)); nodes[index] = result; result.setParent(DOMNodeModel.this); } return result; }
public Object exec(List arguments) throws TemplateModelException { if (arguments.size() != 1) { throw new TemplateModelException("Expecting exactly one string argument here"); } String nodeName = (String) arguments.get(0); DOMNodeModel ancestor = (DOMNodeModel) DOMNodeModel.this.get("parent"); while (ancestor != null) { if (nodeName.equals(ancestor.getNodeName())) { return ancestor; } ancestor = (DOMNodeModel) ancestor.get("parent"); } return null; } }
static private String getText(Node node) { String result = ""; if (node instanceof Text) { result = ((Text) node).getData(); } else if (node instanceof Element) { NodeList children = node.getChildNodes(); for (int i= 0; i<children.getLength(); i++) { result += getText(children.item(i)); } } return result; }
static private Element previousElement(Node node) { Element result = previousSiblingElement(node); if (result != null) { return result; } Node parent = node.getParentNode(); if (parent instanceof Element) { return (Element) parent; } return null; }