Class GeometryFunctionRegistry

java.lang.Object
org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry

public class GeometryFunctionRegistry extends Object
A registry to manage a collection of GeometryFunctions.
  • Field Details

    • functions

      private List functions
    • sortedFunctions

      private Map sortedFunctions
    • categorizedFunctions

      private DoubleKeyMap categorizedFunctions
    • categorizedGeometryFunctions

      private DoubleKeyMap categorizedGeometryFunctions
    • categorizedScalarFunctions

      private DoubleKeyMap categorizedScalarFunctions
  • Constructor Details

    • GeometryFunctionRegistry

      public GeometryFunctionRegistry()
    • GeometryFunctionRegistry

      public GeometryFunctionRegistry(Class clz)
  • Method Details

    • createTestBuilderRegistry

      public static GeometryFunctionRegistry createTestBuilderRegistry()
    • functionDescriptionHTML

      public static String functionDescriptionHTML(GeometryFunction func)
    • getFunctions

      public List getFunctions()
    • getGeometryFunctions

      public List getGeometryFunctions()
    • hasGeometryResult

      public static boolean hasGeometryResult(GeometryFunction func)
    • getScalarFunctions

      public List getScalarFunctions()
    • add

      public void add(Class geomFuncClass)
      Adds functions for all the static methods in the given class.
      Parameters:
      geomFuncClass -
    • add

      public void add(String geomFuncClassname) throws ClassNotFoundException
      Adds functions for all the static methods in the given class.
      Parameters:
      geomFuncClassname - the name of the class to load and extract functions from
      Throws:
      ClassNotFoundException
    • add

      public void add(Collection funcs)
    • createFunctions

      public List createFunctions(Class functionClass)
      Create GeometryFunctions for all the static methods in the given class
      Parameters:
      functionClass -
      Returns:
      a list of the functions created
    • add

      public void add(GeometryFunction func)
      Adds a function if it does not currently exist in the registry, or replaces the existing one with the same signature.
      Parameters:
      func - a function
    • getCategorizedGeometryFunctions

      public DoubleKeyMap getCategorizedGeometryFunctions()
    • getCategorizedScalarFunctions

      public DoubleKeyMap getCategorizedScalarFunctions()
    • getCategories

      public Collection getCategories()
    • getFunctions

      public Collection getFunctions(String category)
    • find

      public GeometryFunction find(String name, Class[] paramTypes)
      Finds the first function which matches the given signature.
      Parameters:
      name -
      paramTypes -
      Returns:
      a matching function, or null
    • find

      public GeometryFunction find(String name, int argCount)
      Finds the first function which matches the given name and argument count.
      Parameters:
      name -
      Returns:
      a matching function, or null
    • find

      public GeometryFunction find(String name)
      Finds the first function which matches the given name.
      Parameters:
      name -
      Returns:
      a matching function, or null