[jbosstools-commits] JBoss Tools SVN: r24254 - in trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core: server/xpl and 1 other directory.

jbosstools-commits at lists.jboss.org jbosstools-commits at lists.jboss.org
Wed Aug 18 05:34:52 EDT 2010


Author: rob.stryker at jboss.com
Date: 2010-08-18 05:34:52 -0400 (Wed, 18 Aug 2010)
New Revision: 24254

Modified:
   trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/publishers/AbstractServerToolsPublisher.java
   trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/xpl/PublishCopyUtil.java
Log:
JBIDE-6861 - fixup on progress monitors

Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/publishers/AbstractServerToolsPublisher.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/publishers/AbstractServerToolsPublisher.java	2010-08-18 09:21:54 UTC (rev 24253)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/publishers/AbstractServerToolsPublisher.java	2010-08-18 09:34:52 UTC (rev 24254)
@@ -171,7 +171,7 @@
 		
 		if( !forceZip && !isBinaryObject) {
 			PublishCopyUtil util = new PublishCopyUtil(callback);
-			list.addAll(Arrays.asList(util.publishFull(members, ProgressMonitorUtil.submon(monitor, 700))));
+			list.addAll(Arrays.asList(util.initFullPublish(members, ProgressMonitorUtil.submon(monitor, 700))));
 		} else if( isBinaryObject )
 			list.addAll(Arrays.asList(copyBinaryModule(moduleTree, ProgressMonitorUtil.submon(monitor, 700))));
 		else {

Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/xpl/PublishCopyUtil.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/xpl/PublishCopyUtil.java	2010-08-18 09:21:54 UTC (rev 24253)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/xpl/PublishCopyUtil.java	2010-08-18 09:34:52 UTC (rev 24254)
@@ -20,6 +20,8 @@
 import java.util.ArrayList;
 import java.util.List;
 
+import javax.swing.ProgressMonitor;
+
 import org.eclipse.core.resources.IResource;
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IPath;
@@ -536,31 +538,30 @@
 	 *    reporting and cancellation are not desired
 	 * @return a possibly-empty array of error and warning status
 	 */
-	public IStatus[] publishFull(IModuleResource[] resources, IProgressMonitor monitor) throws CoreException  {
-		monitor.beginTask("Publishing " + resources.length + " resources", 100 * (resources.length) + 100); //$NON-NLS-1$ //$NON-NLS-2$
+	public IStatus[] initFullPublish(IModuleResource[] resources, IProgressMonitor monitor) throws CoreException  {
+		int count = PublishUtil.countMembers(resources);
+		monitor = ProgressUtil.getMonitorFor(monitor);
+		monitor.beginTask("Publishing " + count + " resources", //$NON-NLS-1$ //$NON-NLS-2$ 
+				(100 * (count)) + 200);
 		handler.makeDirectoryIfRequired(new Path("/"), ProgressMonitorUtil.submon(monitor, 100)); //$NON-NLS-1$
 		if( monitor.isCanceled())
 			return canceledStatus();
-		IStatus[] results = publishFull(resources, new Path("/"), ProgressMonitorUtil.submon(monitor, 100*resources.length)); //$NON-NLS-1$
+		IStatus[] results = publishFull(resources, new Path("/"), monitor); //$NON-NLS-1$
 		monitor.done();
 		return results;
 	}
 	
-	public IStatus[] publishFull(IModuleResource[] resources, IPath relative, IProgressMonitor monitor) throws CoreException {
+	protected IStatus[] publishFull(IModuleResource[] resources, IPath relative, IProgressMonitor monitor) throws CoreException {
 		if (resources == null)
 			return EMPTY_STATUS;
-		
-		monitor = ProgressUtil.getMonitorFor(monitor);
-		monitor.beginTask("Publishing " + resources.length + " resources", 100 * (resources.length)); //$NON-NLS-1$ //$NON-NLS-2$
 		List status = new ArrayList(2);
 		int size = resources.length;
 		for (int i = 0; i < size; i++) {
 			if( monitor.isCanceled())
 				return canceledStatus();
-			IStatus[] stat = copy(resources[i], relative, ProgressMonitorUtil.submon(monitor, 100)); 
+			IStatus[] stat = copy(resources[i], relative, monitor); 
 			addArrayToList(status, stat);
 		}
-		monitor.done();
 		IStatus[] stat = new IStatus[status.size()];
 		status.toArray(stat);
 		return stat;
@@ -574,7 +575,8 @@
 			IModuleFolder folder = (IModuleFolder) resource;
 			IModuleResource[] children = folder.members();
 			if( children.length == 0 )
-				handler.makeDirectoryIfRequired(folder.getModuleRelativePath().append(folder.getName()), monitor);
+				handler.makeDirectoryIfRequired(folder.getModuleRelativePath().append(folder.getName()), 
+						ProgressUtil.getSubMonitorFor(monitor, 5));
 			else {
 				IStatus[] stat = publishFull(children, path, monitor);
 				addArrayToList(status, stat);
@@ -586,7 +588,8 @@
 			if( stats != null && stats.length > 0 && !stats[0].isOK())
 				addArrayToList(status, stats);
 
-			addArrayToList(status, handler.copyFile(mf, path, monitor));
+			addArrayToList(status, handler.copyFile(mf, path, 
+					ProgressUtil.getSubMonitorFor(monitor, 100)));
 		}
 		IStatus[] stat = new IStatus[status.size()];
 		status.toArray(stat);



More information about the jbosstools-commits mailing list