/* * HtmlProcessingInstruction.java * Selima Prague FBI Project * 5th-March-2008 */ package org.lobobrowser.html.domimpl; import org.w3c.dom.DOMException; import org.w3c.dom.Node; import org.w3c.dom.ProcessingInstruction; /** * HTML DOM object representing processing instruction as per HTML 4.0 * specification. * * @author vitek */ public class HTMLProcessingInstruction extends NodeImpl implements ProcessingInstruction, Cloneable { String target; String data; public HTMLProcessingInstruction(final String target, final String data) { this.target = target; this.data = data; } @Override protected Node createSimilarNode() { return (Node) clone(); } @Override public String getLocalName() { return target; } @Override public String getNodeName() { return target; } @Override public short getNodeType() { return Node.PROCESSING_INSTRUCTION_NODE; } @Override public String getNodeValue() throws DOMException { return data; } @Override public void setNodeValue(final String nodeValue) throws DOMException { this.data = nodeValue; } public String getData() { return data; } public String getTarget() { return target; } public void setData(final String data) throws DOMException { this.data = data; } @Override public Object clone() { try { return super.clone(); } catch (final CloneNotSupportedException e) { throw new IllegalStateException(e); } } @Override public String toString() { return "<?" + target + " " + data + ">"; } }