All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.sun.xml.tree.PINode Maven / Gradle / Ivy

The newest version!
/*
 * $Id: PINode.java,v 1.4 1999/04/20 00:11:12 mode Exp $
 * 
 * Copyright (c) 1998-1999 Sun Microsystems, Inc. All Rights Reserved.
 * 
 * This software is the confidential and proprietary information of Sun
 * Microsystems, Inc. ("Confidential Information").  You shall not
 * disclose such Confidential Information and shall use it only in
 * accordance with the terms of the license agreement you entered into
 * with Sun.
 * 
 * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE
 * SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 * PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR ANY DAMAGES
 * SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING
 * THIS SOFTWARE OR ITS DERIVATIVES.
 */

package com.sun.xml.tree;


import java.io.Writer;
import java.io.IOException;

import org.w3c.dom.*;


/**
 * Node representing an XML processing instruction.
 *
 * 

Functionality to restore in some other way: * * As a convenience function, the instruction data may optionally * be parsed as element attributes are parsed. There is no requirement * to use this particular syntax for instruction data. * * @author David Brownell * @version $Revision: 1.4 $ */ final //public class PINode extends NodeBase implements ProcessingInstruction { private String target; private char data []; /** Constructs a processing instruction node. */ public PINode () { } /** Constructs a processing instruction node. */ public PINode (String target, String text) { data = text.toCharArray (); this.target = target; } PINode (String target, char buf [], int offset, int len) { data = new char [len]; System.arraycopy (buf, offset, data, 0, len); this.target = target; } /** DOM: Returns the PROCESSING_INSTRUCTION_NODE node type. */ public short getNodeType () { return PROCESSING_INSTRUCTION_NODE; } /** DOM: Returns the processor the instruction is directed to. */ public String getTarget () { return target; } /** DOM: Assigns the processor the instruction is directed to. */ public void setTarget (String target) { this.target = target; } /** DOM: Returns the text data as a string. */ public String getData () { return new String (data); } /** DOM: Assigns the text data. */ public void setData (String data) { if (isReadonly ()) throw new DomEx (DomEx.NO_MODIFICATION_ALLOWED_ERR); this.data = data.toCharArray (); } /** DOM: Returns the text data as a string. */ public String getNodeValue () { return getData (); } /** DOM: Assigns the text data. */ public void setNodeValue (String data) { setData (data); } /** * Writes the processing instruction as well formed XML text. * *

Doesn't currently check for the ?> substrings * in PI data, which are illegal */ public void writeXml (XmlWriteContext context) throws IOException { Writer out = context.getWriter (); out.write (""); } /** Returns a new processing instruction with the same content as this. */ public Node cloneNode (boolean deep) { PINode retval = new PINode (target, data, 0, data.length); retval.setOwnerDocument ((XmlDocument) this.getOwnerDocument ()); return retval; } /** Returns the PI target name. */ public String getNodeName () { return target; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy