Author: rob.stryker(a)jboss.com
Date: 2008-06-11 22:11:49 -0400 (Wed, 11 Jun 2008)
New Revision: 8736
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/packages/ArchivePublishWizard.java
trunk/core/plugins/org.jboss.ide.eclipse.archives.core/src/main/org/jboss/ide/eclipse/archives/core/model/internal/ArchiveModelNode.java
Log:
JBIDE-2331
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/packages/ArchivePublishWizard.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/packages/ArchivePublishWizard.java 2008-06-12
02:05:52 UTC (rev 8735)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/packages/ArchivePublishWizard.java 2008-06-12
02:11:49 UTC (rev 8736)
@@ -3,6 +3,10 @@
import java.util.ArrayList;
import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.jface.viewers.ArrayContentProvider;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.ISelectionChangedListener;
@@ -29,6 +33,7 @@
import org.jboss.ide.eclipse.as.core.modules.ArchivesBuildListener;
import org.jboss.ide.eclipse.as.core.server.IDeployableServer;
import org.jboss.ide.eclipse.as.core.util.ServerConverter;
+import org.jboss.ide.eclipse.as.ui.JBossServerUIPlugin;
public class ArchivePublishWizard extends Wizard {
@@ -39,16 +44,20 @@
setWindowTitle("Archive Publish Settings");
}
public boolean performFinish() {
- if( new Boolean(page.getAlwaysPublish()).booleanValue() ) {
- pack.setProperty(ArchivesBuildListener.DEPLOY_SERVERS, getServers());
- pack.setProperty(ArchivesBuildListener.DEPLOY_AFTER_BUILD, getAutoDeploy());
- IPath p = pack.getProjectPath();
- try {
- ArchivesModel.instance().save(p, null);
- } catch( ArchivesModelException ame ) {
- // TODO
+ boolean alwaysPublish = new Boolean(page.getAlwaysPublish()).booleanValue();
+ pack.setProperty(ArchivesBuildListener.DEPLOY_SERVERS, alwaysPublish ? getServers() :
null);
+ pack.setProperty(ArchivesBuildListener.DEPLOY_AFTER_BUILD, getAutoDeploy());
+ final IPath p = pack.getProjectPath();
+ new Job("Saving Archives Preferences") {
+ protected IStatus run(IProgressMonitor monitor) {
+ try {
+ ArchivesModel.instance().save(p, null);
+ return Status.OK_STATUS;
+ } catch( ArchivesModelException ame ) {
+ return new Status(IStatus.ERROR, JBossServerUIPlugin.PLUGIN_ID, "Unable to save
archive preferences", ame);
+ }
}
- }
+ }.schedule();
return true;
}
public void addPages() {
Modified:
trunk/core/plugins/org.jboss.ide.eclipse.archives.core/src/main/org/jboss/ide/eclipse/archives/core/model/internal/ArchiveModelNode.java
===================================================================
---
trunk/core/plugins/org.jboss.ide.eclipse.archives.core/src/main/org/jboss/ide/eclipse/archives/core/model/internal/ArchiveModelNode.java 2008-06-12
02:05:52 UTC (rev 8735)
+++
trunk/core/plugins/org.jboss.ide.eclipse.archives.core/src/main/org/jboss/ide/eclipse/archives/core/model/internal/ArchiveModelNode.java 2008-06-12
02:11:49 UTC (rev 8736)
@@ -25,6 +25,7 @@
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.NullProgressMonitor;
import org.jboss.ide.eclipse.archives.core.model.ArchivesModelException;
import org.jboss.ide.eclipse.archives.core.model.EventManager;
import org.jboss.ide.eclipse.archives.core.model.IArchive;
@@ -156,6 +157,8 @@
* @see
org.jboss.ide.eclipse.archives.core.model.IArchiveModelNode#save(org.eclipse.core.runtime.IProgressMonitor)
*/
public void save(IProgressMonitor monitor) throws ArchivesModelException {
+ if( monitor == null )
+ monitor = new NullProgressMonitor();
XbPackages packs = (XbPackages)getNodeDelegate();
try {
XMLBinding.marshallToFile(packs, getDescriptor(), monitor);