Esempio n. 1
0
  /**
   * Sets the capabilities of this filter.
   *
   * @return FilterCapabilities for this Filter
   */
  protected FilterCapabilities createFilterCapabilities() {
    capabilities = new FilterCapabilities();
    capabilities.addAll(FilterCapabilities.LOGICAL_OPENGIS);
    capabilities.addAll(FilterCapabilities.SIMPLE_COMPARISONS_OPENGIS);
    capabilities.addType(FilterCapabilities.FID);
    capabilities.addType(FilterCapabilities.BETWEEN);
    capabilities.addType(FilterCapabilities.LIKE);
    capabilities.addType(FilterCapabilities.NULL_CHECK);
    capabilities.addType(FilterCapabilities.SPATIAL_BBOX);
    capabilities.addType(FilterCapabilities.SPATIAL_DISJOINT);
    capabilities.addType(FilterCapabilities.SPATIAL_WITHIN);
    capabilities.addType(FilterCapabilities.SPATIAL_INTERSECT);
    capabilities.addType(FilterCapabilities.SPATIAL_CONTAINS);
    // temporal filters
    capabilities.addType(After.class);
    capabilities.addType(Before.class);
    capabilities.addType(Begins.class);
    capabilities.addType(BegunBy.class);
    capabilities.addType(During.class);
    capabilities.addType(Ends.class);
    capabilities.addType(EndedBy.class);
    capabilities.addType(TContains.class);
    capabilities.addType(TEquals.class);

    return capabilities;
  }
  @Override
  protected FilterCapabilities createFilterCapabilities() {
    FilterCapabilities caps = new FilterCapabilities();
    caps.addAll(SQLDialect.BASE_DBMS_CAPABILITIES);

    // adding the spatial filters support
    caps.addType(BBOX.class);
    caps.addType(Contains.class);
    caps.addType(Crosses.class);
    caps.addType(Disjoint.class);
    caps.addType(Equals.class);
    caps.addType(Intersects.class);
    caps.addType(Overlaps.class);
    caps.addType(Touches.class);
    caps.addType(Within.class);
    caps.addType(DWithin.class);
    caps.addType(Beyond.class);

    // temporal filters
    caps.addType(After.class);
    caps.addType(Before.class);
    caps.addType(Begins.class);
    caps.addType(BegunBy.class);
    caps.addType(During.class);
    caps.addType(TOverlaps.class);
    caps.addType(Ends.class);
    caps.addType(EndedBy.class);
    caps.addType(TEquals.class);

    return caps;
  }
Esempio n. 3
0
  /**
   * Sets the DB2 filter capabilities.
   *
   * @return FilterCapabilities for DB2
   */
  protected FilterCapabilities createFilterCapabilities() {
    FilterCapabilities caps = new FilterCapabilities();
    caps.addAll(SQLDialect.BASE_DBMS_CAPABILITIES);

    // adding the spatial filters support
    caps.addType(BBOX.class);
    caps.addType(Contains.class);
    caps.addType(Crosses.class);
    caps.addType(Disjoint.class);
    caps.addType(Equals.class);
    caps.addType(Intersects.class);
    caps.addType(Overlaps.class);
    caps.addType(Touches.class);
    caps.addType(Within.class);
    caps.addType(DWithin.class);
    caps.addType(Beyond.class);

    // temporal filters
    caps.addType(After.class);
    caps.addType(Before.class);
    caps.addType(Begins.class);
    caps.addType(BegunBy.class);
    caps.addType(During.class);
    caps.addType(TOverlaps.class);
    caps.addType(Ends.class);
    caps.addType(EndedBy.class);
    caps.addType(TEquals.class);

    if (isFunctionEncodingEnabled()) {
      // add support for string functions
      caps.addType(FilterFunction_strConcat.class);
      caps.addType(FilterFunction_strEndsWith.class);
      caps.addType(FilterFunction_strStartsWith.class);
      caps.addType(FilterFunction_strEqualsIgnoreCase.class);
      caps.addType(FilterFunction_strIndexOf.class);
      caps.addType(FilterFunction_strLength.class);
      caps.addType(FilterFunction_strToLowerCase.class);
      caps.addType(FilterFunction_strToUpperCase.class);
      caps.addType(FilterFunction_strReplace.class);
      caps.addType(FilterFunction_strSubstring.class);
      caps.addType(FilterFunction_strSubstringStart.class);
      caps.addType(FilterFunction_strTrim.class);
      caps.addType(FilterFunction_strTrim2.class);

      // add support for math functions
      caps.addType(FilterFunction_abs.class);
      caps.addType(FilterFunction_abs_2.class);
      caps.addType(FilterFunction_abs_3.class);
      caps.addType(FilterFunction_abs_4.class);
      caps.addType(FilterFunction_ceil.class);
      caps.addType(FilterFunction_floor.class);
    }

    return caps;
  }