Class EntityProperty<E extends Persistent>
java.lang.Object
org.apache.cayenne.exp.property.BaseProperty<E>
org.apache.cayenne.exp.property.EntityProperty<E>
- All Implemented Interfaces:
PathProperty<E>, Property<E>, RelationshipProperty<E>
- Direct Known Subclasses:
SelfProperty
public class EntityProperty<E extends Persistent>
extends BaseProperty<E>
implements RelationshipProperty<E>
Property that represents to-one relationships.
Usage examples in where clause:
ObjectSelect.query(Paintings.class)
.where(Painting.TO_ARTIST.dot(Artist.ARTIST_NAME).eq("Pablo Picasso"));
Usage examples in column select, in this case full Artist entity will be returned as the result:
ObjectSelect
.columnQuery(Paintings.class, Painting.PAINTING_TITLE, Painting.TO_ARTIST);
- Since:
- 4.2
- See Also:
-
Field Summary
Fields inherited from class BaseProperty
expressionSupplier, path, type -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedEntityProperty(CayennePath path, Expression expression, Class<E> type) Constructs a new property with the given name and expression -
Method Summary
Modifier and TypeMethodDescriptionCreates alias with different name for this propertyThis operator allows to access properties of the enclosing query from the subquery.Matches an object by a possibly compound id, expressed as a map of DB attribute names to values.final ExpressionMatches any of the objects identified by the provided ids.idMapsInCollection(Collection<Map<String, ?>> ids) idsInCollection(Collection<?> ids) idsNotInCollection(Collection<?> ids) Deprecated, for removal: This API element is subject to removal in a future version.inId(Collection<Object> ids) Deprecated, for removal: This API element is subject to removal in a future version.in favour ofidsInCollection(Collection)Deprecated, for removal: This API element is subject to removal in a future version.in favour ofidsNotIn(Object...)ninId(Collection<Object> ids) Deprecated, for removal: This API element is subject to removal in a future version.in favour ofidsNotInCollection(Collection)objectIdsIn(ObjectId... ids) Matches any of the objects identified by the providedObjectIds.outer()Returns a version of this property that represents an OUTER join.Methods inherited from class BaseProperty
aggregate, asc, ascInsensitive, ascInsensitives, ascs, count, countDistinct, desc, descInsensitive, descInsensitives, descs, eq, eq, equals, function, function, getAlias, getExpression, getFrom, getFromAll, getName, getPath, getType, hashCode, in, in, in, isFalse, isNotNull, isNull, isTrue, ne, ne, nin, nin, nin, operator, operator, setIn, setInAll
-
Constructor Details
-
EntityProperty
Constructs a new property with the given name and expression- Parameters:
path- of the property (will be used as alias for the expression)expression- expression for propertytype- of the property- See Also:
-
-
Method Details
-
eqId
-
inId
Deprecated, for removal: This API element is subject to removal in a future version.in favour ofidsInCollection(Collection) -
idsInCollection
- Parameters:
ids- to use for "IN" expression- Returns:
INexpression comparing path represented by this property with provided ids- Since:
- 5.0
-
inId
Deprecated, for removal: This API element is subject to removal in a future version.in favour ofidsIn(Object...) -
idsIn
- Parameters:
ids- to use for "IN" expression- Returns:
INexpression comparing path represented by this property with provided ids- Since:
- 5.0
-
neqId
-
ninId
Deprecated, for removal: This API element is subject to removal in a future version.in favour ofidsNotInCollection(Collection) -
idsNotInCollection
- Parameters:
ids- collection of IDs to use for "NOT IN" expression- Returns:
NOT INexpression comparing path represented by this property with provided IDs- Since:
- 5.0
-
ninId
@Deprecated(since="5.0", forRemoval=true) public Expression ninId(Object firstId, Object... moreIds) Deprecated, for removal: This API element is subject to removal in a future version.in favour ofidsNotIn(Object...) -
idsNotIn
- Parameters:
ids- to use for "NOT IN" expression- Returns:
NOT INexpression comparing path represented by this property with provided ids- Since:
- 5.0
-
eqIdMap
Matches an object by a possibly compound id, expressed as a map of DB attribute names to values. UnlikeeqId(Object)this form supports entities with a compound PK.- Parameters:
id- a map of the target entity PK attribute names to values- Returns:
- an expression matching an object with the given id
- Since:
- 5.0
-
neqIdMap
- Parameters:
id- a map of the target entity PK attribute names to values- Returns:
- an expression excluding an object with the given id
- Since:
- 5.0
- See Also:
-
idMapsIn
Matches any of the objects identified by the provided ids. UnlikeidsIn(Object...)this form supports entities with a compound PK, expanding to anORof per-id matches rather than anIN, as SQLINcan't be applied to a multi-column key.- Parameters:
ids- maps of the target entity PK attribute names to values- Since:
- 5.0
- See Also:
-
idMapsInCollection
- Parameters:
ids- maps of the target entity PK attribute names to values- Since:
- 5.0
- See Also:
-
objectIdsIn
Matches any of the objects identified by the providedObjectIds. UnlikeidsIn(Object...)this form supports entities with a compound PK.- Since:
- 5.0
- See Also:
-
objectIdsInCollection
- Since:
- 5.0
- See Also:
-
alias
Description copied from class:BasePropertyCreates alias with different name for this property- Overrides:
aliasin classBaseProperty<E extends Persistent>
-
outer
Description copied from interface:RelationshipPropertyReturns a version of this property that represents an OUTER join.- Specified by:
outerin interfaceRelationshipProperty<E extends Persistent>
-
enclosing
Description copied from class:BasePropertyThis operator allows to access properties of the enclosing query from the subquery. It allows multiple nesting levels to access a corresponding query in case of multiple levels of subqueries. Example:ObjectSelect.query(Artist.class) .where(ExpressionFactory.notExists(ObjectSelect.query(Painting.class) .where(Painting.TO_ARTIST.eq(Artist.ARTIST_ID_PK_PROPERTY.enclosing()))))- Overrides:
enclosingin classBaseProperty<E extends Persistent>- Returns:
- property that will be translated relative to parent query
-
idsIn(Object...)