org.bee.processor
Class Operator

java.lang.Object
  extended by org.xml.sax.helpers.DefaultHandler
      extended by org.bee.processor.AbstractValue
          extended by org.bee.processor.AbstractBlock
              extended by org.bee.processor.Operator
All Implemented Interfaces:
Instruction, org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler

public class Operator
extends AbstractBlock


Nested Class Summary
 
Nested classes/interfaces inherited from class org.bee.processor.AbstractValue
AbstractValue.Type
 
Nested classes/interfaces inherited from interface org.bee.processor.Instruction
Instruction.NameSpace
 
Field Summary
protected  java.lang.reflect.Method method
           
protected  java.util.List<AbstractValue> operands
           
 
Fields inherited from class org.bee.processor.AbstractBlock
dir, nameSpace
 
Fields inherited from class org.bee.processor.AbstractValue
locator, name, parent, type, TYPE_RESERVED, TYPE_SHORTCUTS, value, valueBuffer, variable, xpath
 
Fields inherited from interface org.bee.processor.Instruction
ATTR_CODE, ATTR_COMMENT, ATTR_DIR, ATTR_ERROUT, ATTR_ERROUT_STREAM, ATTR_EXEC, ATTR_IN, ATTR_NAME, ATTR_OPTIONS, ATTR_PATH, ATTR_PROCESSONLY, ATTR_PROPERTY, ATTR_SEPARATOR, ATTR_STDIN, ATTR_STDOUT, ATTR_STDOUT_STREAM, ATTR_TARGET, ATTR_TYPE, ATTR_URL, ATTR_VALUE, ATTR_VARIABLE, RESERVE_BUILD_FILE, RESERVE_CLASS_LIB, RESERVE_NAME_ARGS, RESERVE_NAME_DIR, RESERVE_NAME_ERROR, RESERVE_NAME_EXCEPTION, RESERVE_OPTION_NOINPUT, TYPE_BOOL, TYPE_DATE, TYPE_DIRECTORY, TYPE_FILE, TYPE_NUMBER, TYPE_URL, TYPE_VARIABLE
 
Constructor Summary
Operator(java.lang.String xpath)
           
 
Method Summary
 void childDone(Instruction child)
          Child notifies a parent that evaluation done, and a parent can use it for own evaluation
protected  InfoHolder doOperator(InfoHolder result, InfoHolder operand)
           
 InfoHolder eval()
          Returns value of instruction
static java.lang.Class findOperatorClass(java.lang.String name)
           
static java.lang.reflect.Method getMethod(java.lang.Class classof, java.lang.String name)
           
 void startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes attributes)
           
 
Methods inherited from class org.bee.processor.AbstractBlock
clearNameSpace, getAllowedAttributeNames, getName, getNameSpace
 
Methods inherited from class org.bee.processor.AbstractValue
characters, endElement, getHandler, getParent, getPath, ignorableWhitespace, lookupInChain, lookupNameSpace, lookupOnTop, lookupStringValue, makeFile, setDocumentLocator, setParent, traceInChain, updateInNameSpace, verifyAttributes
 
Methods inherited from class org.xml.sax.helpers.DefaultHandler
endDocument, endPrefixMapping, error, fatalError, notationDecl, processingInstruction, resolveEntity, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

method

protected java.lang.reflect.Method method

operands

protected java.util.List<AbstractValue> operands
Constructor Detail

Operator

public Operator(java.lang.String xpath)
Method Detail

eval

public InfoHolder eval()
Description copied from interface: Instruction
Returns value of instruction

Returns:
InfoHolder

childDone

public void childDone(Instruction child)
Description copied from interface: Instruction
Child notifies a parent that evaluation done, and a parent can use it for own evaluation

Specified by:
childDone in interface Instruction
Overrides:
childDone in class AbstractValue

doOperator

protected InfoHolder doOperator(InfoHolder result,
                                InfoHolder operand)

findOperatorClass

public static java.lang.Class findOperatorClass(java.lang.String name)

getMethod

public static java.lang.reflect.Method getMethod(java.lang.Class classof,
                                                 java.lang.String name)

startElement

public void startElement(java.lang.String uri,
                         java.lang.String localName,
                         java.lang.String qName,
                         org.xml.sax.Attributes attributes)
                  throws org.xml.sax.SAXException
Specified by:
startElement in interface org.xml.sax.ContentHandler
Overrides:
startElement in class AbstractBlock
Throws:
org.xml.sax.SAXException