Package org.geotools.filter

Examples of org.geotools.filter.Filter


        try {
            String handle = query.getHandle();
            int maxFeatures = query.getMaxFeatures();
            String typeName = query.getTypeName();
            String[] propNames = extractAllowedAttributes(query);
            Filter filter = query.getFilter();
            filter = makeDefinitionFilter(filter);

            return new DefaultQuery(typeName, filter, maxFeatures, propNames,
                handle);
        } catch (Exception ex) {
View Full Code Here


     * @throws DataSourceException If the filter could not meet the limitations
     *         of definitionQuery
     */
    protected Filter makeDefinitionFilter(Filter filter)
        throws DataSourceException {
        Filter newFilter = filter;

        try {
            if (definitionQuery != Filter.NONE) {
                FilterFactory ff = FilterFactory.createFilterFactory();
                newFilter = ff.createLogicFilter(AbstractFilter.LOGIC_AND);
View Full Code Here

        CompareFilter tempFilter = factory.createCompareFilter(AbstractFilter.COMPARE_EQUALS);
        tempFilter.addRightValue(tempExp1);
        tempFilter.addLeftValue(tempExp2);

        Filter logicFilter = factory.createLogicFilter(tempFilter,
                AbstractFilter.LOGIC_AND);
        LOGGER.fine("filter: " + logicFilter);
        tempFilter = factory.createCompareFilter(AbstractFilter.COMPARE_EQUALS);
        tempExp1 = factory.createLiteralExpression(DefaultExpression.LITERAL_STRING);
        tempExp2 = factory.createAttributeExpression((FeatureType)null,"Person/Address/City");
        tempExp1.setLiteral("Main St.");
        tempExp1.setLiteral("SomeTown");
        //tempExp2.setAttributePath("Person/Address/City");   // done at creations time
        tempFilter.addRightValue(tempExp1);
        tempFilter.addLeftValue(tempExp2);
        logicFilter = logicFilter.and(tempFilter);
        LOGGER.fine("filter: " + logicFilter);
        tempFilter = factory.createCompareFilter(AbstractFilter.COMPARE_EQUALS);
        tempExp1 = factory.createLiteralExpression(DefaultExpression.LITERAL_STRING);
        tempExp2 = factory.createAttributeExpression((FeatureType)null,"Person/Sex");
        tempExp1.setLiteral("Female");
       // tempExp2.setAttributePath("Person/Sex");
        tempFilter.addRightValue(tempExp1);
        tempFilter.addLeftValue(tempExp2);
        logicFilter = logicFilter.and(tempFilter);
        LOGGER.fine("filter: " + logicFilter);
        tempFilter = factory.createCompareFilter(AbstractFilter.COMPARE_GREATER_THAN);
        tempExp1 = factory.createLiteralExpression(DefaultExpression.LITERAL_INTEGER);
        tempExp2 = factory.createAttributeExpression((FeatureType)null,"Person/Salary");
        tempExp1.setLiteral("35000");
       // tempExp2.setAttributePath("Person/Salary");
        tempFilter.addLeftValue(tempExp2);
        tempFilter.addRightValue(tempExp1);
        logicFilter = logicFilter.and(tempFilter);

        Filter finalFilter = factory.createLogicFilter(logicFilter,
                AbstractFilter.LOGIC_AND);
        LOGGER.fine("filter: " + finalFilter);
        tempFilter = factory.createCompareFilter(AbstractFilter.COMPARE_GREATER_THAN_EQUAL);
        tempExp1 = factory.createLiteralExpression(DefaultExpression.LITERAL_INTEGER);
        tempExp2 = factory.createAttributeExpression((FeatureType)null,"Person/Address/StreetNumber");
        tempExp1.setLiteral("10000");
        //tempExp2.setAttributePath("Person/Address/StreetNumber");
        tempFilter.addLeftValue(tempExp2);
        tempFilter.addRightValue(tempExp1);
        finalFilter = finalFilter.and(tempFilter);
        LOGGER.fine("filter: " + finalFilter);
        tempFilter = factory.createCompareFilter(AbstractFilter.COMPARE_LESS_THAN_EQUAL);
        tempExp1 = factory.createLiteralExpression(DefaultExpression.LITERAL_INTEGER);
        tempExp2 = factory.createAttributeExpression((FeatureType)null,"Person/Address/StreetNumber");
        tempExp1.setLiteral("10999");
        //tempExp2.setAttributePath("Person/Address/StreetNumber");
        tempFilter.addLeftValue(tempExp2);
        tempFilter.addRightValue(tempExp1);
        finalFilter = finalFilter.and(tempFilter);
        LOGGER.fine("filter: " + finalFilter);

        FeatureRequest baseRequest = new FeatureRequest();
        Query query = new Query();
        query.setTypeName("Person");
View Full Code Here

TOP

Related Classes of org.geotools.filter.Filter

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.