## org.jfree.xml.generator
Class DefaultModelReader

    java.lang.Object
      org.jfree.xml.util.AbstractModelReader
          org.jfree.xml.generator.DefaultModelReader

    public class DefaultModelReader

extends AbstractModelReader

A reader for the class model.

Constructor Summary
`DefaultModelReader()` Creates a new model reader.

Method Summary
`protected void` `endIncludeHandling()` Ends include handling.
`protected void` `endMultiplexMapping()` Ends a multiplex mapping.
`protected void` `endObjectDefinition()` Finishes processing an object definition (sets the constructor and property info for the class description, and adds the class description to the model).
`protected void` `endRootDocument()` Ends the root document.
`protected void` `fillSuperClasses()` Iterates through all the class descriptions in the model, setting the superclass attribute in all cases where the superclass definitions are contained in the model.
`protected java.beans.PropertyDescriptor` `getPropertyDescriptor(java.lang.String propertyName)` Returns a property descriptor for the named property, or `null` if there is no descriptor with the given name.
`protected void` `handleAttributeDefinition(java.lang.String name, java.lang.String attribName, java.lang.String handlerClass)` Handles the description of an attribute within an object definition.
`protected void` `handleConstructorDefinition(java.lang.String tagName, java.lang.String parameterClass)` Handles the constructor definition.
`protected void` `handleElementDefinition(java.lang.String name, java.lang.String element)` Handles the description of an element within an object definition.
`protected void` `handleIgnoredProperty(java.lang.String name)` Handles an ignored property.
`protected void` `handleLookupDefinition(java.lang.String name, java.lang.String lookupKey)` Handles a lookup definition.
`protected boolean` `handleManualMapping(java.lang.String className, java.lang.String readHandler, java.lang.String writeHandler)` Handles a manual mapping.
`protected void` `handleMultiplexMapping(java.lang.String typeName, java.lang.String className)` Handles a multiplex mapping.
`DescriptionModel` `load(java.lang.String file)` Loads a description model.
`protected void` `startIncludeHandling(java.net.URL resource)` Starts include handling.
`protected void` `startMultiplexMapping(java.lang.String className, java.lang.String typeAttr)` Start a multiplex mapping.
`protected boolean` `startObjectDefinition(java.lang.String className, java.lang.String register, boolean ignore)` Begin processing an object definition element.
`protected void` `startRootDocument()` Starts the root document.

Methods inherited from class org.jfree.xml.util.AbstractModelReader
`getCloseComment, getCommentHandler, getOpenComment, loadClass, parseXml, parseXmlDocument, setCloseComment, setOpenComment`

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

Constructor Detail

### DefaultModelReader

    public DefaultModelReader()

  Creates a new model reader.

Method Detail

### load

    public DescriptionModel load(java.lang.String file)
                          throws java.io.IOException,
                                 ObjectDescriptionException

  Loads a description model.

  Parameters:
    `file` - the file name.
  Returns:
    A description model.
  Throws:
    `java.io.IOException` - if there is an I/O problem.
    `ObjectDescriptionException` - if there is a problem reading the object descriptions.

### fillSuperClasses

    protected void fillSuperClasses()

  Iterates through all the class descriptions in the model, setting the superclass attribute in all cases where the superclass definitions are contained in the model.

### startObjectDefinition

    protected boolean startObjectDefinition(java.lang.String className,
                                            java.lang.String register,
                                            boolean ignore)

  Begin processing an object definition element.

  Specified by:
    `startObjectDefinition` in class `AbstractModelReader`
  Parameters:
    `className` - the class name.
    `register` - the register name (`null` permitted).
    `ignore` - ??
  Returns:
    `true` if the class is available, and `false` otherwise.

### endObjectDefinition

    protected void endObjectDefinition()
                                throws ObjectDescriptionException

  Finishes processing an object definition (sets the constructor and property info for the class description, and adds the class description to the model).

  Specified by:
    `endObjectDefinition` in class `AbstractModelReader`
  Throws:
    `ObjectDescriptionException` - if there is a problem with the object description.

### handleAttributeDefinition

    protected void handleAttributeDefinition(java.lang.String name,
                                             java.lang.String attribName,
                                             java.lang.String handlerClass)
                                      throws ObjectDescriptionException

  Handles the description of an attribute within an object definition.

  Specified by:
    `handleAttributeDefinition` in class `AbstractModelReader`
  Parameters:
    `name` - the name.
    `attribName` - the attribute name.
    `handlerClass` - the fully qualified class name for the attribute handler.
  Throws:
    `ObjectDescriptionException` - if there is a problem with the object description.

### handleConstructorDefinition

    protected void handleConstructorDefinition(java.lang.String tagName,
                                               java.lang.String parameterClass)
                                        throws ObjectDescriptionException

  Handles the constructor definition.

  Specified by:
    `handleConstructorDefinition` in class `AbstractModelReader`
  Parameters:
    `tagName` - the tag name.
    `parameterClass` - the parameter class.
  Throws:
    `ObjectDescriptionException` - if there is a problem with the object description.

### handleElementDefinition

    protected void handleElementDefinition(java.lang.String name,
                                           java.lang.String element)
                                    throws ObjectDescriptionException

  Handles the description of an element within an object definition.

  Specified by:
    `handleElementDefinition` in class `AbstractModelReader`
  Parameters:
    `name` - the property name.
    `element` - the element name.
  Throws:
    `ObjectDescriptionException` - if there is a problem with the object description.

### handleLookupDefinition

    protected void handleLookupDefinition(java.lang.String name,
                                          java.lang.String lookupKey)
                                   throws ObjectDescriptionException

  Handles a lookup definition.

  Specified by:
    `handleLookupDefinition` in class `AbstractModelReader`
  Parameters:
    `name` - the name.
    `lookupKey` - the lookup key.
  Throws:
    `ObjectDescriptionException` - if there is a problem with the object description.

### getPropertyDescriptor

    protected java.beans.PropertyDescriptor getPropertyDescriptor(java.lang.String propertyName)

  Returns a property descriptor for the named property, or `null` if there is no descriptor with the given name.

  Parameters:
    `propertyName` - the property name.
  Returns:
    a property descriptor.

### handleIgnoredProperty

    protected void handleIgnoredProperty(java.lang.String name)

  Handles an ignored property.

  Overrides:
    `handleIgnoredProperty` in class `AbstractModelReader`
  Parameters:
    `name` - the name.

### handleManualMapping

    protected boolean handleManualMapping(java.lang.String className,
                                          java.lang.String readHandler,
                                          java.lang.String writeHandler)
                                   throws ObjectDescriptionException

  Handles a manual mapping.

  Specified by:
    `handleManualMapping` in class `AbstractModelReader`
  Parameters:
    `className` - the class name.
    `readHandler` - the read handler.
    `writeHandler` - the write handler.
  Returns:
    A boolean.
  Throws:
    `ObjectDescriptionException` - if there is a problem with the object description.

### startMultiplexMapping

    protected void startMultiplexMapping(java.lang.String className,
                                         java.lang.String typeAttr)

  Start a multiplex mapping.

  Specified by:
    `startMultiplexMapping` in class `AbstractModelReader`
  Parameters:
    `className` - the class name.
    `typeAttr` - the type.

### handleMultiplexMapping

    protected void handleMultiplexMapping(java.lang.String typeName,
                                          java.lang.String className)
                                   throws ObjectDescriptionException

  Handles a multiplex mapping.

  Specified by:
    `handleMultiplexMapping` in class `AbstractModelReader`
  Parameters:
    `typeName` - the type name.
    `className` - the class name.
  Throws:
    `ObjectDescriptionException` - if there is a problem with the object description.

### endMultiplexMapping

    protected void endMultiplexMapping()
                                throws ObjectDescriptionException

  Ends a multiplex mapping.

  Specified by:
    `endMultiplexMapping` in class `AbstractModelReader`
  Throws:
    `ObjectDescriptionException` - if there is a problem with the object description.

### startIncludeHandling

    protected void startIncludeHandling(java.net.URL resource)

  Starts include handling.

  Overrides:
    `startIncludeHandling` in class `AbstractModelReader`
  Parameters:
    `resource` - the URL.

### endIncludeHandling

    protected void endIncludeHandling()

  Ends include handling.

  Overrides:
    `endIncludeHandling` in class `AbstractModelReader`

### startRootDocument

    protected void startRootDocument()

  Starts the root document.

  Overrides:
    `startRootDocument` in class `AbstractModelReader`

### endRootDocument

    protected void endRootDocument()

  Ends the root document.

  Overrides:
    `endRootDocument` in class `AbstractModelReader`