Functions : Restrictions on Use of Custom Functions

Restrictions on Use of Custom Functions
Note the following restrictions that pertain to using custom functions.
Static and Non-Static Functions
Custom functions must be written in Java and have public static modifiers.
As a workaround, encapsulate a non-static function in a static function and compile the encapsulating class to get the .class file.
Return Types
BusinessEvents custom functions support the following return types:
Java types supported are: Object, String, Calendar (which displays in BusinessEvents as DateTime), Integer, Long, Double, Boolean, int, long, double, and boolean (but not byte, short, float, or char).
Name Overloading
The functions.catalog file makes functions available for use in BusinessEvents Studio. The structure of the file requires each function within a class to have a unique name. Because of this structure, you cannot refer to an overloaded function in functions.catalog.
For example, the standard Java library has several String.valueOf() functions overloaded for each primitive type (String.valueOf(int i), String.valueOf(double d) and so on). However, the BusinessEvents standard function catalog has a separate function name for each data type: valueOfBoolean(), valueOfDouble(), valueOfInt(), and valueOfLong().
See Structure of a Function Catalog, for more about the functions.catalog file.
Editing Custom Functions
If you need to edit custom functions, you must do so in a Java editor or project, and then re-export them to a custom function JAR. Add the JAR to the BusinessEvents project, as explained in Adding Custom Functions.