Ernst Bunders wrote: > Hallo > Is there any documentation on the funcions framework?
There is the original hack-proposal: http://www.mail-archive.com/[EMAIL PROTECTED]/msg02819.html With the associated thread. and the javadoc: http://www.mmbase.org/api/org/mmbase/util/functions/package-summary.html I think someone once offered some how-to on how to make a function on e.g. a builder, but I'm not sure what happened with that. Coincidently, there have been some discussion about it here (Kees and me), so I can say a few extra words about it. The function-framework is relatively complete in the 'front-end' E.g. taglib does support it relatively well (See the taglib reference for the several 'function' tags), and there are some function in bridge (e.g. Node#getFunctionValue). On the back-end the framework is a bit sparse, and often a bit hard to understand. The 'NodeFunction' implemetention is available which is currently only a kind of front-end for 'executeFunction' of MMObjectBuilder, and therefore a bit complicated. Daniel has implemented a 'SetFunction' (based on XML's) implementation which was only recently added to MMBase itself. There can be only 6 different implementations: org.mmbase.util.functions.SetFunction org.mmbase.util.functions.NodeFunction org.mmbase.util.functions.NodeManagerFunction org.mmbase.util.functions.ModuleFunction org.mmbase.util.functions.MethodFunction org.mmbase.util.functions.BeanFunction which are not all implemented. Implementations can however be put into 1.7. That is the reason that is 'forward compatibly' was added to 1.7, but actually it will only be a 1.8 feature. The 'SetFunction' is e.g. used by the package tools of Daniel, and a mmbase-functions.jar can be placed to make that work. Probably more documentation will be followed when good implementations for all 6 options are availabe and nice examples are made. If you have specific question, you could ask them here, and the answers would become google-able.. Michiel -- Michiel Meeuwissen mihxil' Mediacentrum 140 H'sum [] () +31 (0)35 6772979 nl_NL eo_XX en_US
