[jboss-cvs] jbosside/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/publishers ...

Robert Stryker rawblem at gmail.com
Tue Sep 19 12:09:49 EDT 2006


  User: rawb    
  Date: 06/09/19 12:09:49

  Modified:    as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/publishers 
                        JstPublisher.java
  Log:
  wtp 1.5.1 compatability
  
  Revision  Changes    Path
  1.6       +58 -2     jbosside/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/publishers/JstPublisher.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: JstPublisher.java
  ===================================================================
  RCS file: /cvsroot/jboss/jbosside/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/publishers/JstPublisher.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -b -r1.5 -r1.6
  --- JstPublisher.java	27 Jul 2006 06:34:04 -0000	1.5
  +++ JstPublisher.java	19 Sep 2006 16:09:49 -0000	1.6
  @@ -21,11 +21,14 @@
    */
   package org.jboss.ide.eclipse.as.core.server.publishers;
   
  +import java.io.File;
  +import java.io.IOException;
   import java.net.URL;
   import java.util.Properties;
   
   import org.eclipse.ant.internal.ui.IAntUIConstants;
   import org.eclipse.ant.internal.ui.launchConfigurations.IAntLaunchConfigurationConstants;
  +import org.eclipse.core.resources.IFile;
   import org.eclipse.core.runtime.CoreException;
   import org.eclipse.core.runtime.FileLocator;
   import org.eclipse.core.runtime.IPath;
  @@ -43,13 +46,16 @@
   import org.eclipse.jst.server.core.IEnterpriseApplication;
   import org.eclipse.jst.server.core.IWebModule;
   import org.eclipse.jst.server.core.PublishUtil;
  -import org.eclipse.jst.server.generic.core.internal.publishers.AbstractModuleAssembler;
  +import org.eclipse.jst.server.generic.core.internal.CorePlugin;
  +import org.eclipse.jst.server.generic.core.internal.publishers.ModulePackager;
   import org.eclipse.ui.externaltools.internal.model.IExternalToolConstants;
   import org.eclipse.wst.server.core.IModule;
   import org.eclipse.wst.server.core.IModuleType;
   import org.eclipse.wst.server.core.IServer;
   import org.eclipse.wst.server.core.internal.DeletedModule;
   import org.eclipse.wst.server.core.internal.ServerPlugin;
  +import org.eclipse.wst.server.core.model.IModuleFolder;
  +import org.eclipse.wst.server.core.model.IModuleResource;
   import org.eclipse.wst.server.core.model.ServerBehaviourDelegate;
   import org.eclipse.wst.server.core.util.ProjectModule;
   import org.jboss.ide.eclipse.as.core.JBossServerCorePlugin;
  @@ -121,7 +127,7 @@
   	}
   
   	
  -	public class JBossAntPublisher extends AbstractModuleAssembler {
  +	public class JBossAntPublisher {
   		
   		public static final int WAR = 1;
   		public static final int EAR = 2;
  @@ -330,6 +336,56 @@
   			return parent;
   		}
   		
  +		protected void packModule(IModule module, String deploymentUnitName, IPath destination)throws CoreException {
  +			
  +			
  +			String dest = destination.append(deploymentUnitName).toString();
  +			ModulePackager packager = null;
  +			try {
  +				packager = new ModulePackager(dest, false);
  +				ProjectModule pm = (ProjectModule) module.loadAdapter(ProjectModule.class, null);
  +				IModuleResource[] resources = pm.members();
  +				for (int i = 0; i < resources.length; i++) {
  +					doPackModule(resources[i], packager);
  +				}
  +			} catch (IOException e) {
  +				IStatus status = new Status(IStatus.ERROR, CorePlugin.PLUGIN_ID, 0,
  +						"unable to assemble module", e); //$NON-NLS-1$
  +				throw new CoreException(status);
  +			}
  +			finally{
  +				try{
  +					packager.finished();
  +				}
  +				catch(IOException e){
  +					//unhandled
  +				}
  +			}
  +		}
  +
  +		private void doPackModule(IModuleResource resource, ModulePackager packager) throws CoreException, IOException{
  +				if (resource instanceof IModuleFolder) {
  +					IModuleFolder mFolder = (IModuleFolder)resource;
  +					IModuleResource[] resources = mFolder.members();
  +
  +					packager.writeFolder(resource.getModuleRelativePath().append(resource.getName()).toPortableString());
  +
  +					for (int i = 0; resources!= null && i < resources.length; i++) {
  +						doPackModule(resources[i], packager);
  +					}
  +				} else {
  +					String destination = resource.getModuleRelativePath().append(resource.getName()).toPortableString();
  +					IFile file = (IFile) resource.getAdapter(IFile.class);
  +					if (file != null)
  +						packager.write(file, destination);
  +					else {
  +						File file2 = (File) resource.getAdapter(File.class);
  +						packager.write(file2, destination);
  +					}
  +				}
  +		}
  +
  +		
   		protected IPath assembleOther(IProgressMonitor monitor) throws CoreException {
   			copyModule(module[0],monitor);
   			return null;
  
  
  



More information about the jboss-cvs-commits mailing list