public Element addElement(String qualifiedName, String namespaceURI) { Element node = getDocumentFactory().createElement(qualifiedName, namespaceURI); add(node); return node; }
public Element addElement(String name, String prefix, String uri) { Namespace namespace = Namespace.get(prefix, uri); QName qName = getDocumentFactory().createQName(name, namespace); return addElement(qName); }
@Override public T set(int index, T node) { int realIndex = branchContent.indexOf(get(index)); if (realIndex < 0) { realIndex = (index == 0) ? 0 : Integer.MAX_VALUE; } if (realIndex < branchContent.size()) { branch.removeNode(get(index)); branch.addNode(realIndex, node); } else { branch.removeNode(get(index)); branch.addNode(node); } branch.childAdded(node); return super.set(index, node); }
/** * Called when the given List content has been removed so each node should * have its parent and document relationships cleared */ protected void contentRemoved() { List<Node> content = contentList(); for (Node node : content) { childRemoved(node); } }
public void add(Node node) { switch (node.getNodeType()) { case ELEMENT_NODE: add((Element) node); break; case COMMENT_NODE: add((Comment) node); break; case PROCESSING_INSTRUCTION_NODE: add((ProcessingInstruction) node); break; default: invalidNodeTypeAddException(node); } }
public Element elementByID(String elementID) { for (int i = 0, size = nodeCount(); i < size; i++) { Node node = node(i); if (node instanceof Element) { Element element = (Element) node; String id = elementID(element); if ((id != null) && id.equals(elementID)) { return element; } else { element = element.elementByID(elementID); if (element != null) { return element; } } } } return null; }
public String getText() { List<Node> content = contentList(); if (content != null) { int size = content.size(); if (size >= 1) { Object first = content.get(0); String firstText = getContentAsText(first); if (size == 1) { // optimised to avoid StringBuffer creation return firstText; } else { StringBuilder buffer = new StringBuilder(firstText); for (int i = 1; i < size; i++) { Object node = content.get(i); buffer.append(getContentAsText(node)); } return buffer.toString(); } } } return ""; }
@Override public void add(int index, T node) { branch.childAdded(node); branchContent.add(index, node); }
public void setProcessingInstructions(List<ProcessingInstruction> listOfPIs) { for (ProcessingInstruction pi : listOfPIs) { addNode(pi); } }
@Override public void clear() { for (Node node : this) { branch.childRemoved(node); } branchContent.clear(); }
public Node node(int index) { return contentList().get(index); }
public String getTextTrim() { String text = getText(); StringBuilder textContent = new StringBuilder(); StringTokenizer tokenizer = new StringTokenizer(text); while (tokenizer.hasMoreTokens()) { String str = tokenizer.nextToken(); textContent.append(str); if (tokenizer.hasMoreTokens()) { textContent.append(" "); // separator } } return textContent.toString(); }
public void setRootElement(Element rootElement) { clearContent(); if (rootElement != null) { super.add(rootElement); rootElementAdded(rootElement); } }
public Node node(int index) { Object object = contentList().get(index); if (object instanceof Node) { return (Node) object; } if (object instanceof String) { return getDocumentFactory().createText(object.toString()); } return null; }
public Element elementByID(String elementID) { for (int i = 0, size = nodeCount(); i < size; i++) { Node node = node(i); if (node instanceof Element) { Element element = (Element) node; String id = elementID(element); if ((id != null) && id.equals(elementID)) { return element; } else { element = element.elementByID(elementID); if (element != null) { return element; } } } } return null; }
public String getText() { List<Node> content = contentList(); if (content != null) { int size = content.size(); if (size >= 1) { Object first = content.get(0); String firstText = getContentAsText(first); if (size == 1) { // optimised to avoid StringBuffer creation return firstText; } else { StringBuilder buffer = new StringBuilder(firstText); for (int i = 1; i < size; i++) { Object node = content.get(i); buffer.append(getContentAsText(node)); } return buffer.toString(); } } } return ""; }
@Override public boolean add(T node) { branch.childAdded(node); return branchContent.add(node); }
public void add(ProcessingInstruction pi) { addNode(pi); }
@Override public T remove(int index) { T node = branchContent.remove(index); if (node != null) { branch.childRemoved(node); } return node; }
public int nodeCount() { return contentList().size(); }