From e21dd1d8283af88705b3411057fb6a4759d017a7 Mon Sep 17 00:00:00 2001 From: Oliver Gierke Date: Sun, 21 Aug 2011 16:30:20 +0200 Subject: [PATCH] =?UTF-8?q?DATACMNS-63=20-=20Added=20fromReturnTypeOf(?= =?UTF-8?q?=E2=80=A6)=20to=20ClassTypeInformation.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data/util/ClassTypeInformation.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/spring-data-commons-core/src/main/java/org/springframework/data/util/ClassTypeInformation.java b/spring-data-commons-core/src/main/java/org/springframework/data/util/ClassTypeInformation.java index e98685cde..c1047eb07 100644 --- a/spring-data-commons-core/src/main/java/org/springframework/data/util/ClassTypeInformation.java +++ b/spring-data-commons-core/src/main/java/org/springframework/data/util/ClassTypeInformation.java @@ -15,6 +15,7 @@ */ package org.springframework.data.util; +import java.lang.reflect.Method; import java.lang.reflect.Type; import java.lang.reflect.TypeVariable; import java.util.Map; @@ -40,6 +41,17 @@ public class ClassTypeInformation extends TypeDiscoverer { public static TypeInformation from(Class type) { return new ClassTypeInformation(type); } + + /** + * Creates a {@link TypeInformation} from the given method's return type. + * + * @param method + * @return + */ + @SuppressWarnings({ "unchecked", "rawtypes" }) + public static TypeInformation fromReturnTypeOf(Method method) { + return new ClassTypeInformation(method.getDeclaringClass()).createInfo(method.getGenericReturnType()); + } /** * Creates {@link ClassTypeInformation} for the given type.