Package org.apache.cayenne.reflect
Class BaseToManyProperty
java.lang.Object
org.apache.cayenne.reflect.BaseProperty
org.apache.cayenne.reflect.BaseArcProperty
org.apache.cayenne.reflect.BaseToManyProperty
- All Implemented Interfaces:
- ArcProperty,- PropertyDescriptor,- ToManyProperty
public abstract class BaseToManyProperty extends BaseArcProperty implements ToManyProperty
A generic superclass of CollectionProperty implementations.
- Since:
- 1.2
- 
Field SummaryFields inherited from class org.apache.cayenne.reflect.BaseArcPropertycomplimentaryReverseArcName, relationship, reverseDbPath, targetDescriptorFields inherited from class org.apache.cayenne.reflect.BasePropertyaccessor, owner
- 
Constructor SummaryConstructors Constructor Description BaseToManyProperty(ClassDescriptor owner, ClassDescriptor targetDescriptor, Accessor accessor, String reverseName)
- 
Method SummaryModifier and Type Method Description voidaddTarget(Object source, Object target, boolean setReverse)voidaddTargetDirectly(Object source, Object target)Adds value to collection, without triggering changing events This method is mostly for internal useprotected abstract ValueHoldercreateCollectionValueHolder(Object object)Creates a Collection for an object.protected ValueHolderensureCollectionValueHolderSet(Object object)Checks that an object's List field described by this property is set, injecting a List if needed.voidinjectValueHolder(Object object)Injects a List in the object if it hasn't been done yet.ObjectreadProperty(Object object)Returns a property value, inflating unresolved object if need.voidremoveTarget(Object source, Object target, boolean setReverse)voidremoveTargetDirectly(Object source, Object target)Removes value from collection, without triggering changing events This method is mostly for internal usebooleanvisit(PropertyVisitor visitor)A visitor accept method.voidwritePropertyDirectly(Object object, Object oldValue, Object newValue)Wraps list in a value holder that performs lazy faulting.Methods inherited from class org.apache.cayenne.reflect.BaseArcPropertygetComplimentaryReverseArc, getComplimentaryReverseDbRelationshipPath, getRelationship, getTargetDescriptor, isFault, setReverseMethods inherited from class org.apache.cayenne.reflect.BasePropertygetName, readPropertyDirectly, toString, writePropertyMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.cayenne.reflect.ArcPropertygetComplimentaryReverseArc, getComplimentaryReverseDbRelationshipPath, getRelationship, getTargetDescriptor, invalidate, isFaultMethods inherited from interface org.apache.cayenne.reflect.PropertyDescriptorgetName, readPropertyDirectly, writeProperty
- 
Constructor Details- 
BaseToManyPropertypublic BaseToManyProperty(ClassDescriptor owner, ClassDescriptor targetDescriptor, Accessor accessor, String reverseName)
 
- 
- 
Method Details- 
readPropertyDescription copied from interface:PropertyDescriptorReturns a property value, inflating unresolved object if need.- Specified by:
- readPropertyin interface- PropertyDescriptor
- Overrides:
- readPropertyin class- BaseProperty
- Throws:
- PropertyException
 
- 
writePropertyDirectlypublic void writePropertyDirectly(Object object, Object oldValue, Object newValue) throws PropertyExceptionWraps list in a value holder that performs lazy faulting.- Specified by:
- writePropertyDirectlyin interface- PropertyDescriptor
- Overrides:
- writePropertyDirectlyin class- BaseProperty
- Throws:
- PropertyException
 
- 
addTarget- Specified by:
- addTargetin interface- ToManyProperty
 
- 
addTargetDirectlyDescription copied from interface:ToManyPropertyAdds value to collection, without triggering changing events This method is mostly for internal use- Specified by:
- addTargetDirectlyin interface- ToManyProperty
- Throws:
- PropertyException
 
- 
removeTargetDirectlyDescription copied from interface:ToManyPropertyRemoves value from collection, without triggering changing events This method is mostly for internal use- Specified by:
- removeTargetDirectlyin interface- ToManyProperty
- Throws:
- PropertyException
 
- 
removeTarget- Specified by:
- removeTargetin interface- ToManyProperty
 
- 
visitDescription copied from interface:PropertyDescriptorA visitor accept method.- Specified by:
- visitin interface- PropertyDescriptor
- Specified by:
- visitin class- BaseArcProperty
- Returns:
- a status returned by the corresponding callback method of the visitor. It serves as an indication of whether peer properties processing is still needed.
 
- 
injectValueHolderInjects a List in the object if it hasn't been done yet.- Specified by:
- injectValueHolderin interface- PropertyDescriptor
- Overrides:
- injectValueHolderin class- BaseProperty
- Throws:
- PropertyException
 
- 
ensureCollectionValueHolderSetChecks that an object's List field described by this property is set, injecting a List if needed.- Throws:
- PropertyException
 
- 
createCollectionValueHolderCreates a Collection for an object.- Throws:
- PropertyException
 
 
-