## org.apache.poi.ss.formula.atp
Class AnalysisToolPak

    java.lang.Object
      org.apache.poi.ss.formula.atp.AnalysisToolPak

All Implemented Interfaces:
  UDFFinder

    public final class AnalysisToolPak

extends java.lang.Object
implements UDFFinder

Author:
  Josh Micich, Petr Udalau - systematized work of add-in libraries and user defined functions.

Field Summary
`static UDFFinder` `instance`

Fields inherited from interface org.apache.poi.ss.formula.udf.UDFFinder
`DEFAULT`

Method Summary
`FreeRefFunction` `findFunction(java.lang.String name)` Returns executor by specified name.
`static java.util.Collection<java.lang.String>` `getNotSupportedFunctionNames()` Returns a collection of ATP function names NOT implemented by POI.
`static java.util.Collection<java.lang.String>` `getSupportedFunctionNames()` Returns a collection of ATP function names implemented by POI.
`static boolean` `isATPFunction(java.lang.String name)`
`static void` `registerFunction(java.lang.String name, FreeRefFunction func)` Register a ATP function in runtime.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### instance

    public static final UDFFinder instance

Method Detail

### findFunction

    public FreeRefFunction findFunction(java.lang.String name)

  Description copied from interface: `UDFFinder`
  Returns executor by specified name. Returns `null` if the function name is unknown.

  Specified by:
    `findFunction` in interface `UDFFinder`
  Parameters:
    `name` - Name of function.
  Returns:
    Function executor.

### isATPFunction

    public static boolean isATPFunction(java.lang.String name)

### getSupportedFunctionNames

    public static java.util.Collection<java.lang.String> getSupportedFunctionNames()

  Returns a collection of ATP function names implemented by POI.

  Returns:
    an array of supported functions
  Since:
    3.8 beta6

### getNotSupportedFunctionNames

    public static java.util.Collection<java.lang.String> getNotSupportedFunctionNames()

  Returns a collection of ATP function names NOT implemented by POI.

  Returns:
    an array of not supported functions
  Since:
    3.8 beta6

### registerFunction

    public static void registerFunction(java.lang.String name,
                                        FreeRefFunction func)

  Register a ATP function in runtime.

  Parameters:
    `name` - the function name
    `func` - the functoin to register
  Throws:
    `java.lang.IllegalArgumentException` - if the function is unknown or already registered.
  Since:
    3.8 beta6

Copyright 2012 The Apache Software Foundation or its licensors, as applicable.