Class GrammarInfoImpl

  • All Implemented Interfaces:
    GrammarInfo

    public class GrammarInfoImpl
    extends Object
    implements GrammarInfo
    Keeps the information about the grammar as a whole. This object is immutable and thread-safe.
    Author:
    Kohsuke KAWAGUCHI
    • Constructor Detail

      • GrammarInfoImpl

        public GrammarInfoImpl​(Map _rootTagMap,
                               Map _defaultImplementationMap,
                               Class _objectFactoryClass)
    • Method Detail

      • getRootElement

        public final Class getRootElement​(String namespaceUri,
                                          String localName)
        Description copied from interface: GrammarInfo
        Creates an instance for the root element.
        Specified by:
        getRootElement in interface GrammarInfo
        Returns:
        null if the given name pair is not recognized.
      • createUnmarshaller

        public final UnmarshallingEventHandler createUnmarshaller​(String namespaceUri,
                                                                  String localName,
                                                                  UnmarshallingContext context)
        Description copied from interface: GrammarInfo
        Creates an unmarshaller that can unmarshal a given element.
        Specified by:
        createUnmarshaller in interface GrammarInfo
        Parameters:
        namespaceUri - The string needs to be interned by the caller for a performance reason.
        localName - The string needs to be interned by the caller for a performance reason.
        Returns:
        null if the given name pair is not recognized.
      • getProbePoints

        public final String[] getProbePoints()
        Description copied from interface: GrammarInfo
        Return the probe points for this GrammarInfo, which are used to detect {namespaceURI,localName} collisions across the GrammarInfo's on the schemaPath. This is a slightly more complex implementation than a simple hashmap, but it is more flexible in supporting additional schema langs.
        Specified by:
        getProbePoints in interface GrammarInfo
      • recognize

        public final boolean recognize​(String nsUri,
                                       String localName)
        Description copied from interface: GrammarInfo
        Returns true if the invocation of the createUnmarshaller method will return a non-null value for the given name pair.
        Specified by:
        recognize in interface GrammarInfo
        Parameters:
        nsUri - The string needs to be interned by the caller for a performance reason.
        localName - The string needs to be interned by the caller for a performance reason.
      • getDefaultImplementation

        public final Class getDefaultImplementation​(Class javaContentInterface)
        Description copied from interface: GrammarInfo
        Gets the default implementation for the given public content interface.
        Specified by:
        getDefaultImplementation in interface GrammarInfo
        Parameters:
        javaContentInterface - the Class object of the public interface.
        Returns:
        null If the interface is not found.
      • getGrammar

        public final com.sun.msv.grammar.Grammar getGrammar()
                                                     throws JAXBException
        Gets the MSV AGM which can be used to validate XML during marshalling/unmarshalling.
        Specified by:
        getGrammar in interface GrammarInfo
        Throws:
        JAXBException