Registering your packages of custom functions with the Function Call Manager

Use the FunctionCallManager method registerFunctionCall in the function call constructor to register each of your custom functions and corresponding package(s) with the Function Call Manager.
  • The FCI allows you to assign a version number to each function that you create. This allows you to provide upgrades to single functions in extensions you have already distributed to users. For more information see the next section.
  • When registering your package(s) of functions with the Function Call Manager, be aware of the API package naming conventions. For more information see the next section.
  • You must register each of your custom functions separately. So, if you are registering three functions with the Function Call Manager, you must call registerFunctionCall three times.
  • In the following example, the FciFunctionCall constructor uses the registerFunctionCall method to register the convertDate function with the Function Call Manager:
    
          public FciFunctionCall(IFX IFXMan) throws UWIException
          {
          FunctionCallManager theFCM;
             if ((theFCM = IFSSingleton.getFunctionCallManager()) == null) 
                throw new UWIException("Needed Function Call Manager");
             IFXMan.registerInterface(this, 
                FunctionCall.FUNCTIONCALL_INTERFACE_NAME,
                FunctionCall.FUNCTIONCALL_CURRENT_VERSION,
                FunctionCall.FUNCTIONCALL_MIN_VERSION_SUPPORTED, 
                0x01000300, 0, null, theFCM.getDefaultListener( ));
             theFCM.registerFunctionCall(this, "sample_package", 
                "convertDate", FciFunctionCall.CONVERTDATE,
                FunctionCall.FCI_FOLLOWS_STRICT_CALLING_PARAMETERS,
                "S,S", 0x01000300, "Converts a date to a different 
                locale");
          }
    
  • Note that the "S,S" parameter in the registerFunctionCall method represents two mandatory strings that you must provide.