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
ConstructorsModifierConstructorDescriptionprotectedMapProperty(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 ExpressioncontainsId(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 ExpressionnotContains(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, setInAllMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.cayenne.exp.property.PathProperty
dot, dot, dot, dot, dotMethods 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:
aliasin 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:
outerin interfaceRelationshipProperty<K>
-
getKeyType
- Returns:
- type of keys in represented attribute
-
getEntityType
- Returns:
- type of object entity in represented attribute
-
enclosing
- Overrides:
enclosingin classBaseProperty<Map<K,V extends Persistent>> - Returns:
- property that will be translated relative to parent query
-