Class CFMetaDataParser

    • Constructor Detail

      • CFMetaDataParser

        public CFMetaDataParser()
    • Method Detail

      • isPackageElementName

        protected boolean isPackageElementName​(String name)
        The name of the package element. Defaults to "package".
      • getPackageAttributeName

        protected String getPackageAttributeName()
        The attribute of the package element that holds the name, or null to use the element text. Defaults to "name".
      • getPackageElementDepth

        protected int getPackageElementDepth()
        The depth of the package element. Defaults to 1.
      • isClassElementName

        protected boolean isClassElementName​(String name)
        The name of the class element. Defaults to "class".
      • getClassAttributeName

        protected String getClassAttributeName()
        The attribute of the class element that holds the name, or null to use the element text. Defaults to "name".
      • getClassElementDepth

        protected int getClassElementDepth()
        The depth of the class element. Defaults to 2.
      • startPackage

        protected boolean startPackage​(String elem,
                                       Attributes attrs)
                                throws SAXException
        Start a package. Parses out package attribute by default. Return false to skip package element and its contents.
        Throws:
        SAXException
      • endPackage

        protected void endPackage​(String elem)
        End a package. Parses contained text by default.
      • startClass

        protected boolean startClass​(String elem,
                                     Attributes attrs)
                              throws SAXException
        Start a class. Parses out class name by default. Return false to skip class element and its contents.
        Throws:
        SAXException
      • startSystemElement

        protected boolean startSystemElement​(String name,
                                             Attributes attrs)
                                      throws SAXException
        Override this method marking the start of an element outside of any package or class.
        Throws:
        SAXException
      • endSystemElement

        protected void endSystemElement​(String name)
                                 throws SAXException
        Override this method marking the end of an element outside of any package or class.
        Throws:
        SAXException
      • startPackageElement

        protected boolean startPackageElement​(String name,
                                              Attributes attrs)
                                       throws SAXException
        Override this method marking the start of an element within a declared package.
        Throws:
        SAXException
      • endPackageElement

        protected void endPackageElement​(String name)
                                  throws SAXException
        Override this method marking the end of an element within a declared package.
        Throws:
        SAXException
      • startClassElement

        protected boolean startClassElement​(String name,
                                            Attributes attrs)
                                     throws SAXException
        Override this method marking the start of an element within a declared class.
        Throws:
        SAXException
      • endClassElement

        protected void endClassElement​(String name)
                                throws SAXException
        Override this method marking the end of an element within a declared class.
        Throws:
        SAXException
      • reset

        protected void reset()
        Override this method to clear any state and ready the parser for a new document. Subclasses should call super.reset() to clear superclass state.
        Overrides:
        reset in class XMLMetaDataParser
      • currentClassName

        protected String currentClassName()
        Return the current class being parsed; the returned name will be fully qualified.
      • currentPackage

        protected String currentPackage()
        Return the current package being parsed.
      • classForName

        protected Class<?> classForName​(String name,
                                        boolean resolve)
                                 throws SAXException
        Helper method to create the Class for the given name, taking into account the package currently being parsed for relative class names.
        Throws:
        SAXException
      • classForName

        public static Class<?> classForName​(String name,
                                            String pkg,
                                            boolean resolve,
                                            ClassLoader loader)
        Load the given class name against the given package and the set of accepted standard packages. Return null if the class cannot be loaded.