public class Mode extends Object implements Serializable
Modifier and Type | Class and Description |
---|---|
static class |
Mode.Rule
Inner class Rule used to support the implementation
|
Modifier and Type | Field and Description |
---|---|
static int |
ALL_MODES |
static int |
DEFAULT_MODE |
static int |
NAMED_MODE |
static int |
STRIPPER_MODE |
Constructor and Description |
---|
Mode(int usage)
Default constructor - creates a Mode containing no rules
|
Mode(Mode omniMode)
Construct a new Mode, copying the contents of an existing Mode
|
Modifier and Type | Method and Description |
---|---|
void |
addRule(Pattern p,
Object obj,
int precedence,
double priority)
Add a rule to the Mode.
|
int |
getList(int fingerprint,
int type)
Determine which list to use for a given pattern (we must also search the generic list)
|
Object |
getNextMatchRule(NodeInfo node,
Object currentHandler,
XPathContext context)
Get the rule corresponding to a given Node, by finding the next-best Pattern match
after the specified object.
|
Object |
getRule(NodeInfo node,
int min,
int max,
XPathContext context)
Get the rule corresponding to a given Node, by finding the best Pattern match, subject to a minimum
and maximum precedence.
|
Object |
getRule(NodeInfo node,
XPathContext context)
Get the rule corresponding to a given Node, by finding the best Pattern match.
|
boolean |
isDefaultMode()
Determine if this is the default mode
|
public static final int DEFAULT_MODE
public static final int ALL_MODES
public static final int NAMED_MODE
public static final int STRIPPER_MODE
public Mode(int usage)
usage
- one of DEFAULT_MODE
, NAMED_MODE
, STRIPPER_MODE
public Mode(Mode omniMode)
omniMode
- the existing mode. May be null, in which case it is not copiedpublic boolean isDefaultMode()
public void addRule(Pattern p, Object obj, int precedence, double priority)
p
- a Patternobj
- the Object to return from getRule() when the supplied node matches this Patternprecedence
- the import precedence of the rulepriority
- the explicit or implicit priority of the rulepublic int getList(int fingerprint, int type)
public Object getRule(NodeInfo node, XPathContext context) throws XPathException
node
- the NodeInfo referring to the node to be matchedXPathException
public Object getRule(NodeInfo node, int min, int max, XPathContext context) throws XPathException
node
- the NodeInfo referring to the node to be matchedXPathException
public Object getNextMatchRule(NodeInfo node, Object currentHandler, XPathContext context) throws XPathException
node
- the NodeInfo referring to the node to be matchedXPathException