Class RootValueRetrieverImpl<T>
- java.lang.Object
-
- net.officefloor.web.value.retrieve.RootValueRetrieverImpl<T>
-
- All Implemented Interfaces:
ValueRetriever<T>
public class RootValueRetrieverImpl<T> extends java.lang.Object implements ValueRetriever<T>
ValueRetriever
implementation.- Author:
- Daniel Sagenschneider
-
-
Constructor Summary
Constructors Constructor Description RootValueRetrieverImpl(PropertyMetaData[] properties, boolean isCaseInsensitive)
Initiate.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <A> A
getValueAnnotation(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.Object
retrieveValue(T object, java.lang.String name)
Retrieves the value from the object graph.
-
-
-
Constructor Detail
-
RootValueRetrieverImpl
public RootValueRetrieverImpl(PropertyMetaData[] properties, boolean isCaseInsensitive)
Initiate.- Parameters:
properties
-PropertyMetaData
instances.isCaseInsensitive
- Indicates if case insensitive.
-
-
Method Detail
-
getValueType
public java.lang.Class<?> getValueType(java.lang.String name) throws HttpException
Description copied from interface:ValueRetriever
Obtains the value type for the property on the object graph. It may benull
indicating the path does not exist on the bean graph.- Specified by:
getValueType
in interfaceValueRetriever<T>
- Parameters:
name
- Property name.- Returns:
- Value type. May be
null
if the path not exists. - Throws:
HttpException
- If fails to determine if value is retrievable.
-
getValueAnnotation
public <A> A getValueAnnotation(java.lang.String name, java.lang.Class<A> annotationType) throws HttpException
Description copied from interface:ValueRetriever
Obtains the value annotation for the property on the object graph. It may benull
indicating either:- the path does not exist on the bean graph, or
- no annotation by type for property
- Specified by:
getValueAnnotation
in interfaceValueRetriever<T>
- Type Parameters:
A
-Annotation
type.- Parameters:
name
- Property name.annotationType
- Annotation type.- Returns:
- Annotation. May be
null
. - Throws:
HttpException
- If fails to obtain annotation.
-
retrieveValue
public java.lang.Object retrieveValue(T object, java.lang.String name) throws HttpException
Description copied from interface:ValueRetriever
Retrieves the value from the object graph.- Specified by:
retrieveValue
in interfaceValueRetriever<T>
- Parameters:
object
- Root object of the object graph.name
- Property name.- Returns:
- Property value.
- Throws:
HttpException
- If fails to retrieve the value.
-
-