package org.jboss.test.deployers.deployer.support; import java.io.Serializable; import java.util.Map; import org.jboss.deployers.spi.DeploymentException; import org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer; import org.jboss.deployers.spi.deployer.managed.ManagedObjectCreator; import org.jboss.deployers.structure.spi.DeploymentUnit; import org.jboss.managed.api.ManagedObject; import org.jboss.managed.api.factory.ManagedObjectFactory; import org.jboss.managed.plugins.factory.ManagedObjectFactoryBuilder; public class MCFDeployer extends AbstractSimpleRealDeployer<DSMetaData> implements ManagedObjectCreator { public MCFDeployer() { super(DSMetaData.class); } @Override public void deploy(DeploymentUnit unit, DSMetaData deployment) throws DeploymentException { } public void build(DeploymentUnit unit, Map<String, ManagedObject> managedObjects) throws DeploymentException { ManagedObjectFactory factory = ManagedObjectFactoryBuilder.create(); Map<String, Object> attachments = unit.getAttachments(); for(Object metaData : attachments.values() ) { if( metaData instanceof Serializable ) { Serializable smetaData = Serializable.class.cast(metaData); ManagedObject mo = factory.initManagedObject(smetaData, null, null); if (mo != null) managedObjects.put(mo.getName(), mo); } } } }