interfaces.add(Mutable.class);
}
interfaces.add(Instance.class);
interfaces.add(Proxy.class);
ProxyFactory factory = new ProxyFactory()
{
@Override
protected ClassLoader getClassLoader()
{
return beanClass.getClassLoader();
}
};
factory.setSuperclass( type==JAVA_BEAN ? beanClass : Object.class );
factory.setInterfaces( interfaces.toArray( new Class[0] ) );
factory.setFilter(FINALIZE_FILTER);
return factory.createClass();
}