org.jdom
Class ProcessingInstruction

java.lang.Object
  |
  +--org.jdom.ProcessingInstruction
All Implemented Interfaces:
java.lang.Cloneable, java.io.Serializable

public class ProcessingInstruction
extends java.lang.Object
implements java.io.Serializable, java.lang.Cloneable

ProcessingInstruction defines behavior for an XML processing instruction, modeled in Java. Methods allow the user to obtain the target of the PI as well as its data. The data can always be accessed as a String, and where appropriate can be retrieved as name/value pairs.

Version:
$Revision: 1.27 $, $Date: 2002/03/20 15:16:32 $
Author:
Brett McLaughlin, Jason Hunter, Steven Gould
See Also:
Serialized Form

Field Summary
protected  java.util.Map mapData
          The data for the PI in name/value pairs
protected  java.lang.Object parent
          Parent element, document, or null if none
protected  java.lang.String rawData
          The data for the PI as a String
protected  java.lang.String target
          The target of the PI
 
Constructor Summary
protected ProcessingInstruction()
           Default, no-args constructor for implementations to use if needed.
  ProcessingInstruction(java.lang.String target, java.util.Map data)
           This will create a new ProcessingInstruction with the specified target and data.
  ProcessingInstruction(java.lang.String target, java.lang.String data)
           This will create a new ProcessingInstruction with the specified target and data.
 
Method Summary
 java.lang.Object clone()
           This will return a clone of this ProcessingInstruction.
 ProcessingInstruction detach()
           This detaches the PI from its parent, or does nothing if the PI has no parent.
 boolean equals(java.lang.Object ob)
           This tests for equality of this ProcessingInstruction to the supplied Object.
 java.lang.String getData()
           This will return the raw data from all instructions.
 Document getDocument()
           This retrieves the owning Document for this PI, or null if not a currently a member of a Document.
 java.util.List getNames()
           This will return a List containing the names of the "attribute" style pieces of name/value pairs in this PI's data.
 Element getParent()
           This will return the parent of this ProcessingInstruction.
 java.lang.String getTarget()
           This will retrieve the target of the PI.
 java.lang.String getValue(java.lang.String name)
           This will return the value for a specific name/value pair on the PI.
 int hashCode()
           This returns the hash code for this ProcessingInstruction.
 boolean removeValue(java.lang.String name)
           This will remove the name/value pair with the specified name.
 ProcessingInstruction setData(java.util.Map data)
           This will set the name/value pairs within the passed Map as the pairs for the data of this PI.
 ProcessingInstruction setData(java.lang.String data)
           This will set the raw data for the PI.
protected  ProcessingInstruction setDocument(Document document)
           This sets the Document parent of this PI.
protected  ProcessingInstruction setParent(Element parent)
           This will set the parent of this ProcessingInstruction.
 ProcessingInstruction setValue(java.lang.String name, java.lang.String value)
           This will set the value for the specified name/value pair.
 java.lang.String toString()
           This returns a String representation of the ProcessingInstruction, suitable for debugging.
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

target

protected java.lang.String target
The target of the PI

rawData

protected java.lang.String rawData
The data for the PI as a String

mapData

protected java.util.Map mapData
The data for the PI in name/value pairs

parent

protected java.lang.Object parent
Parent element, document, or null if none
Constructor Detail

ProcessingInstruction

protected ProcessingInstruction()

Default, no-args constructor for implementations to use if needed.


ProcessingInstruction

public ProcessingInstruction(java.lang.String target,
                             java.util.Map data)

This will create a new ProcessingInstruction with the specified target and data.

Parameters:
target - String target of PI.
data - Map data for PI, in name/value pairs
Throws:
IllegalTargetException - if the given target is illegal as a processing instruction name.

ProcessingInstruction

public ProcessingInstruction(java.lang.String target,
                             java.lang.String data)

This will create a new ProcessingInstruction with the specified target and data.

Parameters:
target - String target of PI.
rawData - String data for PI.
Throws:
IllegalTargetException - if the given target is illegal as a processing instruction name.
Method Detail

getParent

public Element getParent()

This will return the parent of this ProcessingInstruction. If there is no parent, then this returns null.

Returns:
parent of this ProcessingInstruction

setParent

protected ProcessingInstruction setParent(Element parent)

This will set the parent of this ProcessingInstruction.

Parameters:
parent - Element to be new parent.
Returns:
this ProcessingInstruction modified.

detach

public ProcessingInstruction detach()

This detaches the PI from its parent, or does nothing if the PI has no parent.

Returns:
ProcessingInstruction - this ProcessingInstruction modified.

getDocument

public Document getDocument()

This retrieves the owning Document for this PI, or null if not a currently a member of a Document.

Returns:
Document owning this PI, or null.

setDocument

protected ProcessingInstruction setDocument(Document document)

This sets the Document parent of this PI.

Parameters:
document - Document parent
Returns:
this PI modified

getTarget

public java.lang.String getTarget()

This will retrieve the target of the PI.

Returns:
String - target of PI.

getData

public java.lang.String getData()

This will return the raw data from all instructions.

Returns:
String - data of PI.

getNames

public java.util.List getNames()

This will return a List containing the names of the "attribute" style pieces of name/value pairs in this PI's data.

Returns:
List - the List containing the "attribute" names.

setData

public ProcessingInstruction setData(java.lang.String data)

This will set the raw data for the PI.

Parameters:
rawData - String data of PI.
Returns:
ProcessingInstruction - this PI modified.

setData

public ProcessingInstruction setData(java.util.Map data)

This will set the name/value pairs within the passed Map as the pairs for the data of this PI. The keys should be the pair name and the values should be the pair values.

Returns:
ProcessingInstruction - modified PI.

getValue

public java.lang.String getValue(java.lang.String name)

This will return the value for a specific name/value pair on the PI. If no such pair is found for this PI, null is returned.

Parameters:
name - String name of name/value pair to lookup value for.
Returns:
String - value of name/value pair.

setValue

public ProcessingInstruction setValue(java.lang.String name,
                                      java.lang.String value)

This will set the value for the specified name/value pair. If no matching pair is found, the supplied pair is added to the PI data.

Parameters:
name - String name of pair.
value - String value for pair.
Returns:
ProcessingInstruction this PI modified.

removeValue

public boolean removeValue(java.lang.String name)

This will remove the name/value pair with the specified name.

Returns:
boolean - whether the requested instruction was removed.

toString

public java.lang.String toString()

This returns a String representation of the ProcessingInstruction, suitable for debugging. If the XML representation of the ProcessingInstruction is desired, XMLOutputter.outputString(ProcessingInstruction) should be used.

Overrides:
toString in class java.lang.Object
Returns:
String - information about the ProcessingInstruction

equals

public final boolean equals(java.lang.Object ob)

This tests for equality of this ProcessingInstruction to the supplied Object.

Overrides:
equals in class java.lang.Object
Parameters:
ob - Object to compare to.
Returns:
boolean - whether the ProcessingInstruction is equal to the supplied Object.

hashCode

public final int hashCode()

This returns the hash code for this ProcessingInstruction.

Overrides:
hashCode in class java.lang.Object
Returns:
int - hash code.

clone

public java.lang.Object clone()

This will return a clone of this ProcessingInstruction.

Overrides:
clone in class java.lang.Object
Returns:
Object - clone of this ProcessingInstruction.


Copyright © 2002 Jason Hunter, Brett McLaughlin. All Rights Reserved.