code: @SuppressWarnings("unchecked")
  	public static <T> T getFieldAnnotationValue(String annotationProperty, Field field, Class<? extends Annotation> annotationClass, Class<T> ofType) {
  		Object annotation = field.getAnnotation(annotationClass);
  
  		T result = null;
  		if (annotation != null) {
  			try {
  				Method method = annotationClass.getMethod(annotationProperty, new Class[] {});
  				result = (T) method.invoke(annotation, new Object[] {});
  			} catch (Exception e) {
  				throw new RuntimeException(e);
  			}
  		}
  		return result;
  	}
docs: <p>
  getFieldAnnotationValue.
  </p>
  
  @param annotationProperty
  a {@link java.lang.String} object.
  @param field
  a {@link java.lang.reflect.Field} object.
  @param annotationClass
  a {@link java.lang.Class} object.
  @param ofType
  a {@link java.lang.Class} object.
  @param <T>
  a T object.
  @return a T object.