Interface FunctionExpression

All Superinterfaces:
Expression, Factory, Function
All Known Implementing Classes:
AbstractQuantityClassificationFunction, AndFunction, AreaFunction, ArrayFunction, AsMultiGeometryFunctionExpression, AtFunction, AttributeCountFunction, BandsFunction, ClassificationFunction, ClassifyFunction, Collection_AverageFunction, Collection_BoundsFunction, Collection_CountFunction, Collection_MaxFunction, Collection_MedianFunction, Collection_MinFunction, Collection_SumFunction, Collection_UniqueFunction, CollectionIdFunction, CollectionLinkFunction, DateDifferenceFunction, EnvFunction, EqualAreaFunction, EqualIntervalFunction, FallbackFunction, FilterFunction_abs, FilterFunction_abs_2, FilterFunction_abs_3, FilterFunction_abs_4, FilterFunction_acos, FilterFunction_area, FilterFunction_asin, FilterFunction_atan, FilterFunction_atan2, FilterFunction_between, FilterFunction_boundary, FilterFunction_boundaryDimension, FilterFunction_buffer, FilterFunction_bufferWithSegments, FilterFunction_ceil, FilterFunction_centroid, FilterFunction_contains, FilterFunction_Convert, FilterFunction_convexHull, FilterFunction_cos, FilterFunction_crosses, FilterFunction_dateFormat, FilterFunction_dateParse, FilterFunction_difference, FilterFunction_dimension, FilterFunction_disjoint, FilterFunction_disjoint3D, FilterFunction_distance, FilterFunction_distance3D, FilterFunction_double2bool, FilterFunction_endAngle, FilterFunction_endPoint, FilterFunction_envelope, FilterFunction_equalsExact, FilterFunction_equalsExactTolerance, FilterFunction_equalTo, FilterFunction_exp, FilterFunction_exteriorRing, FilterFunction_floor, FilterFunction_geometryType, FilterFunction_geomFromWKT, FilterFunction_geomLength, FilterFunction_getGeometryN, FilterFunction_getX, FilterFunction_getY, FilterFunction_getZ, FilterFunction_greaterEqualThan, FilterFunction_greaterThan, FilterFunction_IEEEremainder, FilterFunction_if_then_else, FilterFunction_in10, FilterFunction_in2, FilterFunction_in3, FilterFunction_in4, FilterFunction_in5, FilterFunction_in6, FilterFunction_in7, FilterFunction_in8, FilterFunction_in9, FilterFunction_int2bbool, FilterFunction_int2ddouble, FilterFunction_interiorPoint, FilterFunction_interiorRingN, FilterFunction_intersection, FilterFunction_intersects, FilterFunction_intersects3D, FilterFunction_isClosed, FilterFunction_isCoverage, FilterFunction_isEmpty, FilterFunction_isLike, FilterFunction_isNull, FilterFunction_isometric, FilterFunction_isRing, FilterFunction_isSimple, FilterFunction_isValid, FilterFunction_isWithinDistance, FilterFunction_isWithinDistance3D, FilterFunction_lessEqualThan, FilterFunction_lessThan, FilterFunction_list, FilterFunction_listMultiply, FilterFunction_log, FilterFunction_max, FilterFunction_max_2, FilterFunction_max_3, FilterFunction_max_4, FilterFunction_min, FilterFunction_min_2, FilterFunction_min_3, FilterFunction_min_4, FilterFunction_minimumCircle, FilterFunction_minimumDiameter, FilterFunction_minimumRectangle, FilterFunction_not, FilterFunction_notEqualTo, FilterFunction_numberFormat, FilterFunction_numberFormat2, FilterFunction_numGeometries, FilterFunction_numInteriorRing, FilterFunction_numPoints, FilterFunction_octagonalEnvelope, FilterFunction_offset, FilterFunction_overlaps, FilterFunction_parseBoolean, FilterFunction_parseDouble, FilterFunction_parseInt, FilterFunction_parseLong, FilterFunction_pgNearest, FilterFunction_pointN, FilterFunction_pow, FilterFunction_property, FilterFunction_random, FilterFunction_relate, FilterFunction_relatePattern, FilterFunction_rint, FilterFunction_round, FilterFunction_round_2, FilterFunction_roundDouble, FilterFunction_sdonn, FilterFunction_setCRS, FilterFunction_sin, FilterFunction_sqrt, FilterFunction_startAngle, FilterFunction_startPoint, FilterFunction_strAbbreviate, FilterFunction_strCapitalize, FilterFunction_strConcat, FilterFunction_strDefaultIfBlank, FilterFunction_strEndsWith, FilterFunction_strEqualsIgnoreCase, FilterFunction_strIndexOf, FilterFunction_strLastIndexOf, FilterFunction_strLength, FilterFunction_strMatches, FilterFunction_strPosition, FilterFunction_strReplace, FilterFunction_strStartsWith, FilterFunction_strStripAccents, FilterFunction_strSubstring, FilterFunction_strSubstringStart, FilterFunction_strToLowerCase, FilterFunction_strToUpperCase, FilterFunction_strTrim, FilterFunction_strTrim2, FilterFunction_symDifference, FilterFunction_tan, FilterFunction_toDegrees, FilterFunction_toRadians, FilterFunction_touches, FilterFunction_toWKT, FilterFunction_union, FilterFunction_vertices, FilterFunction_within, FunctionExpressionImpl, GeometryFunction, GetFunction, HasFunction, IDFunction, IDFunctionExpression, InArrayFunction, InFunction, IntegerDivisionFunction, JenksNaturalBreaksFunction, JsonArrayContainsFunction, JsonPointerFunction, JsonSelectAllFunction, JsonSelectFunction, LapplyFunction, LengthFunction, LinFunction, ListSizeFunction, LitemFunction, LiterateFunction, MapBoxAnchorFunction, MapBoxLengthFunction, MapGetFunction, NestedCollectionLinkFunction, NorthFix, NowFunction, OrFunction, PaletteFunction, PiFunction, PointOnLineFunction, PropertyExistsFunction, QuantileFunction, RescaleToPixelsFunction, SizeFunction, StandardDeviationFunction, ToRgb, UniqueIntervalFunction, URLEncodeFunction, ZoomLevelFunction

public interface FunctionExpression extends Factory, Function
Quick Function implementation for direct use as a factory.

Functions are published as part of DefaultFuntionFactory using the following workflow:

  • Implementation listed with Service Provider Interface org.geotools.api.filter.Function
  • Object created using a no argument constructor (or a constructor that takes hints). Factory.getImplementationHints() used used to review the hints that are supported by the function implementation.
  • setParameters(List) is used to supply the argument expressions.
  • setFallbackValue(Literal) is used to supply a placeholder Literal to be used if the function implementation is not available
All implements should be registered for service provider interface
 org.geotools.api.filter.Function
 DefaultFunctionFactor.

 

If you have a large number of related functions consider the use of FunctionFactory.

Author:
James Macgill, PSU, Jody Garnett (Boundless)
See Also:
  • Method Details

    • setFallbackValue

      void setFallbackValue(Literal fallback)
      Fallback value to use in the event the function is unavailable in the requested environment.

      The fallback value is not provided as one of the arguments, as it is an advanced option used in style layer descriptor documents to facilitate interoperability. It allows a user to specify an SQL function, and provide a value to use when the documented is used with a WFS that does not support the provided function.

    • setParameters

      void setParameters(List<Expression> parameters)
      Sets the Parameters for the function.