Annotation Interface FilterJoinTable


Specifies that the join table of a collection is affected by a named filter declared using FilterDef, and allows the default filter condition to be overridden for the annotated entity or collection role.
See Also:
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    The name of the filter declared using FilterDef.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    Explicitly specifies how aliases are interpolated into the condition() SQL expression.
    The filter condition, a SQL expression used for filtering the rows returned by a query when the filter is enabled.
    boolean
    Determines how tables aliases are interpolated into the condition() SQL expression.
  • Element Details

    • condition

      String condition
      The filter condition, a SQL expression used for filtering the rows returned by a query when the filter is enabled. If not specified, the default filter condition given by FilterDef.defaultCondition() is used.

      By default, aliases of filtered tables are automatically interpolated into the filter condition, before any token that looks like a column name. Occasionally, when the interpolation algorithm encounters ambiguity, the process of alias interpolation produces broken SQL. In such cases, alias interpolation may be controlled explicitly using either deduceAliasInjectionPoints() or aliases().

      Default:
      ""
    • deduceAliasInjectionPoints

      boolean deduceAliasInjectionPoints
      Determines how tables aliases are interpolated into the condition() SQL expression.
      • if true, and by default, an alias is added automatically to every column occurring in the SQL expression, but
      • if false, aliases are only interpolated where an explicit placeholder of form {alias} occurs in the SQL expression.
      • Finally, if explicit aliases are specified, then alias interpolation happens only for the specified aliases.
      Default:
      true
    • aliases

      SqlFragmentAlias[] aliases
      Explicitly specifies how aliases are interpolated into the condition() SQL expression. Each SqlFragmentAlias specifies a placeholder name and the table whose alias should be interpolated. Placeholders are of form {name} where name matches a SqlFragmentAlias.alias().
      Default:
      {}