Class: CallbackChain

obitech-framework/jsx# CallbackChain

new CallbackChain(aCallbacks)

This CallbackChain class is used to hold a list of chained callbacks and it can often be passed instead of a callback. Caveat: This will not chain synchronous functions which expect a return value. It is mainly designed for async calls but you could probably make it chain sync calls by making your synchronous code use the callbacks to pass data back in method arguments and avoid using 'return' to pass back data. Note that the first element (item 0) of the callbacksChain array is at the innermost or deepest nested level, in other words it represents the method to be called first. The code here ensures that you cannot add callback chain objects as elements to the callbacksChain array (that would be too confusing, for me at least) but you can use the addNewCallback() method to add a new callback as the first item in the array (which becomes the first to be called). To use this, the function that is called back should expect to receive a callbackChain as the final argument (if it needs to call a subsequent outer level callback).
Parameters:
Name Type Description
aCallbacks Array.<(jsx.Callback|jsx.CallbackCustom)> an array containing module:obitech-framework/jsx#Callback and/or module:obitech-framework/jsx#CallbackCustom objects (a mixture is OK)