Annotation Interface FilterGenerator


@Target({TYPE,METHOD,FIELD}) @Retention(RUNTIME) public @interface FilterGenerator
Defines a filter generator that will alter the query for an annotated field.
   Examples:

   @FilterGenerator(attributeName = "accountTypeCode",attributeResolverClass =
         "org.kuali.rice.krad.data.bo.TestQueryCustomizerValue")
         private TestRelatedExtension accountExtension;
 

Currently, in order for this annotation to work properly, the KradEclipseLinkCustomizer must be configured for the EclipseLink persistence unit. This can be done manually using PersistenceUnitProperties.SESSION_CUSTOMIZER, or it will be done automatically when using KradEclipseLinkEntityManagerFactoryBean.

Author:
Kuali Rice Team (rice.collab@kuali.org)
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    (Required) The attribute name to have the customization applied in the query.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    (Optional) The class that resolves the value that the attribute named will be used to build expression fragment.
    (Optional) The value that the attribute named will be used to build expression fragment.
    (Optional) The operator that will be used for this fragment expression.
  • Element Details

    • attributeName

      String attributeName
      (Required) The attribute name to have the customization applied in the query.
      Returns:
      the attribute name to have the customization applied in the query.
    • operator

      FilterOperators operator
      (Optional) The operator that will be used for this fragment expression.

      Defaults to EQUAL.

      Returns:
      the operator that will be used for this fragment expression.
      Default:
      EQUAL
    • attributeValue

      String attributeValue
      (Optional) The value that the attribute named will be used to build expression fragment.

      Defaults to an empty string.

      Returns:
      the value that the attribute named will be used to build expression fragment.
      Default:
      ""
    • attributeResolverClass

      Class<?> attributeResolverClass
      (Optional) The class that resolves the value that the attribute named will be used to build expression fragment.

      Defaults to the Void class.

      Returns:
      the class that resolves the value that the attribute named will be used to build expression fragment.
      Default:
      java.lang.Void.class