Package org.apache.jackrabbit.oak.query

Examples of org.apache.jackrabbit.oak.query.CoreValue


*/
public class FilterTest {

    @Test
    public void propertyRestriction() {
        CoreValue one = new CoreValueFactory().createValue("1");
        CoreValue two = new CoreValueFactory().createValue("2");

        Filter f = new Filter(null);
        assertTrue(null == f.getPropertyRestriction("x"));
        f.restrictProperty("x", Operator.LESS_OR_EQUAL, two);
        assertEquals("..2]", f.getPropertyRestriction("x").toString());
View Full Code Here


        return "UPPER(" + operand + ')';
    }

    @Override
    public CoreValue currentValue() {
        CoreValue v = operand.currentValue();
        if (v == null) {
            return null;
        }
        String value = v.getString();
        return query.getValueFactory().createValue(value.toUpperCase());
    }
View Full Code Here

        return "LENGTH(" + getPropertyValue() + ')';
    }

    @Override
    public CoreValue currentValue() {
        CoreValue v = propertyValue.currentValue();
        if (v == null) {
            return null;
        }
        // TODO LENGTH(..) is the length of the string representation?
        String value = v.getString();
        return query.getValueFactory().createValue(value.length());
    }
View Full Code Here

        return "LOWER(" + operand + ')';
    }

    @Override
    public CoreValue currentValue() {
        CoreValue v = operand.currentValue();
        if (v == null) {
            return null;
        }
        String value = v.getString();
        return query.getValueFactory().createValue(value.toLowerCase());
    }
View Full Code Here

        if (x == null) {
            x = new PropertyRestriction();
            x.propertyName = propertyName;
            propertyRestrictions.put(propertyName, x);
        }
        CoreValue oldFirst = x.first, oldLast = x.last;
        switch (op) {
        case EQUAL:
            x.first = maxValue(oldFirst, value);
            x.firstIncluding = x.first == oldFirst ? x.firstIncluding : true;
            x.last = minValue(oldLast, value);
View Full Code Here

        }
    }

    @Override
    public boolean evaluate() {
        CoreValue v1 = selector1.currentProperty(property1Name);
        if (v1 == null) {
            return false;
        }
        // TODO data type mapping
        CoreValue v2 = selector2.currentProperty(property2Name);
        return v2 != null && v1.equals(v2);
    }
View Full Code Here

        return v2 != null && v1.equals(v2);
    }

    @Override
    public void apply(Filter f) {
        CoreValue v1 = selector1.currentProperty(property1Name);
        CoreValue v2 = selector2.currentProperty(property2Name);
        if (f.getSelector() == selector1 && v2 != null) {
            f.restrictProperty(property1Name, Operator.EQUAL, v2);
        }
        if (f.getSelector() == selector2 && v1 != null) {
            f.restrictProperty(property2Name, Operator.EQUAL, v1);
View Full Code Here

        return operand2;
    }

    @Override
    public boolean evaluate() {
        CoreValue v1 = operand1.currentValue();
        CoreValue v2 = operand2.currentValue();
        if (v1 == null || v2 == null) {
            // TODO comparison: what about (null <> x) ?
            return false;
        }
        switch (operator) {
View Full Code Here

    }

    @Override
    public void apply(Filter f) {
        CoreValue v = operand2.currentValue();
        if (v != null) {
            if (operator == Operator.LIKE) {
                String pattern;
                pattern = v.getString();
                LikePattern p = new LikePattern(pattern);
                String lowerBound = p.getLowerBound();
                String upperBound = p.getUpperBound();
                if (lowerBound == null && upperBound == null) {
                    // ignore
View Full Code Here

        return selectorName;
    }

    @Override
    public boolean evaluate() {
        CoreValue v = selector.currentProperty(propertyName);
        return v != null;
    }
View Full Code Here

TOP

Related Classes of org.apache.jackrabbit.oak.query.CoreValue

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.