Class DefaultModelReader

    • Constructor Summary

      Constructors 
      Constructor Description
      DefaultModelReader()
      Creates a new model reader.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method 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.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • model

        private DescriptionModel model
        A model containing classes and the corresponding class descriptions.
      • currentClassDescription

        private ClassDescription currentClassDescription
        The class description under construction.
      • currentBeanInfo

        private java.beans.BeanInfo currentBeanInfo
        Information about the class being processed.
      • baseURL

        private java.net.URL baseURL
        The base URL.
      • source

        private java.lang.String source
        The source.
      • multiplexTypeInfos

        private java.util.ArrayList multiplexTypeInfos
        The multiplex type info.
      • propertyList

        private java.util.ArrayList propertyList
        Storage for the properties of the current class.
      • constructorList

        private java.util.ArrayList constructorList
        Storage for the constructors of the current class.
    • 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.
      • 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.
      • 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.
      • startIncludeHandling

        protected void startIncludeHandling​(java.net.URL resource)
        Starts include handling.
        Overrides:
        startIncludeHandling in class AbstractModelReader
        Parameters:
        resource - the URL.