Creates an element on the given document.
/*
* XAdES4j - A Java library for generation and verification of XAdES signatures.
* Copyright (C) 2010 Luis Goncalves.
*
* XAdES4j is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 3 of the License, or any later version.
*
* XAdES4j is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License along
* with XAdES4j. If not, see <http://www.gnu.org/licenses/>.
*/
//package xades4j.utils;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
/**
* Utility methods for DOM nodes.
*
* @author Lus
*/
public class DOMHelper {
/**
* Creates an element on the given document. Exceptions are as in
* {@link Document#createElementNS(java.lang.String, java.lang.String)}. The
* qualified name is obtained by {@code prefix}:{@code name} if the prefix
* is not {@code null}.
*
* @param doc
* the owner document
* @param name
* the element's local name
* @param prefix
* the element's prefix (may be {@code null})
* @param namespaceURI
* the element's uri ({@code null} for no namespace)
* @return the created element
*
* @see Document#createElementNS(java.lang.String, java.lang.String)
*/
public static Element createElement(Document doc, String name,
String prefix, String namespaceURI) {
if (prefix != null)
name = prefix + ":" + name;
return doc.createElementNS(namespaceURI, name);
}
public static Element createElementInTempDocument(String name,
String prefix, String namespaceURI) {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
dbf.setNamespaceAware(true);
try {
Document doc = dbf.newDocumentBuilder().newDocument();
return createElement(doc, name, prefix, namespaceURI);
} catch (ParserConfigurationException ex) {
return null;
}
}
}
Related examples in the same category