net.sf.joost.instruction
Class AnalyzeTextFactory.Instance
java.lang.Object
net.sf.joost.instruction.AbstractInstruction
net.sf.joost.instruction.NodeBase
net.sf.joost.instruction.AnalyzeTextFactory.Instance
- All Implemented Interfaces:
- Cloneable, Constants
- Enclosing class:
- AnalyzeTextFactory
public final class AnalyzeTextFactory.Instance
- extends NodeBase
Represents an instance of the analyze-text
element.
Fields inherited from interface net.sf.joost.Constants |
DEBUG, DEFAULT_ENCODING, FEAT_NS, FEAT_NSPREFIX, FEATURE_URI_PREFIX, FUNC_NS, JOOST_EXT_NS, PR_ATTRIBUTES, PR_BUFFER, PR_CHILDREN, PR_CONTINUE, PR_ERROR, PR_SELF, PR_SIBLINGS, STX_NS |
Method Summary |
boolean |
compile(int pass,
ParseContext context)
Check if there is at least one stx:match child
and establish a loop |
void |
insert(NodeBase node)
Ensures that only stx:match or stx:no-match
children will be inserted. |
protected void |
onDeepCopy(AbstractInstruction copy,
HashMap copies)
Callback that will be called when a clone of this instance has been
created. |
short |
process(Context context)
Evaluate the expression given in the select attribute;
find and process the child with the matching regular expression |
short |
processEnd(Context context)
Called when the end tag will be processed. |
select
private Tree select
successor
private AbstractInstruction successor
mVector
private Vector mVector
matchChildren
private MatchFactory.Instance[] matchChildren
noMatchChild
private NodeBase noMatchChild
continued
private boolean continued
capSubstr
protected String[] capSubstr
- For the regex-group function (accessed from the stx:match and
stx:no-match children, so they cannot be private)
- See Also:
RegexGroup
noMatchStr
protected String[] noMatchStr
- For the regex-group function (accessed from the stx:match and
stx:no-match children, so they cannot be private)
- See Also:
RegexGroup
AnalyzeTextFactory.Instance
protected AnalyzeTextFactory.Instance(String qName,
NodeBase parent,
ParseContext context,
Tree select)
insert
public void insert(NodeBase node)
throws SAXParseException
- Ensures that only
stx:match
or stx:no-match
children will be inserted.
- Overrides:
insert
in class NodeBase
- Parameters:
node
- the node to be inserted
- Throws:
SAXParseException
compile
public boolean compile(int pass,
ParseContext context)
throws SAXParseException
- Check if there is at least one
stx:match
child
and establish a loop
- Overrides:
compile
in class NodeBase
- Parameters:
pass
- the number of invocations already performed on this nodecontext
- the parse context
- Returns:
true
if another invocation in the next pass is
necessary, false
if the compiling is complete.
This instance returns false
.
- Throws:
SAXParseException
process
public short process(Context context)
throws SAXException
- Evaluate the expression given in the
select
attribute;
find and process the child with the matching regular expression
- Overrides:
process
in class NodeBase
- Parameters:
context
- the current context
- Returns:
Constants.PR_CONTINUE
- Throws:
SAXException
- if an error occurs (in a derived class)
processEnd
public short processEnd(Context context)
throws SAXException
- Description copied from class:
NodeBase
- Called when the end tag will be processed. This instance removes
local variables declared in this node.
- Overrides:
processEnd
in class NodeBase
- Parameters:
context
- the current context
- Returns:
Constants.PR_CONTINUE
- Throws:
SAXException
- if an error occurs (in a derived class)
onDeepCopy
protected void onDeepCopy(AbstractInstruction copy,
HashMap copies)
- Description copied from class:
AbstractInstruction
- Callback that will be called when a clone of this instance has been
created. To be overridden in subclasses.
- Overrides:
onDeepCopy
in class NodeBase
- Parameters:
copy
- the created clonescopies
- the map of already copied objects