org.mmbase.util.functions
Class Function

java.lang.Object
  extended byorg.mmbase.util.functions.Function
Direct Known Subclasses:
MethodFunction, NodeFunction

public abstract class Function
extends java.lang.Object

An abstract representation of a piece of functionality (a 'function'). A function has a name, a return type, and a parameter-definition (which is a Parameter array).

Since:
MMBase-1.7
Version:
$Id: Function.java,v 1.2 2004/03/05 12:34:46 michiel Exp $
Author:
Daniel Ockeloen, Michiel Meeuwissen
See Also:
Parameter, Parameters

Field Summary
protected  java.lang.String name
           
protected  ReturnType returnType
           
 
Constructor Summary
protected Function(java.lang.String name, Parameter[] def, ReturnType returnType)
           
 
Method Summary
 java.lang.String getDescription()
           
abstract  java.lang.Object getFunctionValue(Parameters arguments)
          Executes the defined function supplying the given arguments.
 java.lang.String getName()
           
 Parameters getNewParameters()
          Creates an empty 'Parameters' object for you, which you have to fill and feed back to getFunctionValue
 Parameter[] getParameterDefinition()
           
 ReturnType getReturnType()
           
 void setDescription(java.lang.String description)
           
 void setParameterDefinition(Parameter[] params)
           
 void setReturnType(ReturnType type)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

name

protected java.lang.String name

returnType

protected ReturnType returnType
Constructor Detail

Function

protected Function(java.lang.String name,
                   Parameter[] def,
                   ReturnType returnType)
Method Detail

getNewParameters

public Parameters getNewParameters()
Creates an empty 'Parameters' object for you, which you have to fill and feed back to getFunctionValue

See Also:
getFunctionValue(org.mmbase.util.functions.Parameters)

getFunctionValue

public abstract java.lang.Object getFunctionValue(Parameters arguments)
Executes the defined function supplying the given arguments.

See Also:
getNewParameters()

setDescription

public void setDescription(java.lang.String description)

getDescription

public java.lang.String getDescription()

getName

public java.lang.String getName()

getParameterDefinition

public Parameter[] getParameterDefinition()

setParameterDefinition

public void setParameterDefinition(Parameter[] params)

getReturnType

public ReturnType getReturnType()

setReturnType

public void setReturnType(ReturnType type)


MMBase build 1.7.1.20041002