Class RsqlSpecArgumentResolver

java.lang.Object
in.co.akshitbansal.springwebquery.resolver.RsqlSpecArgumentResolver
All Implemented Interfaces:
org.springframework.web.method.support.HandlerMethodArgumentResolver
Direct Known Subclasses:
DtoAwareRsqlSpecArgumentResolver, EntityAwareRsqlSpecArgumentResolver

public abstract class RsqlSpecArgumentResolver extends Object implements org.springframework.web.method.support.HandlerMethodArgumentResolver
Base HandlerMethodArgumentResolver for resolving RSQL-based Specification parameters.

This class initializes a parser constrained to the configured default and custom operators, and adapts custom operators into RSQLCustomPredicate instances accepted by the underlying rsql-jpa integration.

  • Field Details

    • rsqlParser

      protected final cz.jirutka.rsql.parser.RSQLParser rsqlParser
      Parser configured with the allowed default and custom comparison operators.
    • customPredicates

      protected final List<io.github.perplexhub.rsql.RSQLCustomPredicate<?>> customPredicates
      Custom predicates adapted for rsql-jpa specification conversion.
    • annotationUtil

      protected final AnnotationUtil annotationUtil
      Utility for annotation resolution and validation support in subclasses.
  • Constructor Details

    • RsqlSpecArgumentResolver

      public RsqlSpecArgumentResolver(Set<RsqlOperator> defaultOperators, Set<? extends RsqlCustomOperator<?>> customOperators, AnnotationUtil annotationUtil)
      Creates the resolver base with parser and predicate configuration.
      Parameters:
      defaultOperators - built-in operators accepted by the parser
      customOperators - custom operators to register for parsing and predicate generation
      annotationUtil - utility for annotation resolution and validation