org.mmbase.util.functions
Class ExampleBuilder

Package class diagram package ExampleBuilder
java.lang.Object
  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 />
   </mm:nodelistfunction>
 </mm:listnodes>
 
This is done in the MyNews examples (on the news builder), and example JSP's can be found on /mmexamples/taglib/functions.jsp.

Since:
MMBase-1.7
Version:
$Id: ExampleBuilder.java 45315 2011-02-18 20:23:11Z michiel $
Author:
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
ExampleBuilder()
           
 
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

LISTLATEST_PARAMETERS

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.


SUMFIELDS_PARAMETERS

protected static final Parameter[] SUMFIELDS_PARAMETERS

listLatestFunction

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


sumFieldsFunction

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

Constructor Detail

ExampleBuilder

public ExampleBuilder()


MMBase2 Core 2.0-SNAPSHOT - 2014-09-22T23:08