Class XRTreeFrag

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, javax.xml.transform.SourceLocator, ExpressionNode, XPathVisitable
    Direct Known Subclasses:
    XRTreeFragSelectWrapper

    public class XRTreeFrag
    extends XObject
    implements java.lang.Cloneable
    This class represents an XPath result tree fragment object, and is capable of converting the RTF to other types, such as a string.
    See Also:
    Serialized Form
    • Constructor Detail

      • XRTreeFrag

        public XRTreeFrag​(int root,
                          XPathContext xctxt)
        Create an XRTreeFrag Object.
      • XRTreeFrag

        public XRTreeFrag​(Expression expr)
        Create an XRTreeFrag Object.
    • Method Detail

      • object

        public java.lang.Object object()
        Return a java object that's closest to the representation that should be handed to an extension.
        Overrides:
        object in class XObject
        Returns:
        The object that this class wraps
      • allowDetachToRelease

        public void allowDetachToRelease​(boolean allowRelease)
        Specify if it's OK for detach to release the iterator for reuse.
        Overrides:
        allowDetachToRelease in class XObject
        Parameters:
        allowRelease - true if it is OK for detach to release this iterator for pooling.
      • detach

        public void detach()
        Detaches the DTMIterator from the set which it iterated over, releasing any computational resources and placing the iterator in the INVALID state. After detach has been invoked, calls to nextNode or previousNode will raise a runtime exception. In general, detach should only be called once on the object.
        Overrides:
        detach in class XObject
      • getType

        public int getType()
        Tell what kind of class this is.
        Overrides:
        getType in class XObject
        Returns:
        type CLASS_RTREEFRAG
      • getTypeString

        public java.lang.String getTypeString()
        Given a request type, return the equivalent string. For diagnostic purposes.
        Overrides:
        getTypeString in class XObject
        Returns:
        type string "#RTREEFRAG"
      • num

        public double num()
                   throws javax.xml.transform.TransformerException
        Cast result object to a number.
        Overrides:
        num in class XObject
        Returns:
        The result tree fragment as a number or NaN
        Throws:
        javax.xml.transform.TransformerException
      • bool

        public boolean bool()
        Cast result object to a boolean. This always returns true for a RTreeFrag because it is treated like a node-set with a single root node.
        Overrides:
        bool in class XObject
        Returns:
        true
      • xstr

        public XMLString xstr()
        Cast result object to an XMLString.
        Overrides:
        xstr in class XObject
        Returns:
        The document fragment node data or the empty string.
      • str

        public java.lang.String str()
        Cast result object to a string.
        Overrides:
        str in class XObject
        Returns:
        The document fragment node data or the empty string.
      • rtf

        public int rtf()
        Cast result object to a result tree fragment.
        Overrides:
        rtf in class XObject
        Returns:
        The document fragment this wraps
      • asNodeIterator

        public DTMIterator asNodeIterator()
        Cast result object to a DTMIterator. dml - modified to return an RTFIterator for benefit of EXSLT object-type function in ExsltCommon.
        Returns:
        The document fragment as a DTMIterator
      • convertToNodeset

        public org.w3c.dom.NodeList convertToNodeset()
        Cast result object to a nodelist. (special function).
        Returns:
        The document fragment as a nodelist
      • equals

        public boolean equals​(XObject obj2)
        Tell if two objects are functionally equal.
        Overrides:
        equals in class XObject
        Parameters:
        obj2 - Object to compare this to
        Returns:
        True if the two objects are equal
        Throws:
        javax.xml.transform.TransformerException