1 17 18 package org.apache.geronimo.deployment.plugin.local; 19 20 import java.io.File ; 21 import java.io.InputStream ; 22 23 import javax.enterprise.deploy.shared.CommandType ; 24 import javax.enterprise.deploy.spi.Target ; 25 26 import org.apache.geronimo.kernel.Kernel; 27 28 31 public class DistributeCommand extends AbstractDeployCommand { 32 protected final Target [] targetList; 33 34 public DistributeCommand(Kernel kernel, Target [] targetList, File moduleArchive, File deploymentPlan) { 35 super(CommandType.DISTRIBUTE, kernel, moduleArchive, deploymentPlan, null, null, false); 36 this.targetList = targetList; 37 } 38 39 public DistributeCommand(Kernel kernel, Target [] targetList, InputStream moduleStream, InputStream deploymentStream) { 40 super(CommandType.DISTRIBUTE, kernel, null, null, moduleStream, deploymentStream, true); 41 this.targetList = targetList; 42 } 43 44 public void run() { 45 try { 46 if (spool) { 47 if (moduleStream != null) { 48 moduleArchive = createTempFile(); 49 copyTo(moduleArchive, moduleStream); 50 } 51 if (deploymentStream != null) { 52 deploymentPlan = createTempFile(); 53 copyTo(deploymentPlan, deploymentStream); 54 } 55 } 56 if (deployer == null) { 57 return; 58 } 59 for(int i = 0; i < targetList.length; i++) { 60 doDeploy(targetList[i], true); 61 } 62 } catch (Exception e) { 63 doFail(e); 64 } finally { 65 if (spool) { 66 if (moduleArchive != null) { 67 moduleArchive.delete(); 68 } 69 if (deploymentPlan != null) { 70 deploymentPlan.delete(); 71 } 72 } 73 } 74 } 75 76 } 77 | Popular Tags |