HHH-7798 Moved determineDeclaredType to AttributeBuilder

This commit is contained in:
Brett Meyer 2012-11-19 12:33:13 -05:00
parent 58f67d59bd
commit 95512c749b
2 changed files with 17 additions and 12 deletions

View File

@ -563,6 +563,21 @@ public static ParameterizedType getSignatureType(Member member) {
if ( type instanceof Class ) return null;
return (ParameterizedType) type;
}
public static Class<?> determineDeclaredType( Member member ) {
final Class<?> declaredType;
// we can support method or field members here. Is there really any other valid type?
if ( Field.class.isInstance( member ) ) {
declaredType = ( (Field) member ).getType();
}
else if ( Method.class.isInstance( member ) ) {
declaredType = ( (Method) member ).getReturnType();
}
else {
throw new IllegalArgumentException( "Cannot determine java-type from given member [" + member + "]" );
}
return declaredType;
}
public static PluralAttribute.CollectionType determineCollectionType(Class javaType) {
if ( java.util.List.class.isAssignableFrom( javaType ) ) {

View File

@ -53,18 +53,8 @@ public BaseAttributeMetadata(
this.ownerType = ownerType;
this.member = member;
this.persistentAttributeType = persistentAttributeType;
final Class declaredType;
// we can support method or field members here. Is there really any other valid type?
if ( Field.class.isInstance( member ) ) {
declaredType = ( (Field) member ).getType();
}
else if ( Method.class.isInstance( member ) ) {
declaredType = ( (Method) member ).getReturnType();
}
else {
throw new IllegalArgumentException( "Cannot determine java-type from given member [" + member + "]" );
}
this.javaType = declaredType;
this.javaType = (Class<Y>) AttributeBuilder.determineDeclaredType( member );
}
@Override