Interface ValueRetriever<T>
-
- All Known Implementing Classes:
PropertyValueRetrieverImpl,RootValueRetrieverImpl
public interface ValueRetriever<T>Retrieves a value from an object graph.- Author:
- Daniel Sagenschneider
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <A> AgetValueAnnotation(java.lang.String name, java.lang.Class<A> annotationType)Obtains the value annotation for the property on the object graph.java.lang.Class<?>getValueType(java.lang.String name)Obtains the value type for the property on the object graph.java.lang.ObjectretrieveValue(T object, java.lang.String name)Retrieves the value from the object graph.
-
-
-
Method Detail
-
retrieveValue
java.lang.Object retrieveValue(T object, java.lang.String name) throws HttpException
Retrieves the value from the object graph.- Parameters:
object- Root object of the object graph.name- Property name.- Returns:
- Property value.
- Throws:
HttpException- If fails to retrieve the value.
-
getValueType
java.lang.Class<?> getValueType(java.lang.String name) throws HttpExceptionObtains the value type for the property on the object graph. It may benullindicating the path does not exist on the bean graph.- Parameters:
name- Property name.- Returns:
- Value type. May be
nullif the path not exists. - Throws:
HttpException- If fails to determine if value is retrievable.
-
getValueAnnotation
<A> A getValueAnnotation(java.lang.String name, java.lang.Class<A> annotationType) throws HttpExceptionObtains the value annotation for the property on the object graph. It may benullindicating either:- the path does not exist on the bean graph, or
- no annotation by type for property
- Type Parameters:
A-Annotationtype.- Parameters:
name- Property name.annotationType- Annotation type.- Returns:
- Annotation. May be
null. - Throws:
HttpException- If fails to obtain annotation.
-
-