Package org.geotools.filter

Examples of org.geotools.filter.FilterCapabilities


       
        assertEquals(f2, visitor.getFilterPost());
    }
   
    public void testNullLiteralInLogicCombination() {
        FilterCapabilities caps = new FilterCapabilities();
        PostPreProcessFilterSplittingVisitor visitor =
            new PostPreProcessFilterSplittingVisitor(caps, null, null);
        caps.addAll(FilterCapabilities.SIMPLE_COMPARISONS_OPENGIS);
        caps.addType(And.class);
        caps.addType(Or.class);
        caps.addType(Not.class);

        Filter f1 = ff.equal(ff.literal(null), ff.literal("test"), false);
        Filter f2 = ff.not(ff.equal(ff.literal(null), ff.literal("test"), false));
        Filter or = ff.or(Arrays.asList(f1, f2));
        or.accept(visitor, null);
View Full Code Here


   * @param filterTypeMask the constant in {@link FilterCapabilities} that is equivalent to the FilterType used in filter
   * @param attToEdit the attribute in filter that is queried.  If null then edit test is not ran.
   */
  protected void runTest(Filter filter, FilterCapabilities supportedCaps, String attToEdit) throws SchemaException {
    // initialize fields that might be previously modified in current test
        PostPreProcessFilterSplittingVisitor visitor=newVisitor(new FilterCapabilities());
    if (accessor!=null )
    accessor.setUpdate("",null);

    // Testing when FilterCapabilites indicate that filter type is not supported
    filter.accept(visitor, null);
View Full Code Here

        }
    }

    @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(Within.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(Beyond.class);

        return caps;
    }
View Full Code Here

     * Sets the capabilities of this filter.
     *
     * @return FilterCapabilities for this Filter
     */
    protected FilterCapabilities createFilterCapabilities() {
        FilterCapabilities capabilities = new FilterCapabilities();

        capabilities.addAll(FilterCapabilities.LOGICAL_OPENGIS);
        capabilities.addAll(FilterCapabilities.SIMPLE_COMPARISONS_OPENGIS);
        capabilities.addType(PropertyIsNull.class);
        capabilities.addType(PropertyIsBetween.class);
        capabilities.addType(Id.class);
        capabilities.addType(IncludeFilter.class);
        capabilities.addType(ExcludeFilter.class);
       
        //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;
    }
View Full Code Here

            if (value.length < 1) {
                throw new SAXException("Missing child element");
            }

            FilterCapabilities caps=new FilterCapabilities();

            for (int i = 0; i < value.length; i++) {
                String name = value[i].getElement().getName();
                if( name.equals("Functions") )
                  caps.addAll((FilterCapabilities) value[i].getValue());
                else
                  caps.addAll( FilterCapabilities.findOperation(name) );
            }

            return caps;
        }
View Full Code Here

            if (value.length < 1) {
                throw new SAXException("Missing child element");
            }

            FilterCapabilities caps=new FilterCapabilities();

            for (int i = 0; i < value.length; i++) {
                caps.addAll( FilterCapabilities.findOperation(value[i].getElement()
                                                               .getName()) );
            }

            return caps;
        }
View Full Code Here

         *      org.xml.sax.Attributes, java.util.Map)
         */
        public Object getValue(Element element, ElementValue[] value,
            Attributes attrs, Map hints){
          // TODO
          FilterCapabilities caps=new FilterCapabilities();
          String functionName = (String)value[0].getValue();
      caps.addAll(FilterCapabilities.findFunction(functionName.toLowerCase()));
            return caps;
        }
View Full Code Here

         *      org.geotools.xml.schema.ElementValue[],
         *      org.xml.sax.Attributes, java.util.Map)
         */
        public Object getValue(Element element, ElementValue[] value,
            Attributes attrs, Map hints){
          FilterCapabilities caps=new FilterCapabilities();
          for (int i = 0; i < value.length; i++) {
        caps.addAll((FilterCapabilities) value[i].getValue());
      }
            return caps;
        }
View Full Code Here

public class MySQLFilterToSQL extends FilterToSQL {

    @Override
    protected FilterCapabilities createFilterCapabilities() {
        //MySQL does not actually implement all of the special functions
        FilterCapabilities caps = super.createFilterCapabilities();
        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(Beyond.class);

       
        return caps;
    }
View Full Code Here

    public FilterToSqlHelper(FilterToSQL delegate) {
        this.delegate = delegate;
    }

    public static FilterCapabilities createFilterCapabilities(boolean encodeFunctions) {
        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(encodeFunctions) {
            // 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;
    }
View Full Code Here

TOP

Related Classes of org.geotools.filter.FilterCapabilities

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.