[jbpm-commits] JBoss JBPM SVN: r6389 - jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console.

do-not-reply at jboss.org do-not-reply at jboss.org
Wed Jun 2 14:23:11 EDT 2010


Author: swiderski.maciej
Date: 2010-06-02 14:23:10 -0400 (Wed, 02 Jun 2010)
New Revision: 6389

Modified:
   jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console/ProcessEnginePluginImpl.java
Log:
BPMC-58: deploy process (definition and archives) through BPM console

Modified: jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console/ProcessEnginePluginImpl.java
===================================================================
--- jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console/ProcessEnginePluginImpl.java	2010-06-02 00:50:02 UTC (rev 6388)
+++ jbpm4/trunk/modules/integration/console/src/main/java/org/jbpm/integration/console/ProcessEnginePluginImpl.java	2010-06-02 18:23:10 UTC (rev 6389)
@@ -21,14 +21,18 @@
  */
 package org.jbpm.integration.console;
 
+import java.io.File;
+import java.io.FileInputStream;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.zip.ZipInputStream;
 
 import org.jboss.bpm.console.client.model.DeploymentRef;
 import org.jboss.bpm.console.client.model.JobRef;
 import org.jboss.bpm.console.server.plugin.ProcessEnginePlugin;
 import org.jbpm.api.Deployment;
 import org.jbpm.api.ManagementService;
+import org.jbpm.api.NewDeployment;
 import org.jbpm.api.ProcessDefinition;
 import org.jbpm.api.ProcessDefinitionQuery;
 import org.jbpm.api.RepositoryService;
@@ -119,4 +123,29 @@
     ManagementService mgmtService = this.processEngine.getManagementService();
     mgmtService.executeJob(jobId);
   }
+  
+  public String deployFile(File processFile) {
+    RepositoryService repositoryService = this.processEngine.getRepositoryService();
+    NewDeployment deployment = repositoryService.createDeployment();
+    deployment.setName(processFile.getName());
+    deployment.setTimestamp(System.currentTimeMillis());
+    
+    if (processFile.getName().endsWith(".xml")) {
+      
+      deployment.addResourceFromFile(processFile);
+      
+    } else if (processFile.getName().endsWith("ar")) {
+      
+      try {
+        FileInputStream fileInputStream = new FileInputStream(processFile);
+        ZipInputStream zipInputStream = new ZipInputStream(fileInputStream);
+        deployment.addResourcesFromZipInputStream(zipInputStream);
+      } catch (Exception e) {
+        throw new RuntimeException("couldn't read business archive "+processFile, e);
+      }
+
+    } 
+    
+    return deployment.deploy();
+  }
 }



More information about the jbpm-commits mailing list