Interface FunctionFramework

All Superinterfaces:
Identified

public interface FunctionFramework extends Identified

Defines a framework for building functions, e.g. Jython, Python, Classifier, etc.

Currently this only handles functions that are specified inline in the INI file, e.g. [function foo]

  • Field Details

    • DEFAULT_PRIORITY

      static final int DEFAULT_PRIORITY

      The most neutral of priorities

      See Also:
  • Method Details

    • canBuild

      boolean canBuild(Project project, Map<String,List<?>> unbound)
      Returns:
      true if this is framework can build a function from the given INI definition.
    • getParameterSet

      ParameterSet getParameterSet()

      Returns a set of parameters that are used to define the function and its metadata.

    • build

      Builds a function from an INI file section.

      Parameters:
      id - The function's name
      values - The INI section's values, bound against getParameterSet().
    • getPriority

      default int getPriority()
      Returns:
      an integer value to use to sort FunctionFrameworks when multiple frameworks canBuild a function. Functions are sorted in descending order, so that a framework with a higher priority value will be used in preference to a framework with a lower priority value, i.e. priority 10 gets used ahead of priority 0.