[jboss-cvs] jbosside/core/plugins/org.jboss.ide.eclipse.packages.core/src/main/org/jboss/ide/eclipse/packages/core/project/build ...

Marshall Culpepper mculpepper at jboss.com
Wed Mar 7 17:32:47 EST 2007


  User: mculpepper
  Date: 07/03/07 17:32:47

  Modified:    core/plugins/org.jboss.ide.eclipse.packages.core/src/main/org/jboss/ide/eclipse/packages/core/project/build 
                        PackageBuildDelegate.java
  Log:
  finishedBuildingPackage is now sent AFTER the truezip file is umount'd
  
  Revision  Changes    Path
  1.6       +24 -17    jbosside/core/plugins/org.jboss.ide.eclipse.packages.core/src/main/org/jboss/ide/eclipse/packages/core/project/build/PackageBuildDelegate.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: PackageBuildDelegate.java
  ===================================================================
  RCS file: /cvsroot/jboss/jbosside/core/plugins/org.jboss.ide.eclipse.packages.core/src/main/org/jboss/ide/eclipse/packages/core/project/build/PackageBuildDelegate.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -b -r1.5 -r1.6
  --- PackageBuildDelegate.java	2 Mar 2007 21:55:20 -0000	1.5
  +++ PackageBuildDelegate.java	7 Mar 2007 22:32:47 -0000	1.6
  @@ -223,9 +223,11 @@
   			}
   		});
   		
  +		TruezipUtil.umountAll();
   		BuildFileOperations.refreshPackage(pkg);
   		
   		monitor.done();
  +		
   		events.fireFinishedBuildingPackage(pkg);
   	}
   	
  @@ -269,7 +271,6 @@
   		building = true;
   		
   		buildPackage(pkg, monitor);
  -		TruezipUtil.umountAll();
   		
   		building = false;
   	}
  @@ -298,12 +299,12 @@
   		}
   		monitor.done();
   		
  +		ArrayList packagesBeingChanged = null;
   		try {
   			if (kind == IncrementalProjectBuilder.INCREMENTAL_BUILD || kind == IncrementalProjectBuilder.AUTO_BUILD)
   			{
   				events.fireStartedBuild(project);
  -				incrementalBuild(args, monitor);
  -				events.fireFinishedBuild(project);
  +				packagesBeingChanged = incrementalBuild(args, monitor);
   			}
   			else if (kind == IncrementalProjectBuilder.CLEAN_BUILD)
   			{
  @@ -313,12 +314,28 @@
   			{
   				events.fireStartedBuild(project);
   				fullBuild(args, monitor);
  -				events.fireFinishedBuild(project);
   			}
   		} finally {
   			TruezipUtil.umountAll();
   		}
   
  +		if (packagesBeingChanged != null)
  +		{
  +			// alert this package is being changed
  +			for( int i = 0; i < packagesBeingChanged.size(); i++ ) {
  +				IPackage p = (IPackage)packagesBeingChanged.get(i);
  +				events.fireFinishedBuildingPackage(p);
  +			}
  +	
  +			for (Iterator iter = packagesBeingChanged.iterator(); iter.hasNext(); )
  +			{
  +				IPackage pkg = (IPackage) iter.next();
  +				BuildFileOperations.refreshPackage(pkg);
  +			}
  +		}
  +		
  +		events.fireFinishedBuild(project);
  +		
   		building = false;
   		delta = null;
   		return (IProject[])referencedProjects.toArray(new IProject[referencedProjects.size()]);
  @@ -357,7 +374,7 @@
   	 * This method is responsible for throwing the proper events itself
   	 * as to which packages are going to be changed.
   	 */
  -	private void incrementalBuild(Map args, final IProgressMonitor monitor)
  +	private ArrayList incrementalBuild (Map args, final IProgressMonitor monitor)
   	{
   		filesToCopy = new Hashtable();
   		filesToRemove = new Hashtable();
  @@ -395,17 +412,7 @@
   		filesToCopy.clear();
   		filesToRemove.clear();
   		
  -		// alert this package is being changed
  -		for( int i = 0; i < packagesBeingChanged.size(); i++ ) {
  -			IPackage p = (IPackage)packagesBeingChanged.get(i);
  -			events.fireFinishedBuildingPackage(p);
  -		}
  -
  -		for (Iterator iter = packagesBeingChanged.iterator(); iter.hasNext(); )
  -		{
  -			IPackage pkg = (IPackage) iter.next();
  -			BuildFileOperations.refreshPackage(pkg);
  -		}
  +		return packagesBeingChanged;
   	}
   	
   	private void processFileDelta (IProject project, IResourceDelta delta, ArrayList packagesBeingChanged, IProgressMonitor monitor)
  
  
  



More information about the jboss-cvs-commits mailing list