Class CommonNonJpqlConstructsValidator

java.lang.Object
io.jmix.aitools.dataload.validation.validator.CommonNonJpqlConstructsValidator
All Implemented Interfaces:
JpqlResultValidator, org.springframework.core.Ordered

@Component("aitls_CommonNonJpqlConstructsJpqlValidator") public class CommonNonJpqlConstructsValidator extends Object implements JpqlResultValidator, org.springframework.core.Ordered
Rejects SQL-only constructs that are not valid JPQL: SQL pagination (LIMIT/OFFSET), SQL-specific date functions and interval expressions, and CURRENT_DATE/CURRENT_TIME/CURRENT_TIMESTAMP used with parentheses.
  • Field Details

    • SQL_PAGINATION_CODE

      public static final String SQL_PAGINATION_CODE
      See Also:
    • SQL_PAGINATION_GUIDANCE

      public static final String SQL_PAGINATION_GUIDANCE
      See Also:
    • SQL_DATE_FUNCTION_CODE

      public static final String SQL_DATE_FUNCTION_CODE
      See Also:
    • SQL_DATE_FUNCTION_GUIDANCE

      public static final String SQL_DATE_FUNCTION_GUIDANCE
      See Also:
    • CURRENT_FUNCTION_PARENTHESES_CODE

      public static final String CURRENT_FUNCTION_PARENTHESES_CODE
      See Also:
    • CURRENT_FUNCTION_PARENTHESES_GUIDANCE

      public static final String CURRENT_FUNCTION_PARENTHESES_GUIDANCE
      See Also:
    • CURRENT_DATE_WITH_PARENTHESES_PATTERN

      protected static final Pattern CURRENT_DATE_WITH_PARENTHESES_PATTERN
    • CURRENT_TIME_WITH_PARENTHESES_PATTERN

      protected static final Pattern CURRENT_TIME_WITH_PARENTHESES_PATTERN
    • CURRENT_TIMESTAMP_WITH_PARENTHESES_PATTERN

      protected static final Pattern CURRENT_TIMESTAMP_WITH_PARENTHESES_PATTERN
  • Constructor Details

    • CommonNonJpqlConstructsValidator

      public CommonNonJpqlConstructsValidator()
  • Method Details

    • validate

      public List<JpqlValidationIssue> validate(GeneratedJpqlResult result)
      Description copied from interface: JpqlResultValidator
      Validates the given query draft.
      Specified by:
      validate in interface JpqlResultValidator
      Parameters:
      result - generated query draft to validate
      Returns:
      issues found, or an empty list if the rule passed
    • getOrder

      public int getOrder()
      Specified by:
      getOrder in interface org.springframework.core.Ordered