Class ExampleBuilder

Package class diagram package ExampleBuilder
  extended by org.mmbase.util.functions.FunctionProvider
      extended by org.mmbase.module.core.MMTable
          extended by org.mmbase.module.core.MMObjectBuilder
              extended by org.mmbase.util.functions.ExampleBuilder
All Implemented Interfaces:
EventListener, NodeEventListener, RelationEventListener

public class ExampleBuilder
extends MMObjectBuilder

Example builder implementation implementing functions. Lots of people are sooner or earlier trying to make their own builder implementation. Especially whith the advent the 'function' tags in 1.7 it would be nice that people could seen an example of how that could be done. To try it out, take a builder xml and add <classfile>org.mmbase.util.functions.ExampleBuilder</classfile> and e.g. a jsp like this:

 <mm:listnodes type="pools" max="1">
  < mm:import id="max">100</mm:import>
   <mm:nodelistfunction referids="max" name="latest">
    -- <mm:field name="number" /><br />
This is done in the MyNews examples (on the news builder), and example JSP's can be found on /mmexamples/taglib/functions.jsp.

$Id: 45315 2011-02-18 20:23:11Z michiel $
Michiel Meeuwissen
See Also:
For examples on hot to add functions to a builder without extending it.

Field Summary
protected static Parameter[] LISTLATEST_PARAMETERS
          Parameter constant for use bij the 'latest' function.
protected  Function<NodeList> listLatestFunction
          Implementation of 'builder function', which can be compared with a static method in java.
protected static Parameter[] SUMFIELDS_PARAMETERS
protected  Function<Integer> sumFieldsFunction
          Implementation of 'node function', which can be compared with a instance method in java.
Fields inherited from class org.mmbase.module.core.MMObjectBuilder
AGE_PARAMETERS, broadCastChanges, DEFAULT_ALINEA, DEFAULT_EOL, description, descriptions, EVENT_TYPE_LOCAL, EVENT_TYPE_REMOTE, FIELD_NUMBER, FIELD_OBJECT_TYPE, FIELD_OWNER, fields, genericBlobCache, getFunctionsFunction, GUI_INDICATOR, GUI_PARAMETERS, guiFunction, infoFunction, internalVersion, nodeCache, oType, pluralNames, searchAge, singularNames, SYSTEM_OWNER, TEMPNODE_DEFAULT_SIZE, TMP_FIELD_EXISTS, TMP_FIELD_NUMBER, virtual, WRAP_PARAMETERS, wrapFunction
Fields inherited from class org.mmbase.module.core.MMTable
maxNodesFromQuery, mmb, storageConnector, tableName
Fields inherited from class org.mmbase.util.functions.FunctionProvider
functions, getFunctions
Constructor Summary
Method Summary
Methods inherited from class org.mmbase.module.core.MMObjectBuilder
addEventListener, addField, addLocalObserver, addRemoteObserver, broadcastChanges, checkAddTmpField, clearBlobCache, commit, create, createAlias, createAlias, createIfNotExists, delete, equals, equals, executeFunction, executeFunction, fieldLocalChanged, getAncestors, getBlobCache, getClassName, getConfigFile, getConfigResource, getDataTypeCollector, getDBState, getDBType, getDefaultTeaser, getDefaultUrl, getDescendants, getDescription, getDescription, getDescriptions, getEmptyNode, getField, getFieldNames, getFields, getFields, getFunction, getFunctionParameters, getFunctions, getGUIIndicator, getGUIIndicator, getGUIIndicator, getHTML, getInitParameter, getInitParameters, getInitParameters, getInternalVersion, getList, getLocaleGUIIndicator, getLocaleGUIIndicator, getMachineName, getMaintainer, getNewNode, getNewTmpNode, getNextField, getNextField, getNode, getNode, getNode, getNodeFromCache, getNodeGUIIndicator, getNumber, getObjectType, getObjectValue, getParentBuilder, getPluralName, getPluralName, getPluralNames, getRelations_main, getSearchAge, getShort, getShortedByte, getShortedInputStream, getShortedText, getSingularName, getSingularName, getSingularNames, getSmartPath, getTmpNode, getURLEncode, getValue, getVersion, getWAP, getXMLPath, hasField, hashCode, hashCode, hostname_function, init, insert, insert, isExtensionOf, isNodeCached, isNull, isVirtual, loadInitParameters, newFunctionInstance, nodeLocalChanged, nodeRemoteChanged, notify, notify, preCommit, process, removeEventListener, removeField, removeLocalObserver, removeNode, removeRelations, removeRemoteObserver, removeSyncNodes, replace, safeCache, sendFieldChangeSignal, setDefaults, setDescription, setDescriptions, setFields, setInitParameter, setMaintainer, setPluralNames, setSearchAge, setSingularNames, setUniqueValue, setUniqueValue, setValue, setValue, setVersion, setXMLPath, shutdown, testValidData, toString, toString, update, updateFields, wrap
Methods inherited from class org.mmbase.module.core.MMTable
count, count, created, getFullTableName, getMMBase, getNode, getNodes, getNodes, getNodes, getNodeType, getStorageConnector, getTableName, search, searchVector, setMMBase, setTableName, size
Methods inherited from class org.mmbase.util.functions.FunctionProvider
, addFunction, createParameters, getFunction, getFunctions, getFunctionValue
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait

Field Detail


protected static final Parameter[] LISTLATEST_PARAMETERS
Parameter constant for use bij the 'latest' function. This constant must be protected, otherwise it is pickup up by the automatich function detection.


protected static final Parameter[] SUMFIELDS_PARAMETERS


protected final Function<NodeList> listLatestFunction
Implementation of 'builder function', which can be compared with a static method in java.


protected final Function<Integer> sumFieldsFunction
Implementation of 'node function', which can be compared with a instance method in java.

Constructor Detail


public ExampleBuilder()

MMBase2 Core 2.0-SNAPSHOT - 2013-11-29T11:08