UIX 2.2.16

oracle.cabo.share.xml
Class ParserManager

java.lang.Object
  |
  +--oracle.cabo.share.xml.ParserManager
All Implemented Interfaces:
java.lang.Cloneable

public class ParserManager
extends java.lang.Object
implements java.lang.Cloneable

ParserManager maintains a table of ParserFactories, keyed by return-type Class. Clients can use a single ParserManager, or create their own. By default, none of the ParserManagers have any registered ParserFactories.


Constructor Summary
ParserManager()
          Creates a new, empty ParserManager.
 
Method Summary
 java.lang.Object clone()
          Makes a deep copy of the ParserManager.
static ParserManager getDefaultParserManager()
          Returns a globally shared instance of ParserManager.
 ExpressionParser getExpressionParser(java.lang.String name)
          gets a registered ExpressionParser with the given name.
 ParserExtension getExtension(java.lang.String namespaceURI)
          Gets the extension registered for the namespace.
 ParserFactory getFactory(java.lang.Class expectedType, java.lang.String namespaceURI)
          Gets the factory registered for the namespace.
 Function getFunction(java.lang.String namespace, java.lang.String name)
          gets a method for the given QName
 NodeParser getParser(ParseContext context, java.lang.Class expectedType, java.lang.String namespaceURI, java.lang.String localName)
          Utility method for retrieving a NodeParser.
 void registerExpressionParser(ExpressionParser bindingParser)
          registers a binding parser.
 void registerExtension(java.lang.String namespaceURI, ParserExtension extension)
          Registers an extension for a namespace.
 void registerFactory(java.lang.Class expectedType, java.lang.String namespaceURI, ParserFactory factory)
          Registers a factory for a type and namespace.
 void registerFunction(java.lang.String namespace, java.lang.String name, Function method)
          registers a method for a given QName
 void registerNamespaceAlias(java.lang.String mainNamespaceURI, java.lang.String aliasURI)
          Registers a namespace alias, used for backwards compatibility.
 java.lang.String resolveNamespaceAlias(java.lang.String namespaceURI)
           
 void setDefaultExpressionParser(ExpressionParser parser)
          sets the default bindingParser
 void unregisterExtension(java.lang.String namespaceURI)
          Unregisters an extension for a namespace.
 void unregisterFactory(java.lang.Class expectedType, java.lang.String namespaceURI)
          Unregisters a factory for a type and namespace.
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ParserManager

public ParserManager()
Creates a new, empty ParserManager.
Method Detail

getDefaultParserManager

public static ParserManager getDefaultParserManager()
Returns a globally shared instance of ParserManager.

getParser

public final NodeParser getParser(ParseContext context,
                                  java.lang.Class expectedType,
                                  java.lang.String namespaceURI,
                                  java.lang.String localName)
Utility method for retrieving a NodeParser.

getFactory

public ParserFactory getFactory(java.lang.Class expectedType,
                                java.lang.String namespaceURI)
Gets the factory registered for the namespace.

registerFactory

public void registerFactory(java.lang.Class expectedType,
                            java.lang.String namespaceURI,
                            ParserFactory factory)
Registers a factory for a type and namespace.

unregisterFactory

public void unregisterFactory(java.lang.Class expectedType,
                              java.lang.String namespaceURI)
Unregisters a factory for a type and namespace.

getExtension

public ParserExtension getExtension(java.lang.String namespaceURI)
Gets the extension registered for the namespace.

registerExtension

public void registerExtension(java.lang.String namespaceURI,
                              ParserExtension extension)
Registers an extension for a namespace.

unregisterExtension

public void unregisterExtension(java.lang.String namespaceURI)
Unregisters an extension for a namespace.

registerNamespaceAlias

public void registerNamespaceAlias(java.lang.String mainNamespaceURI,
                                   java.lang.String aliasURI)
Registers a namespace alias, used for backwards compatibility. Note that this (mostly) only affects the finding of parser factories and extensions - the NodeParser will still see the old namespace. This method also affects ParseContext.getNamespaceURI().

resolveNamespaceAlias

public java.lang.String resolveNamespaceAlias(java.lang.String namespaceURI)

getExpressionParser

public final ExpressionParser getExpressionParser(java.lang.String name)
gets a registered ExpressionParser with the given name.
Parameters:
name - the name of the ExpressionParser. If this is null, the default ExpressionParser will be returned.
See Also:
registerExpressionParser(oracle.cabo.share.expl.ExpressionParser), setDefaultExpressionParser(oracle.cabo.share.expl.ExpressionParser)

registerExpressionParser

public final void registerExpressionParser(ExpressionParser bindingParser)
registers a binding parser. the parser is registered under its name.

setDefaultExpressionParser

public final void setDefaultExpressionParser(ExpressionParser parser)
sets the default bindingParser

getFunction

public final Function getFunction(java.lang.String namespace,
                                  java.lang.String name)
gets a method for the given QName

registerFunction

public final void registerFunction(java.lang.String namespace,
                                   java.lang.String name,
                                   Function method)
registers a method for a given QName
See Also:
XMLUtils.registerFunctions(oracle.cabo.share.xml.ParserManager, java.lang.String, java.lang.Class)

clone

public java.lang.Object clone()
Makes a deep copy of the ParserManager.
Overrides:
clone in class java.lang.Object

UIX 2.2.16