Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| fop 1.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.fop.fo
Class XMLObj

    java.lang.Object
      org.apache.fop.fo.FONode
          org.apache.fop.fo.XMLObj

All Implemented Interfaces:
  java.lang.Cloneable, ContentHandlerFactory.ObjectBuiltListener, java.util.EventListener

Direct Known Subclasses:
  SVGObj, UnknownXMLObj

public abstract class XMLObj
extends FONode
implements ContentHandlerFactory.ObjectBuiltListener

Abstract class modelling generic, non-XSL-FO XML objects. Such objects are stored in a DOM.

Nested Class Summary

Nested classes inherited from class org.apache.fop.fo.FONode
`FONode.FONodeIterator, FONode.GatherContextInfoFunction`

Field Summary
`protected org.w3c.dom.Document` | `doc` DOM document containing this node
`protected org.w3c.dom.Element` | `element` DOM element representing this node
`protected java.lang.String` | `name` Name of the node

Fields inherited from class org.apache.fop.fo.FONode
`FO_URI, FOX_URI, locator, log, parent, siblings`

Constructor Summary
`XMLObj(FONode parent)` Base constructor

Method Summary
`protected void` | `addChildNode(FONode child)` Adds a node as a child of this node. The default implementation of this method just ignores any child node being added.
`void` | `addElement(org.w3c.dom.Document doc, org.w3c.dom.Element parent)` Add an element to the DOM document
`void` | `buildTopLevel(org.w3c.dom.Document doc, org.w3c.dom.Element svgRoot)` Add the top-level element to the DOM document
`protected void` | `characters(char[] data, int start, int length, PropertyList pList, org.xml.sax.Locator locator)` Adds characters. Does nothing by default. To be overridden in subclasses that allow `#PCDATA` content.
`org.w3c.dom.Document` | `createBasicDocument()` Create an empty DOM document
`java.awt.geom.Point2D` | `getDimension(java.awt.geom.Point2D view)` Returns the dimensions of the generated area in pts.
`org.w3c.dom.Document` | `getDOMDocument()`
`Length` | `getIntrinsicAlignmentAdjust()` Retrieve the intrinsic alignment-adjust of the child element.
`java.lang.String` | `getLocalName()` Returns the local name (i.e. without namespace prefix) of the node
`void` | `notifyObjectBuilt(java.lang.Object obj)` Notifies the listener when the object is fully built.
`void` | `processNode(java.lang.String elementName, org.xml.sax.Locator locator, org.xml.sax.Attributes attlist, PropertyList propertyList)` Initialize the node with its name, location information, and attributes The attributes must be used immediately as the sax attributes will be altered for the next element.
`protected void` | `validateChildNode(org.xml.sax.Locator loc, java.lang.String nsURI, java.lang.String localName)` Checks to make sure, during SAX processing of input document, that the incoming node is valid for this (parent) node (e.g., checking to see that `fo:table` is not an immediate child of `fo:root`) called from `FOTreeBuilder.startElement(String, String, String, Attributes)` before constructing the child `FObj`. Here, blocks XSL-FO's from having non-FO parents.

Methods inherited from class org.apache.fop.fo.FONode
`addCharacters, attachSiblings, bind, canHaveMarkers, charIterator, clone, clone, createPropertyList, decorateWithContextInfo, endOfNode, errorText, finalizeNode, gatherContextInfo, getBuilderContext, getChildNodes, getChildNodes, getContentHandlerFactory, getContextInfo, getContextInfoAlt, getExtensionAttachment, getFOEventHandler, getFOValidationEventProducer, getLocator, getLocatorString, getLogger, getName, getName, getNameId, getNamespaceURI, getNodeString, getNormalNamespacePrefix, getParent, getRoot, getUserAgent, inMarker, invalidChildError, invalidChildError, missingChildElementError, missingChildElementError, missingPropertyError, nodesOutOfOrderError, nodesOutOfOrderError, removeChild, setLocator, startOfNode, tooManyNodesError, tooManyNodesError, tooManyNodesError, validateChildNode, warningText`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### element

    protected org.w3c.dom.Element element

  DOM element representing this node

### doc

    protected org.w3c.dom.Document doc

  DOM document containing this node

### name

    protected java.lang.String name

  Name of the node

Constructor Detail

### XMLObj

    public XMLObj(FONode parent)

  Base constructor

Parameters:
  `parent` - `FONode` that is the parent of this object

Method Detail

### validateChildNode

    protected void validateChildNode(org.xml.sax.Locator loc,
                                     java.lang.String nsURI,
                                     java.lang.String localName)
                              throws ValidationException

  Checks to make sure, during SAX processing of input document, that the incoming node is valid for this (parent) node (e.g., checking to see that `fo:table` is not an immediate child of `fo:root`) called from `FOTreeBuilder.startElement(String, String, String, Attributes)` before constructing the child `FObj`.
  Here, blocks XSL-FO's from having non-FO parents.

  Overrides:
    `validateChildNode` in class `FONode`
  Parameters:
    `loc` - location in the FO source file
    `nsURI` - namespace of incoming node
    `localName` - name of the incoming node (without namespace prefix)
  Throws:
    `ValidationException` - if incoming node not valid for parent

### processNode

    public void processNode(java.lang.String elementName,
                            org.xml.sax.Locator locator,
                            org.xml.sax.Attributes attlist,
                            PropertyList propertyList)
                     throws FOPException

  Initialize the node with its name, location information, and attributes The attributes must be used immediately as the sax attributes will be altered for the next element.

  Overrides:
    `processNode` in class `FONode`
  Parameters:
    `elementName` - element name (e.g., "fo:block")
    `locator` - Locator object (ignored by default)
    `attlist` - Collection of attributes passed to us from the parser.
    `propertyList` - the property list of the parent node
  Throws:
    `FOPException` - for errors or inconsistencies in the attributes

### getDOMDocument

    public org.w3c.dom.Document getDOMDocument()

  Returns:
    DOM document representing this foreign XML

### getDimension

    public java.awt.geom.Point2D getDimension(java.awt.geom.Point2D view)

  Returns the dimensions of the generated area in pts.

  Parameters:
    `view` - Point2D instance to receive the dimensions
  Returns:
    the requested dimensions in pts.

### getIntrinsicAlignmentAdjust

    public Length getIntrinsicAlignmentAdjust()

  Retrieve the intrinsic alignment-adjust of the child element.

  Returns:
    the intrinsic alignment-adjust.

### getLocalName

    public java.lang.String getLocalName()

  Returns the local name (i.e. without namespace prefix) of the node

  Specified by:
    `getLocalName` in class `FONode`
  Returns:
    the local name of this node

### addElement

    public void addElement(org.w3c.dom.Document doc,
                           org.w3c.dom.Element parent)

  Add an element to the DOM document

  Parameters:
    `doc` - DOM document to which to add an element
    `parent` - the parent element of the element that is being added

### buildTopLevel

    public void buildTopLevel(org.w3c.dom.Document doc,
                              org.w3c.dom.Element svgRoot)

  Add the top-level element to the DOM document

  Parameters:
    `doc` - DOM document
    `svgRoot` - non-XSL-FO element to be added as the root of this document

### createBasicDocument

    public org.w3c.dom.Document createBasicDocument()

  Create an empty DOM document

  Returns:
    DOM document

### addChildNode

    protected void addChildNode(FONode child)

  Adds a node as a child of this node. The default implementation of this method just ignores any child node being added.

  Overrides:
    `addChildNode` in class `FONode`
  Parameters:
    `child` - child node to be added to the childNodes of this node

### characters

    protected void characters(char[] data,
                              int start,
                              int length,
                              PropertyList pList,
                              org.xml.sax.Locator locator)
                       throws FOPException

  Adds characters. Does nothing by default. To be overridden in subclasses that allow `#PCDATA` content.

  Overrides:
    `characters` in class `FONode`
  Parameters:
    `data` - array of characters containing text to be added
    `start` - starting array element to add
    `length` - number of elements to add
    `pList` - currently applicable PropertyList
    `locator` - location in the XSL-FO source file.
  Throws:
    `FOPException` - if there's a problem during processing

### notifyObjectBuilt

    public void notifyObjectBuilt(java.lang.Object obj)

  Notifies the listener when the object is fully built.

  Specified by:
    `notifyObjectBuilt` in interface `ContentHandlerFactory.ObjectBuiltListener`
  Parameters:
    `obj` - the newly built object

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| fop 1.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright 1999-2010 The Apache Software Foundation. All Rights Reserved.