The current org.jboss.managed.plugins.factory.AbstractManagedObjectFactory has too much going on to be reusable. In particular, the InstanceClassFactory(Serializable), ManagedObjectPopulator(Serializable) parameterized interfaces cannot be changed by subclasses, for example, this cannot be done:
public class LocalDSInstanceClassFactory extends AbstractManagedObjectFactory implements InstanceClassFactory<LocalDataSourceDeploymentMetaData> { ... } ... ManagedObjectFactory mof = ManagedObjectFactory.getInstance(); LocalDSInstanceClassFactory icf = new LocalDSInstanceClassFactory(); mof.setInstanceClassFactory(LocalDataSourceDeploymentMetaData.class, icf);