Interface RelationshipProperty<E>

All Superinterfaces:
PathProperty<E>, Property<E>
All Known Implementing Classes:
CollectionProperty, EntityProperty, ListProperty, MapProperty, Property, SetProperty

public interface RelationshipProperty<E> extends PathProperty<E>
Interface (or "Trait") that provides basic functionality for all types of relationships.

Provides "dot", prefetch and "outer" functionality.

Since:
4.2
See Also:
  • Method Details

    • outer

      BaseProperty<E> outer()
      Returns a version of this property that represents an OUTER join. It is up to caller to ensure that the property corresponds to a relationship, as "outer" attributes make no sense.
    • joint

      default PrefetchTreeNode joint()
      Returns a prefetch tree that follows this property path, potentially spanning a number of phantom nodes, and having a single leaf with "joint" prefetch semantics.
    • disjoint

      default PrefetchTreeNode disjoint()
      Returns a prefetch tree that follows this property path, potentially spanning a number of phantom nodes, and having a single leaf with "disjoint" prefetch semantics.
    • disjointById

      default PrefetchTreeNode disjointById()
      Returns a prefetch tree that follows this property path, potentially spanning a number of phantom nodes, and having a single leaf with "disjoint by id" prefetch semantics.
    • dot

      default <T> BaseIdProperty<T> dot(BaseIdProperty<T> property)
    • dot

      default <T extends Number> NumericIdProperty<T> dot(NumericIdProperty<T> property)
    • dot

      default <T extends Persistent> EntityProperty<T> dot(EntityProperty<T> property)
      Constructs a new property path by appending the argument to the existing property separated by a dot.
      Parameters:
      property - to append to path
      Returns:
      a newly created Property object.
    • dot

      default <T extends Persistent> ListProperty<T> dot(ListProperty<T> property)
      Constructs a new property path by appending the argument to the existing property separated by a dot.
      Parameters:
      property - to append to path
      Returns:
      a newly created Property object.
    • dot

      default <T extends Persistent> SetProperty<T> dot(SetProperty<T> property)
      Constructs a new property path by appending the argument to the existing property separated by a dot.
      Parameters:
      property - to append to path
      Returns:
      a newly created Property object.
    • dot

      default <K, V extends Persistent> MapProperty<K,V> dot(MapProperty<K,V> property)
      Constructs a new property path by appending the argument to the existing property separated by a dot.
      Parameters:
      property - to append to path
      Returns:
      a newly created Property object.
    • dot

      default <T extends EmbeddableObject> EmbeddableProperty<T> dot(EmbeddableProperty<T> property)
      Constructs a new property path by appending the argument to the existing property separated by a dot.
      Parameters:
      property - to append to path
      Returns:
      a newly created Property object.