FulltextPredicateEvaluator.java 1.18 KB
/*
 * Decompiled with CFR 0_118.
 * 
 * Could not load the following classes:
 *  org.apache.felix.scr.annotations.Component
 */
package com.day.cq.search.eval;

import com.day.cq.search.Predicate;
import com.day.cq.search.eval.AbstractPredicateEvaluator;
import com.day.cq.search.eval.EvaluationContext;
import com.day.cq.search.eval.XPath;
import org.apache.felix.scr.annotations.Component;

@Component(metatype=0, factory="com.day.cq.search.eval.PredicateEvaluator/fulltext")
public class FulltextPredicateEvaluator
extends AbstractPredicateEvaluator {
    public static final String FULLTEXT = "fulltext";
    public static final String REL_PATH = "relPath";

    @Override
    public String getXPathExpression(Predicate p, EvaluationContext context) {
        if (!p.hasNonEmptyValue("fulltext")) {
            return null;
        }
        return "jcr:contains(" + p.get("relPath", ".") + ", " + XPath.getFulltextStringLiteral(p.get("fulltext")) + ")";
    }

    @Override
    public boolean canXpath(Predicate predicate, EvaluationContext context) {
        return true;
    }

    @Override
    public boolean canFilter(Predicate predicate, EvaluationContext context) {
        return false;
    }
}