Package com.icl.saxon
Class RuleManager
- java.lang.Object
-
- com.icl.saxon.RuleManager
-
public class RuleManager extends java.lang.Object
RuleManager maintains a set of template rules, one set for each mode- Version:
- 10 December 1999: carved out of the old Controller class
- Author:
- Michael H. Kay
-
-
Constructor Summary
Constructors Constructor Description RuleManager(NamePool pool)
create a RuleManager and initialise variables
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Enumeration
getAllModes()
Get a list of all registered modesNodeHandler
getHandler(NodeInfo node, Context c)
Find the handler registered for a particular node in default mode.NodeHandler
getHandler(NodeInfo node, Mode mode, int min, int max, Context c)
Get a handler whose import precedence is in a particular range.NodeHandler
getHandler(NodeInfo node, Mode mode, Context c)
Find the handler registered for a particular node in a specific mode.Mode
getMode(int modeNameCode)
Get the Mode object for a named mode.StandaloneContext
getStandaloneContext()
Get the standalone context for XPath expressions and patterns.void
resetHandlers()
Set up a new table of handlers.void
setHandler(Pattern pattern, NodeHandler eh, Mode mode, int precedence)
Register a handler for a particular pattern.void
setHandler(Pattern pattern, NodeHandler eh, Mode mode, int precedence, double priority)
Register a handler for a particular pattern.void
setHandler(java.lang.String pattern, NodeHandler eh)
Register a handler for a particular pattern.void
setStandaloneContext(StandaloneContext context)
Set the standalone context for XPath expressions and patterns.
-
-
-
Constructor Detail
-
RuleManager
public RuleManager(NamePool pool)
create a RuleManager and initialise variables
-
-
Method Detail
-
setStandaloneContext
public void setStandaloneContext(StandaloneContext context)
Set the standalone context for XPath expressions and patterns. This is used only for expressions and patterns occurring outside the context of a stylesheet.
-
getStandaloneContext
public StandaloneContext getStandaloneContext()
Get the standalone context for XPath expressions and patterns. This is used only for expressions and patterns occurring outside the context of a stylesheet.- Returns:
- the StandaloneContext associated with this RuleManager. Creates a new one if none has been set explicitly.
-
resetHandlers
public void resetHandlers()
Set up a new table of handlers.
-
getMode
public Mode getMode(int modeNameCode)
Get the Mode object for a named mode. If there is not one already registered. a new Mode is created.- Parameters:
modeNameCode
- The name code of the mode. Supply -1 to get the default mode.
-
setHandler
public void setHandler(java.lang.String pattern, NodeHandler eh) throws XPathException
Register a handler for a particular pattern. This is a convenience interface that calls setHandler(pattern, eh, mode, precedence) with default mode and precedence.- Parameters:
pattern
- A match patterneh
- The NodeHandler to be used- Throws:
XPathException
- See Also:
NodeHandler
,Pattern
-
setHandler
public void setHandler(Pattern pattern, NodeHandler eh, Mode mode, int precedence)
Register a handler for a particular pattern. The priority of the rule is the default priority for the pattern, which depends on the syntax of the pattern suppllied.- Parameters:
pattern
- A match patterneh
- The ElementHandler to be usedmode
- The processing modeprecedence
- The import precedence (use 0 by default)
-
setHandler
public void setHandler(Pattern pattern, NodeHandler eh, Mode mode, int precedence, double priority)
Register a handler for a particular pattern.- Parameters:
pattern
- Must be a valid Pattern.eh
- The ElementHandler to be usedmode
- The processing mode to which this element handler appliesprecedence
- The import precedence of this rulepriority
- The priority of the rule: if an element matches several patterns, the one with highest priority is used- See Also:
NodeHandler
,Pattern
-
getHandler
public NodeHandler getHandler(NodeInfo node, Context c) throws javax.xml.transform.TransformerException
Find the handler registered for a particular node in default mode.- Parameters:
node
- The NodeInfo for the relevant node- Returns:
- The handler that will process this node. Returns the default handler for the type of node if there is no specific one registered.
- Throws:
javax.xml.transform.TransformerException
-
getHandler
public NodeHandler getHandler(NodeInfo node, Mode mode, Context c) throws javax.xml.transform.TransformerException
Find the handler registered for a particular node in a specific mode.- Parameters:
node
- The NodeInfo for the relevant nodemode
- The processing mode- Returns:
- The handler that will process this node Returns null if there is no specific handler registered.
- Throws:
javax.xml.transform.TransformerException
-
getHandler
public NodeHandler getHandler(NodeInfo node, Mode mode, int min, int max, Context c) throws XPathException
Get a handler whose import precedence is in a particular range. This is used to support the xsl:apply-imports function- Throws:
XPathException
-
getAllModes
public java.util.Enumeration getAllModes()
Get a list of all registered modes- Returns:
- an Enumeration of all modes in use, excluding the default (unnamed) mode
-
-