Package org.apache.cayenne.exp.property
Class MapProperty<K,V extends Persistent>
java.lang.Object
org.apache.cayenne.exp.property.BaseProperty<Map<K,V>>
org.apache.cayenne.exp.property.MapProperty<K,V>
- All Implemented Interfaces:
PathProperty<Map<K,
,V>> Property<Map<K,
,V>> RelationshipProperty<Map<K,
V>>
public class MapProperty<K,V extends Persistent>
extends BaseProperty<Map<K,V>>
implements RelationshipProperty<Map<K,V>>
Property that represents to-many relationship mapped on
Map
.- Since:
- 4.2
- See Also:
-
Field Summary
FieldsFields inherited from class org.apache.cayenne.exp.property.BaseProperty
expressionSupplier, name, type
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
MapProperty
(String name, Expression expression, Class<K> keyType, Class<V> entityType) Constructs a new property with the given name and expression -
Method Summary
Modifier and TypeMethodDescriptionCreates alias with different name for this propertycontains
(Collection<V> values) final Expression
containsId
(Object id) containsId
(Object firstId, Object... moreId) containsId
(Collection<Object> ids) flat()
Create new "flat" property for toMany relationship.notContains
(Collection<V> values) notContains
(V value) final Expression
notContains
(V firstValue, V... moreValues) notContainsId
(Object id) notContainsId
(Object firstId, Object... moreId) notContainsId
(Collection<Object> ids) outer()
Returns a version of this property that represents an OUTER join.Methods inherited from class org.apache.cayenne.exp.property.BaseProperty
asc, ascInsensitive, ascInsensitives, ascs, count, countDistinct, desc, descInsensitive, descInsensitives, descs, eq, eq, equals, function, function, getAlias, getExpression, getFrom, getFromAll, getName, getType, hashCode, in, in, in, isFalse, isNotNull, isNull, isTrue, ne, ne, nin, nin, nin, operator, operator, path, setIn, setInAll
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
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
-
Field Details
-
keyType
-
entityType
-
-
Constructor Details
-
MapProperty
Constructs a new property with the given name and expression- Parameters:
name
- of the property (will be used as alias for the expression)expression
- expression for propertykeyType
- type of keys of the propertyentityType
- type of related entities- See Also:
-
-
Method Details
-
flat
Create new "flat" property for toMany relationship.
Example:
List<Object[]> result = ObjectSelect .columnQuery(Artist.class, Artist.ARTIST_NAME, Artist.PAINTING_ARRAY.flat(Painting.class)) .select(context);
-
contains
- Returns:
- An expression representing equality to a value.
-
notContains
- Returns:
- An expression representing inequality to a value.
-
contains
- Returns:
- An expression for finding objects with values in the given set.
-
contains
- Returns:
- An expression for finding objects with values in the given set.
-
notContains
- Returns:
- An expression for finding objects with values not in the given set.
-
notContains
- Returns:
- An expression for finding objects with values not in the given set.
-
containsId
- Parameters:
id
- object id- Returns:
- An expression for finding object with given id.
-
containsId
- Returns:
- An expression for finding objects with given id set
-
containsId
- Returns:
- An expression for finding objects with given id set.
-
notContainsId
- Parameters:
id
- object id- Returns:
- An expression for finding object without given id.
-
notContainsId
- Returns:
- An expression for finding objects without given id set.
-
notContainsId
- Returns:
- An expression for finding objects without given id set.
-
alias
Creates alias with different name for this property- Overrides:
alias
in classBaseProperty<Map<K,
V extends Persistent>>
-
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.- Specified by:
outer
in interfaceRelationshipProperty<K>
-
getKeyType
- Returns:
- type of keys in represented attribute
-
getEntityType
- Returns:
- type of object entity in represented attribute
-
enclosing
- Overrides:
enclosing
in classBaseProperty<Map<K,
V extends Persistent>> - Returns:
- property that will be translated relative to parent query
-