org.alfresco.repo.search.impl.querymodel.impl.functions.Score Java Examples

The following examples show how to use org.alfresco.repo.search.impl.querymodel.impl.functions.Score. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: DBQueryModelFactory.java    From alfresco-repository with GNU Lesser General Public License v3.0 5 votes vote down vote up
public DBQueryModelFactory()
{
    functions.put(Equals.NAME, new DBEquals());
    functions.put(PropertyAccessor.NAME, new DBPropertyAccessor());
    functions.put(Score.NAME, new DBScore());
    functions.put(Upper.NAME, new DBUpper());
    functions.put(Lower.NAME, new DBLower());

    functions.put(NotEquals.NAME, new DBNotEquals());
    functions.put(LessThan.NAME, new DBLessThan());
    functions.put(LessThanOrEquals.NAME, new DBLessThanOrEquals());
    functions.put(GreaterThan.NAME, new DBGreaterThan());
    functions.put(GreaterThanOrEquals.NAME, new DBGreaterThanOrEquals());

    functions.put(In.NAME, new DBIn());
    functions.put(Like.NAME, new DBLike());
    functions.put(Exists.NAME, new DBExists());

    functions.put(Child.NAME, new DBChild());
    functions.put(Descendant.NAME, new DBDescendant());

    functions.put(FTSTerm.NAME, new DBFTSTerm());
    functions.put(FTSPhrase.NAME, new DBFTSPhrase());
    functions.put(FTSProximity.NAME, new DBFTSProximity());
    functions.put(FTSRange.NAME, new DBFTSRange());
    functions.put(FTSPrefixTerm.NAME, new DBFTSPrefixTerm());
    functions.put(FTSWildTerm.NAME, new DBFTSWildTerm());
    functions.put(FTSFuzzyTerm.NAME, new DBFTSFuzzyTerm());
}
 
Example #2
Source File: LuceneQuery.java    From alfresco-data-model with GNU Lesser General Public License v3.0 5 votes vote down vote up
public List<SortDefinition> buildSortDefinitions(Set<String> selectors, LuceneQueryBuilderContext<Q, S, E> luceneContext, FunctionEvaluationContext functionContext)
{
    if ((getOrderings() == null) || (getOrderings().size() == 0))
    {
        return Collections.<SortDefinition>emptyList();
    }

    ArrayList<SortDefinition> definitions = new ArrayList<SortDefinition>(getOrderings().size());

    for (Ordering ordering : getOrderings())
    {
        if (ordering.getColumn().getFunction().getName().equals(PropertyAccessor.NAME))
        {
            PropertyArgument property = (PropertyArgument) ordering.getColumn().getFunctionArguments().get(PropertyAccessor.ARG_PROPERTY);

            if (property == null)
            {
                throw new IllegalStateException();
            }

            String propertyName = property.getPropertyName();

            String fieldName = functionContext.getLuceneFieldName(propertyName);
            
            definitions.add(new SortDefinition(SortType.FIELD, fieldName, ordering.getOrder() == Order.ASCENDING));
        }
        else if (ordering.getColumn().getFunction().getName().equals(Score.NAME))
        {
            definitions.add(new SortDefinition(SortType.SCORE, null, ordering.getOrder() == Order.ASCENDING));
        }
    }

    return definitions;
}
 
Example #3
Source File: LuceneQueryModelFactory.java    From alfresco-data-model with GNU Lesser General Public License v3.0 5 votes vote down vote up
/**
 * Default lucene query model factory and functions
 */
public LuceneQueryModelFactory()
{
    functions.put(Equals.NAME, new LuceneEquals<Q, S, E>());
    functions.put(PropertyAccessor.NAME, new LucenePropertyAccessor<Q, S, E>());
    functions.put(Score.NAME, new LuceneScore<Q, S, E>());
    functions.put(Upper.NAME, new LuceneUpper<Q, S, E>());
    functions.put(Lower.NAME, new LuceneLower<Q, S, E>());

    functions.put(NotEquals.NAME, new LuceneNotEquals<Q, S, E>());
    functions.put(LessThan.NAME, new LuceneLessThan<Q, S, E>());
    functions.put(LessThanOrEquals.NAME, new LuceneLessThanOrEquals<Q, S, E>());
    functions.put(GreaterThan.NAME, new LuceneGreaterThan<Q, S, E>());
    functions.put(GreaterThanOrEquals.NAME, new LuceneGreaterThanOrEquals<Q, S, E>());

    functions.put(In.NAME, new LuceneIn<Q, S, E>());
    functions.put(Like.NAME, new LuceneLike<Q, S, E>());
    functions.put(Exists.NAME, new LuceneExists<Q, S, E>());

    functions.put(Child.NAME, new LuceneChild<Q, S, E>());
    functions.put(Descendant.NAME, new LuceneDescendant<Q, S, E>());

    functions.put(FTSTerm.NAME, new LuceneFTSTerm<Q, S, E>());
    functions.put(FTSPhrase.NAME, new LuceneFTSPhrase<Q, S, E>());
    functions.put(FTSProximity.NAME, new LuceneFTSProximity<Q, S, E>());
    functions.put(FTSRange.NAME, new LuceneFTSRange<Q, S, E>());
    functions.put(FTSPrefixTerm.NAME, new LuceneFTSPrefixTerm<Q, S, E>());
    functions.put(FTSWildTerm.NAME, new LuceneFTSWildTerm<Q, S, E>());
    functions.put(FTSFuzzyTerm.NAME, new LuceneFTSFuzzyTerm<Q, S, E>());
}