[jboss-cvs] JBossAS SVN: r77200 - trunk/profileservice/src/main/org/jboss/profileservice/management/upload/remoting.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Aug 19 22:04:40 EDT 2008


Author: scott.stark at jboss.org
Date: 2008-08-19 22:04:40 -0400 (Tue, 19 Aug 2008)
New Revision: 77200

Modified:
   trunk/profileservice/src/main/org/jboss/profileservice/management/upload/remoting/DeployHandler.java
Log:
Add a distribute for a url reference

Modified: trunk/profileservice/src/main/org/jboss/profileservice/management/upload/remoting/DeployHandler.java
===================================================================
--- trunk/profileservice/src/main/org/jboss/profileservice/management/upload/remoting/DeployHandler.java	2008-08-20 00:46:58 UTC (rev 77199)
+++ trunk/profileservice/src/main/org/jboss/profileservice/management/upload/remoting/DeployHandler.java	2008-08-20 02:04:40 UTC (rev 77200)
@@ -23,6 +23,7 @@
 
 import java.io.IOException;
 import java.io.InputStream;
+import java.net.URL;
 import java.util.Arrays;
 import java.util.HashMap;
 import java.util.Map;
@@ -44,6 +45,7 @@
 import org.jboss.remoting.ServerInvoker;
 import org.jboss.remoting.callback.InvokerCallbackHandler;
 import org.jboss.remoting.stream.StreamInvocationHandler;
+import org.jboss.virtual.VFS;
 import org.jboss.virtual.VirtualFile;
 
 /**
@@ -131,22 +133,26 @@
       {
          Map payload = request.getRequestPayload();
          DeploymentID dtID = (DeploymentID) payload.get("DeploymentTargetID");
-         log.debug("invoke, payload: "+payload);
+         log.debug("invoke, payload: "+payload+", parameter: "+parameter);
          if( parameter.equals("getRepositoryNames"))
          {
             String[] names = (String[]) payload.get("names");
             DeploymentPhase phase = (DeploymentPhase) payload.get("phase");
             returnValue = getRepositoryNames(names, phase);
          }
-         if( parameter.equals("start") )
+         else if( parameter.equals("distribute") )
          {
+            returnValue = distribute(dtID);
+         }
+         else if( parameter.equals("start") )
+         {
             start(dtID);
          }
-         if( parameter.equals("stop") )
+         else if( parameter.equals("stop") )
          {
             stop(dtID);
          }
-         if( parameter.equals("undeploy") )
+         else if( parameter.equals("undeploy") )
          {
             undeploy(dtID);
          }
@@ -172,6 +178,33 @@
       return deploymentRepository.getRepositoryNames(names, phase);
    }
 
+   protected String distribute(DeploymentID dtID)
+      throws Exception
+   {
+      URL contentURL = dtID.getContentURL();
+      DeploymentPhase phase = dtID.getPhase();
+      VirtualFile vf = VFS.getRoot(contentURL);
+      log.info("Begin distribute, "+contentURL);
+      String repoName = null;
+      
+      // Prevent hot deployment scans from seeing in transition deployments
+      deploymentRepository.acquireDeploymentContentLock();
+      try
+      {
+         VFSDeployment vfsd = createDeployment(vf);
+         deploymentRepository.addDeployment(vf.getName(), vfsd, phase);
+         String[] names = {vf.getName()};
+         String[] rnames = deploymentRepository.getRepositoryNames(names, phase);
+         repoName = rnames[0];
+      }
+      finally
+      {
+         deploymentRepository.releaseDeploymentContentLock();
+      }
+      log.info("End distribute, "+contentURL);
+      return repoName;
+   }
+
    protected void start(DeploymentID dtID)
       throws Exception
    {
@@ -219,11 +252,11 @@
       throws Exception
    {
       String[] names = dtID.getNames();
-      log.info("undeploy, "+Arrays.asList(names));
+      log.debug("undeploy, "+Arrays.asList(names));
       for(String name : names)
       {
          deploymentRepository.removeDeployment(name, dtID.getPhase());
-         log.info("Undeployed: "+name);
+         log.debug("Undeployed: "+name);
       }
    }
 




More information about the jboss-cvs-commits mailing list