1 19 package org.apache.cayenne.access.types; 20 21 import org.apache.cayenne.util.Util; 22 23 30 class SubclassTypeFactory implements ExtendedTypeFactory { 31 32 private ExtendedType type; 33 private Class javaClass; 34 35 SubclassTypeFactory(ExtendedType type) { 36 this.type = type; 37 38 try { 39 javaClass = Util.getJavaClass(type.getClassName()); 40 41 if (javaClass.isArray() 43 || javaClass.equals(Object .class) 44 || javaClass.isPrimitive()) { 45 javaClass = null; 46 } 47 } 48 catch (ClassNotFoundException e) { 49 } 51 } 52 53 public ExtendedType getType(Class objectClass) { 54 55 if ((javaClass != null) && javaClass.isAssignableFrom(objectClass)) { 56 return type; 57 } 58 59 return null; 60 } 61 62 } 63 | Popular Tags |