net.sf.joost.instruction
Class ChooseFactory.Instance

java.lang.Object
  extended by net.sf.joost.instruction.AbstractInstruction
      extended by net.sf.joost.instruction.NodeBase
          extended by net.sf.joost.instruction.ChooseFactory.Instance
All Implemented Interfaces:
Cloneable, Constants
Enclosing class:
ChooseFactory

public final class ChooseFactory.Instance
extends NodeBase

Represents an instance of the choose element.


Nested Class Summary
 
Nested classes/interfaces inherited from class net.sf.joost.instruction.NodeBase
NodeBase.End
 
Field Summary
private  boolean otherwisePresent
           
 
Fields inherited from class net.sf.joost.instruction.NodeBase
lastChild, localFieldStack, nodeEnd, parent, preserveSpace, publicId, qName, scopedVariables, systemId
 
Fields inherited from class net.sf.joost.instruction.AbstractInstruction
colNo, lineNo, next
 
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
 
Constructor Summary
protected ChooseFactory.Instance(String qName, NodeBase parent, ParseContext context)
           
 
Method Summary
 boolean compile(int pass, ParseContext context)
          Check if there is at least one child.
 void insert(NodeBase node)
          Ensures that only stx:when and stx:otherwise children will be inserted.
 
Methods inherited from class net.sf.joost.instruction.NodeBase
declareVariable, getNode, getNodeEnd, mayDropEnd, onDeepCopy, process, processable, processEnd, setEndLocation, toString
 
Methods inherited from class net.sf.joost.instruction.AbstractInstruction
deepCopy, deepHashtableCopy, deepTemplateArrayCopy
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

otherwisePresent

private boolean otherwisePresent
Constructor Detail

ChooseFactory.Instance

protected ChooseFactory.Instance(String qName,
                                 NodeBase parent,
                                 ParseContext context)
Method Detail

insert

public void insert(NodeBase node)
            throws SAXParseException
Ensures that only stx:when and stx:otherwise 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 child.

Overrides:
compile in class NodeBase
Parameters:
pass - the number of invocations already performed on this node
context - 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