Package org.stringtemplate.v4.misc
Class ObjectModelAdaptor<T>
- java.lang.Object
-
- org.stringtemplate.v4.misc.ObjectModelAdaptor<T>
-
- All Implemented Interfaces:
ModelAdaptor<T>
public class ObjectModelAdaptor<T> extends java.lang.Object implements ModelAdaptor<T>
-
-
Field Summary
Fields Modifier and Type Field Description protected static java.lang.reflect.MemberINVALID_MEMBERprotected static java.util.Map<java.lang.Class<?>,java.util.Map<java.lang.String,java.lang.reflect.Member>>membersCache
-
Constructor Summary
Constructors Constructor Description ObjectModelAdaptor()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected static java.lang.reflect.MemberfindMember(java.lang.Class<?> clazz, java.lang.String memberName)java.lang.ObjectgetProperty(Interpreter interp, ST self, T model, java.lang.Object property, java.lang.String propertyName)Lookup property name inoand return its value.protected java.lang.ObjectthrowNoSuchProperty(java.lang.Class<?> clazz, java.lang.String propertyName, java.lang.Exception cause)protected static java.lang.reflect.FieldtryGetField(java.lang.Class<?> clazz, java.lang.String fieldName)protected static java.lang.reflect.MethodtryGetMethod(java.lang.Class<?> clazz, java.lang.String methodName)
-
-
-
Method Detail
-
getProperty
public java.lang.Object getProperty(Interpreter interp, ST self, T model, java.lang.Object property, java.lang.String propertyName) throws STNoSuchPropertyException
Description copied from interface:ModelAdaptorLookup property name inoand return its value.propertyis normally aStringbut doesn't have to be. E.g., ifoisMap,propertycould be any key type. If we need to convert toString, then it's done bySTand passed in here.- Specified by:
getPropertyin interfaceModelAdaptor<T>- Throws:
STNoSuchPropertyException
-
findMember
protected static java.lang.reflect.Member findMember(java.lang.Class<?> clazz, java.lang.String memberName)
-
tryGetMethod
protected static java.lang.reflect.Method tryGetMethod(java.lang.Class<?> clazz, java.lang.String methodName)
-
tryGetField
protected static java.lang.reflect.Field tryGetField(java.lang.Class<?> clazz, java.lang.String fieldName)
-
throwNoSuchProperty
protected java.lang.Object throwNoSuchProperty(java.lang.Class<?> clazz, java.lang.String propertyName, java.lang.Exception cause)
-
-