// TODO: a lot
// must come before JBossSessionBeanMetaData
if(beanMetaData instanceof JBossSessionBean31MetaData)
return (T) new JBossSessionBean31Effigy(info.getClassLoader(), (JBossSessionBean31MetaData) beanMetaData);
if(beanMetaData instanceof JBossSessionBeanMetaData)
return (T) new JBossSessionBeanEffigy(info.getClassLoader(), (JBossSessionBeanMetaData) beanMetaData);
// generic fallback
return expectedType.cast(new JBossEnterpriseBeanEffigy(info.getClassLoader(), beanMetaData));
}