Package org.apache.cayenne.exp.property
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:
org.apache.cayenne.exp.property
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description 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.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.default <T> BaseIdProperty<T>
dot(BaseIdProperty<T> property)
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.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.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.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.default <T extends Number>
NumericIdProperty<T>dot(NumericIdProperty<T> property)
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.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.BaseProperty<E>
outer()
Returns a version of this property that represents an OUTER join.-
Methods inherited from interface org.apache.cayenne.exp.property.PathProperty
dot, dot, dot, dot, dot
-
Methods inherited from interface org.apache.cayenne.exp.property.Property
getAlias, getExpression, getName, getType
-
-
-
-
Method Detail
-
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.
-
-