All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.perplexhub.rsql.QuerySupport Maven / Gradle / Ivy

There is a newer version: 6.0.23
Show newest version
package io.github.perplexhub.rsql;

import lombok.Builder;
import lombok.Data;

import jakarta.persistence.criteria.JoinType;
import java.util.List;
import java.util.Map;

@Data
@Builder
public class QuerySupport {
    private String rsqlQuery;
    private boolean distinct;
    /**
     * Whether try to interpret {@link RSQLOperators#EQUAL} or {@link RSQLOperators#NOT_EQUAL} operators as
     * {@link RSQLOperators#LIKE}, {@link RSQLOperators#NOT_LIKE} or their case-insensitive variants.
     */
    private boolean strictEquality;
    private Map propertyPathMapper;
    private List> customPredicates;
    private Map joinHints;
    private Map, List> propertyWhitelist;
    private Map, List> propertyBlacklist;

    public static class QuerySupportBuilder {}

    @Override
    public String toString() {
        return String.format("%s,distinct:%b,propertyPathMapper:%s,customPredicates:%d,joinHints:%s,propertyWhitelist:%s,propertyBlacklist:%s",
                rsqlQuery, distinct, propertyPathMapper, customPredicates == null ? 0 : customPredicates.size(), joinHints, propertyWhitelist, propertyBlacklist);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy