public class DefaultModelReader extends AbstractModelReader
Modifier and Type | Field and Description |
---|---|
private java.net.URL |
baseURL
The base URL.
|
private java.util.ArrayList |
constructorList
Storage for the constructors of the current class.
|
private java.beans.BeanInfo |
currentBeanInfo
Information about the class being processed.
|
private ClassDescription |
currentClassDescription
The class description under construction.
|
private DescriptionModel |
model
A model containing classes and the corresponding class descriptions.
|
private MultiplexMappingInfo |
multiplexInfo
The multiplex mapping info.
|
private java.util.ArrayList |
multiplexTypeInfos
The multiplex type info.
|
private java.util.ArrayList |
propertyList
Storage for the properties of the current class.
|
private java.lang.String |
source
The source.
|
Constructor and Description |
---|
DefaultModelReader()
Creates a new model reader.
|
Modifier and Type | Method and Description |
---|---|
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.
|
getCloseComment, getCommentHandler, getOpenComment, loadClass, parseXml, parseXmlDocument, setCloseComment, setOpenComment
private DescriptionModel model
private ClassDescription currentClassDescription
private java.beans.BeanInfo currentBeanInfo
private java.net.URL baseURL
private java.lang.String source
private MultiplexMappingInfo multiplexInfo
private java.util.ArrayList multiplexTypeInfos
private java.util.ArrayList propertyList
private java.util.ArrayList constructorList
public DescriptionModel load(java.lang.String file) throws java.io.IOException, ObjectDescriptionException
file
- the file name.java.io.IOException
- if there is an I/O problem.ObjectDescriptionException
- if there is a problem reading the object descriptions.protected void fillSuperClasses()
protected boolean startObjectDefinition(java.lang.String className, java.lang.String register, boolean ignore)
startObjectDefinition
in class AbstractModelReader
className
- the class name.register
- the register name (null
permitted).ignore
- ??true
if the class is available, and false
otherwise.protected void endObjectDefinition() throws ObjectDescriptionException
endObjectDefinition
in class AbstractModelReader
ObjectDescriptionException
- if there is a problem with the object description.protected void handleAttributeDefinition(java.lang.String name, java.lang.String attribName, java.lang.String handlerClass) throws ObjectDescriptionException
handleAttributeDefinition
in class AbstractModelReader
name
- the name.attribName
- the attribute name.handlerClass
- the fully qualified class name for the attribute handler.ObjectDescriptionException
- if there is a problem with the object description.protected void handleConstructorDefinition(java.lang.String tagName, java.lang.String parameterClass) throws ObjectDescriptionException
handleConstructorDefinition
in class AbstractModelReader
tagName
- the tag name.parameterClass
- the parameter class.ObjectDescriptionException
- if there is a problem with the object description.protected void handleElementDefinition(java.lang.String name, java.lang.String element) throws ObjectDescriptionException
handleElementDefinition
in class AbstractModelReader
name
- the property name.element
- the element name.ObjectDescriptionException
- if there is a problem with the object description.protected void handleLookupDefinition(java.lang.String name, java.lang.String lookupKey) throws ObjectDescriptionException
handleLookupDefinition
in class AbstractModelReader
name
- the name.lookupKey
- the lookup key.ObjectDescriptionException
- if there is a problem with the object description.protected java.beans.PropertyDescriptor getPropertyDescriptor(java.lang.String propertyName)
null
if there is
no descriptor with the given name.propertyName
- the property name.protected void handleIgnoredProperty(java.lang.String name)
handleIgnoredProperty
in class AbstractModelReader
name
- the name.protected boolean handleManualMapping(java.lang.String className, java.lang.String readHandler, java.lang.String writeHandler) throws ObjectDescriptionException
handleManualMapping
in class AbstractModelReader
className
- the class name.readHandler
- the read handler.writeHandler
- the write handler.ObjectDescriptionException
- if there is a problem with the object description.protected void startMultiplexMapping(java.lang.String className, java.lang.String typeAttr)
startMultiplexMapping
in class AbstractModelReader
className
- the class name.typeAttr
- the type.protected void handleMultiplexMapping(java.lang.String typeName, java.lang.String className) throws ObjectDescriptionException
handleMultiplexMapping
in class AbstractModelReader
typeName
- the type name.className
- the class name.ObjectDescriptionException
- if there is a problem with the object description.protected void endMultiplexMapping() throws ObjectDescriptionException
endMultiplexMapping
in class AbstractModelReader
ObjectDescriptionException
- if there is a problem with the object description.protected void startIncludeHandling(java.net.URL resource)
startIncludeHandling
in class AbstractModelReader
resource
- the URL.protected void endIncludeHandling()
endIncludeHandling
in class AbstractModelReader
protected void startRootDocument()
startRootDocument
in class AbstractModelReader
protected void endRootDocument()
endRootDocument
in class AbstractModelReader