Interface PropertyAccess
-
- All Known Implementing Classes:
PropertyAccessImpl
public interface PropertyAccess
A wrapper around the JavaBean Introspector that allows more manageable access to JavaBean properties of objects. Only provides access to simple properties. Indexed properties are ignored. Starting in Tapestry 5.2, public fields can now be accessed as if they were properly JavaBean properties. Where there is a name conflict, the true property will be favored over the field access.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
clearCache()
Discards all stored property access information, discarding all created class adapters.Object
get(Object instance, String propertyName)
Reads the value of a property.ClassPropertyAdapter
getAdapter(Class forClass)
Returns the adapter used to access properties within the indicated class.ClassPropertyAdapter
getAdapter(Object instance)
Returns the adapter for a particular object instance.Annotation
getAnnotation(Object instance, String propertyName, Class<? extends Annotation> annotationClass)
Returns the annotation of a given property for the specified type if such an annotation is present, else null.void
set(Object instance, String propertyName, Object value)
Updates the value of a property.
-
-
-
Method Detail
-
get
Object get(Object instance, String propertyName)
Reads the value of a property.- Throws:
UnsupportedOperationException
- if the property is write onlyIllegalArgumentException
- if property does not exist
-
set
void set(Object instance, String propertyName, Object value)
Updates the value of a property.- Throws:
UnsupportedOperationException
- if the property is read onlyIllegalArgumentException
- if property does not exist
-
getAnnotation
Annotation getAnnotation(Object instance, String propertyName, Class<? extends Annotation> annotationClass)
Returns the annotation of a given property for the specified type if such an annotation is present, else null. A convenience over invokinggetAdapter(Object)
.ClassPropertyAdapter.getPropertyAdapter(String)
.AnnotationProvider.getAnnotation(Class)
- Parameters:
instance
- the object to read a value frompropertyName
- the name of the property to read (case is ignored)annotationClass
- the type of annotation to return- Throws:
IllegalArgumentException
- if property does not exist- Since:
- 5.4
-
getAdapter
ClassPropertyAdapter getAdapter(Object instance)
Returns the adapter for a particular object instance. A convienience over invokinggetAdapter(Class)
.
-
getAdapter
ClassPropertyAdapter getAdapter(Class forClass)
Returns the adapter used to access properties within the indicated class.
-
clearCache
void clearCache()
Discards all stored property access information, discarding all created class adapters.
-
-