Author: rob.stryker(a)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);