Class FunctionNameImpl

Object
OperatorImpl
FunctionNameImpl
All Implemented Interfaces:
FunctionName, Operator

public class FunctionNameImpl extends OperatorImpl implements FunctionName
Implementation of the FunctionName interface.
Author:
Justin Deoliveira, The Open Planning Project
  • Constructor Details

    • FunctionNameImpl

      public FunctionNameImpl(String name, int argumentCount)
    • FunctionNameImpl

      public FunctionNameImpl(Name name, int argumentCount)
    • FunctionNameImpl

      public FunctionNameImpl(String name, String... argumentsNames)
    • FunctionNameImpl

      public FunctionNameImpl(Name name, String... argumentsNames)
    • FunctionNameImpl

      public FunctionNameImpl(String name, List<String> argumentsNames)
    • FunctionNameImpl

      public FunctionNameImpl(Name name, List<String> argumentsNames)
    • FunctionNameImpl

      public FunctionNameImpl(String name, int argumentCount, List<String> argumentsNames)
    • FunctionNameImpl

      public FunctionNameImpl(Name name, int argumentCount, List<String> argumentsNames)
    • FunctionNameImpl

      public FunctionNameImpl(String name, int argumentCount, String... argumentsNames)
    • FunctionNameImpl

      public FunctionNameImpl(Name name, int argumentCount, String... argumentsNames)
    • FunctionNameImpl

      public FunctionNameImpl(FunctionName copy)
    • FunctionNameImpl

      public FunctionNameImpl(String name, Class<?> returnType, Parameter<?>... arguments)
    • FunctionNameImpl

      public FunctionNameImpl(Name name, Class<?> returnType, Parameter<?>... arguments)
    • FunctionNameImpl

      public FunctionNameImpl(String name, Parameter<?> retern, Parameter<?>... arguments)
    • FunctionNameImpl

      public FunctionNameImpl(Name name, Parameter<?> retern, Parameter<?>... arguments)
    • FunctionNameImpl

      public FunctionNameImpl(String name, Parameter<?> retern, List<Parameter<?>> arguments)
    • FunctionNameImpl

      public FunctionNameImpl(Name name, Parameter<?> retern, List<Parameter<?>> arguments)
  • Method Details

    • getFunctionName

      public Name getFunctionName()
      Description copied from interface: FunctionName
      The qualified name of the function.

      Client code should this method over Operator.getName() to handle qualified names.

      Specified by:
      getFunctionName in interface FunctionName
    • getName

      public String getName()
      Description copied from interface: Operator
      Name of supported Operator.

      Each filter subclass has an associated name (such as BBOX or EqualsTo), you can use this name to determine if a matching Operator is defined as part of FilterCapabilities.

      Specified by:
      getName in interface Operator
      Overrides:
      getName in class OperatorImpl
    • getArgumentCount

      public int getArgumentCount()
      Description copied from interface: FunctionName
      Number of arguments the function accepts.

      • Use a positive number to indicate the number of arguments. Example: add( number1, number2 ) = 2
      • Use a negative number to indicate a minimum number: Example: concat( str1, str2,... ) has -2
       <xsd:attribute name="nArgs" type="xsd:string" use="required"/>
       

      This value is derived from FunctionName.getArguments()

      Specified by:
      getArgumentCount in interface FunctionName
    • getArguments

      public List<Parameter<?>> getArguments()
      Description copied from interface: FunctionName
      Arguments for the function accepts.
      Specified by:
      getArguments in interface FunctionName
    • getReturn

      public Parameter<?> getReturn()
      Description copied from interface: FunctionName
      Return type of the function.
      Specified by:
      getReturn in interface FunctionName
    • hashCode

      public int hashCode()
      Description copied from interface: Operator
      HashCode should be implemented simply in terms of getName().
      Specified by:
      hashCode in interface Operator
      Overrides:
      hashCode in class OperatorImpl
    • equals

      public boolean equals(Object obj)
      Description copied from interface: Operator
      Equals should be implemented simply in terms of getName()
      Specified by:
      equals in interface Operator
      Overrides:
      equals in class OperatorImpl
    • getArgumentNames

      public List<String> getArgumentNames()
      Optional ArgumentNames.

      This is a fixed length list the same size as getArgumentCount().

      Specified by:
      getArgumentNames in interface FunctionName
      Returns:
      Argument names (for documentation purposes) if known
    • parameter

      public static <T> Parameter<T> parameter(String name, Class<T> type)
      Named parameter (argument or result).
      Parameters:
      name - name of parameter
      type - type of parameter
      Returns:
      parameter description
    • parameter

      public static <T> Parameter<T> parameter(String name, Class<T> type, int min, int max)
      Named parameter (argument or result).
      Parameters:
      name - name of parameter
      type - type of parameter
      min - multiplicity
      max - multiplicity
      Returns:
      parameter description
    • parameter

      public static <T> Parameter<T> parameter(String name, Class<T> type, String title, String description)
      Parameters:
      name - name of parameter
      type - type of parameter
      title - human readable title
      description - human readable description
      Returns:
      parameter description