// handle known interfaces
if (User.class.isAssignableFrom(targetClass)) {
return new UserImpl();
}
if (UserGroup.class.isAssignableFrom(targetClass)) {
return new UserGroupImpl();
}
if (UserPrime.class.isAssignableFrom(targetClass)) {
return new UserPrimeImpl();
}
if (UserGroupPrime.class.isAssignableFrom(targetClass)) {