Package org.apache.cayenne.reflect
Interface PropertyDescriptor
-
- All Known Subinterfaces:
ArcProperty
,AttributeProperty
,Property
,ToManyMapProperty
,ToManyProperty
,ToOneProperty
- All Known Implementing Classes:
BaseArcProperty
,BaseProperty
,BaseToManyProperty
,BaseToOneProperty
,SimpleAttributeProperty
public interface PropertyDescriptor
Defines bean property API used by Cayenne to access object data, do faulting and graph maintenance tasks.- Since:
- 4.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description String
getName()
Returns property name.void
injectValueHolder(Object object)
If a property is implemented as a ValueHolder, this operation would create an unfaulted value holder and inject it into the object, if an object doesn't have it set yet.Object
readProperty(Object object)
Returns a property value, inflating unresolved object if need.Object
readPropertyDirectly(Object object)
Returns a property value of an object without disturbing the object fault status.boolean
visit(PropertyVisitor visitor)
A visitor accept method.void
writeProperty(Object object, Object oldValue, Object newValue)
Sets a property value, inflating unresolved object if need.void
writePropertyDirectly(Object object, Object oldValue, Object newValue)
Sets a property value of an object without disturbing the object fault status.
-
-
-
Method Detail
-
getName
String getName()
Returns property name.
-
readPropertyDirectly
Object readPropertyDirectly(Object object) throws PropertyException
Returns a property value of an object without disturbing the object fault status.- Throws:
PropertyException
-
readProperty
Object readProperty(Object object) throws PropertyException
Returns a property value, inflating unresolved object if need.- Throws:
PropertyException
-
writePropertyDirectly
void writePropertyDirectly(Object object, Object oldValue, Object newValue) throws PropertyException
Sets a property value of an object without disturbing the object fault status. Old value of the property is specified as a hint and can be ignored by the property implementor.- Throws:
PropertyException
-
writeProperty
void writeProperty(Object object, Object oldValue, Object newValue) throws PropertyException
Sets a property value, inflating unresolved object if need. Old value of the property is specified as a hint and can be ignored by the property implementor.- Throws:
PropertyException
-
visit
boolean visit(PropertyVisitor visitor)
A visitor accept method.- 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.
-
injectValueHolder
void injectValueHolder(Object object) throws PropertyException
If a property is implemented as a ValueHolder, this operation would create an unfaulted value holder and inject it into the object, if an object doesn't have it set yet.- Throws:
PropertyException
-
-