Package org.apache.cayenne.access
Class ToManyList<E>
- java.lang.Object
-
- org.apache.cayenne.util.RelationshipFault<E>
-
- org.apache.cayenne.util.PersistentObjectList<E>
-
- org.apache.cayenne.access.ToManyList<E>
-
- All Implemented Interfaces:
Serializable,Iterable<E>,Collection<E>,List<E>,PersistentObjectCollection<E>,ValueHolder<List<E>>
public class ToManyList<E> extends PersistentObjectList<E> implements Serializable
A list that holds objects for to-many relationships. All operations, except for resolving the list from DB, are not synchronized. The safest way to implement custom synchronization is to synchronize on parent ObjectStore.- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.apache.cayenne.util.PersistentObjectList
addedToUnresolved, objectList, removedFromUnresolved
-
Fields inherited from class org.apache.cayenne.util.RelationshipFault
relationshipName, relationshipOwner
-
-
Constructor Summary
Constructors Constructor Description ToManyList(Persistent source, String relationship)Creates ToManyList.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description inthashCode()protected voidpostprocessAdd(E addedObject)protected voidpostprocessAdd(Collection<? extends E> collection)protected voidpostprocessRemove(E removedObject)protected voidpostprocessRemove(Collection<? extends E> collection)protected booleanshouldAddToRemovedFromUnresolvedList(Object object)StringtoString()protected voidupdateReverse(List<E> resolved)-
Methods inherited from class org.apache.cayenne.util.PersistentObjectList
add, add, addAll, addAll, addDirectly, addLocal, clear, clearLocalChanges, contains, containsAll, equals, get, getValue, getValueDirectly, indexOf, invalidate, isEmpty, isFault, iterator, lastIndexOf, listIterator, listIterator, mergeLocalChanges, remove, remove, removeAll, removeDirectly, removeLocal, resolvedObjectList, retainAll, set, setObjectList, setValue, setValueDirectly, size, subList, toArray, toArray
-
Methods inherited from class org.apache.cayenne.util.RelationshipFault
getRelationshipName, getRelationshipOwner, isTransientParent, isUncommittedParent, resolveFromDB
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArray
-
Methods inherited from interface java.util.List
replaceAll, sort, spliterator
-
-
-
-
Constructor Detail
-
ToManyList
public ToManyList(Persistent source, String relationship)
Creates ToManyList.- Since:
- 1.1
-
-
Method Detail
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfaceCollection<E>- Specified by:
hashCodein interfaceList<E>- Overrides:
hashCodein classPersistentObjectList<E>
-
shouldAddToRemovedFromUnresolvedList
protected boolean shouldAddToRemovedFromUnresolvedList(Object object)
- Overrides:
shouldAddToRemovedFromUnresolvedListin classPersistentObjectList<E>- Returns:
- whether object should be added to
PersistentObjectList.removedFromUnresolvedduring removal
-
toString
public String toString()
- Overrides:
toStringin classPersistentObjectList<E>
-
postprocessAdd
protected void postprocessAdd(Collection<? extends E> collection)
- Overrides:
postprocessAddin classPersistentObjectList<E>
-
postprocessRemove
protected void postprocessRemove(Collection<? extends E> collection)
- Overrides:
postprocessRemovein classPersistentObjectList<E>
-
postprocessAdd
protected void postprocessAdd(E addedObject)
- Overrides:
postprocessAddin classPersistentObjectList<E>
-
postprocessRemove
protected void postprocessRemove(E removedObject)
- Overrides:
postprocessRemovein classPersistentObjectList<E>
-
updateReverse
protected void updateReverse(List<E> resolved)
- Overrides:
updateReversein classRelationshipFault<E>
-
-