JBoss Tools SVN: r35562 - trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2011-10-11 18:41:26 -0400 (Tue, 11 Oct 2011)
New Revision: 35562
Modified:
trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationWizardPage.java
Log:
[JBIDE-9793] fixed bug: no domain and therefore no apps -> backgroud job never stops and prevents that wizard may be closed
Modified: trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationWizardPage.java
===================================================================
--- trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationWizardPage.java 2011-10-11 22:40:16 UTC (rev 35561)
+++ trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationWizardPage.java 2011-10-11 22:41:26 UTC (rev 35562)
@@ -10,6 +10,7 @@
******************************************************************************/
package org.jboss.tools.openshift.express.internal.ui.wizard;
+import java.util.ArrayList;
import java.util.Collection;
import org.eclipse.core.databinding.Binding;
@@ -22,9 +23,7 @@
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.IJobChangeEvent;
import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.core.runtime.jobs.JobChangeAdapter;
import org.eclipse.jface.databinding.swt.WidgetProperties;
import org.eclipse.jface.databinding.viewers.ViewerProperties;
import org.eclipse.jface.dialogs.Dialog;
@@ -49,13 +48,11 @@
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.PlatformUI;
import org.jboss.tools.common.ui.WizardUtils;
import org.jboss.tools.common.ui.databinding.DataBindingUtils;
import org.jboss.tools.openshift.express.client.IApplication;
@@ -181,7 +178,8 @@
} catch (OpenshiftException ex) {
IStatus status = new Status(IStatus.ERROR, OpenshiftUIActivator.PLUGIN_ID, ex.getMessage(), ex);
OpenshiftUIActivator.getDefault().getLog().log(status);
- ErrorDialog.openError(getShell(), "Error creating domain", "An error occurred while creating the domain.", status);
+ ErrorDialog.openError(getShell(), "Error creating domain",
+ "An error occurred while creating the domain.", status);
}
}
}
@@ -191,7 +189,7 @@
private void createDomain() throws OpenshiftException {
if (WizardUtils.openWizardDialog(
new NewDomainDialog(model.getNamespace(), wizardModel), getContainer().getShell()) == Dialog.OK) {
- model.updateDomain();
+ model.updateDomain();
}
}
@@ -290,7 +288,21 @@
"You're up to delete all data within an application. The data may not be recovered. "
+ "Are you sure that you want to delete application {0}?",
model.getSelectedApplication().getName()))) {
- WizardUtils.runInWizard(new DeleteApplicationJob(), getContainer(), dbc);
+ WizardUtils.runInWizard(new Job("Deleting application") {
+
+ @Override
+ protected IStatus run(IProgressMonitor monitor) {
+ try {
+ model.destroyCurrentApplication();
+ refreshViewer();
+ return Status.OK_STATUS;
+ } catch (OpenshiftException e) {
+ return new Status(IStatus.ERROR, OpenshiftUIActivator.PLUGIN_ID, NLS.bind(
+ "Could not delete application \"{0}\"",
+ model.getSelectedApplication().getName()));
+ }
+ }
+ }, getContainer(), dbc);
}
} catch (Exception ex) {
// ignore
@@ -330,99 +342,50 @@
@Override
protected void onPageActivated(final DataBindingContext dbc) {
try {
- Job loadDomainJob = new LoadDomainJob();
- loadDomainJob.addJobChangeListener(onLoadDomainFinished(dbc));
- WizardUtils.runInWizard(loadDomainJob, getContainer(), getDatabindingContext());
+ WizardUtils.runInWizard(new Job("Loading applications...") {
+ @Override
+ protected IStatus run(IProgressMonitor monitor) {
+ try {
+ model.updateDomain();
+ final Collection<IApplication> applications = model.getApplications();
+ setViewerInput(applications);
+ return Status.OK_STATUS;
+ } catch (Exception e) {
+ clearViewer();
+ return new Status(IStatus.ERROR, OpenshiftUIActivator.PLUGIN_ID,
+ "Could not load applications", e);
+ }
+ }
+
+ }, getContainer(), getDatabindingContext());
+
} catch (Exception ex) {
// ignore
}
}
- private JobChangeAdapter onLoadDomainFinished(final DataBindingContext dbc) {
- return new JobChangeAdapter() {
+ private void refreshViewer() {
+ getShell().getDisplay().syncExec(new Runnable() {
@Override
- public void done(IJobChangeEvent event) {
- try {
- if (!event.getResult().isOK()) {
- return;
- }
- if (model.hasDomain()) {
- WizardUtils.runInWizard(new LoadApplicationsJob(), getContainer(), dbc);
- }
- } catch (Exception e) {
- // ignore
- }
+ public void run() {
+ viewer.refresh();
}
- };
+ });
}
- private class LoadApplicationsJob extends Job {
- private LoadApplicationsJob() {
- super("Loading applications...");
- }
-
- @Override
- protected IStatus run(IProgressMonitor monitor) {
- try {
- final Collection<IApplication> applications = model.getApplications();
- Display display = PlatformUI.getWorkbench().getDisplay();
- display.syncExec(new Runnable() {
-
- @Override
- public void run() {
- viewer.setInput(applications);
- }
- });
- return Status.OK_STATUS;
- } catch (OpenshiftException e) {
- return new Status(IStatus.ERROR, OpenshiftUIActivator.PLUGIN_ID,
- "Could not load applications from Openshift Express");
- }
- }
+ private void clearViewer() {
+ setViewerInput(new ArrayList<IApplication>());
}
- private class DeleteApplicationJob extends Job {
+ private void setViewerInput(final Collection<IApplication> applications) {
+ getShell().getDisplay().syncExec(new Runnable() {
- public DeleteApplicationJob() {
- super("Deleting application");
- }
-
- @Override
- protected IStatus run(IProgressMonitor monitor) {
- try {
- model.destroyCurrentApplication();
- getContainer().getShell().getDisplay().syncExec(new Runnable() {
-
- @Override
- public void run() {
- viewer.refresh();
- }
- });
- return Status.OK_STATUS;
- } catch (OpenshiftException e) {
- return new Status(IStatus.ERROR, OpenshiftUIActivator.PLUGIN_ID, NLS.bind(
- "Could not delete application \"{0}\"",
- model.getSelectedApplication().getName()));
+ @Override
+ public void run() {
+ viewer.setInput(applications);
}
- }
+ });
}
-
- private class LoadDomainJob extends Job {
- private LoadDomainJob() {
- super("Checking presence of domain...");
- }
-
- @Override
- protected IStatus run(IProgressMonitor monitor) {
- try {
- model.updateDomain();
- return Status.OK_STATUS;
- } catch (Exception e) {
- return new Status(IStatus.ERROR, OpenshiftUIActivator.PLUGIN_ID,
- "Could not get domain", e);
- }
- }
- }
}
14 years, 6 months
JBoss Tools SVN: r35561 - trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2011-10-11 18:40:16 -0400 (Tue, 11 Oct 2011)
New Revision: 35561
Removed:
trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding/Status2BooleanConverter.java
Log:
[JBIDE-9793] corrected default behaviour of DataBindingUtils#bindEnablement (was: enabled if the severity == IStatus.ERROR; now: severity == IStatus.OK)
Deleted: trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding/Status2BooleanConverter.java
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding/Status2BooleanConverter.java 2011-10-11 21:23:31 UTC (rev 35560)
+++ trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding/Status2BooleanConverter.java 2011-10-11 22:40:16 UTC (rev 35561)
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011 Red Hat, Inc.
- * Distributed under license by Red Hat, Inc. All rights reserved.
- * This program is made available under the terms of the
- * Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
-package org.jboss.tools.common.ui.databinding;
-
-import org.eclipse.core.databinding.conversion.Converter;
-import org.eclipse.core.runtime.IStatus;
-
-/**
- * Converts an IStatus to a boolean.
- *
- * @author André Dietisheim
- *
- * @see IStatus
- *
- */
-public class Status2BooleanConverter extends Converter {
-
- private int severity;
-
- public Status2BooleanConverter(int severity) {
- super(IStatus.class, Boolean.class);
- this.severity = severity;
- }
-
- /**
- * Compares the given IStatus to the status that was given at construction
- * time. Returns <code>true</code> if they're <b>not</b> equal, <code>false</code>
- * otherwise.
- *
- * @see IStatus#ERROR
- * @see IStatus#WARNING
- * @see IStatus#INFO
- * @see IStatus#OK
- */
- public Object convert(Object fromObject) {
- if (!(fromObject instanceof IStatus)) {
- return Boolean.FALSE;
- }
-
- int current = ((IStatus) fromObject).getSeverity();
- if (current == IStatus.OK) {
- return severity == IStatus.OK;
- }
- return (severity | current) == severity;
- }
-}
\ No newline at end of file
14 years, 6 months
JBoss Tools SVN: r35560 - trunk/build/target-platform.
by jbosstools-commits@lists.jboss.org
Author: nickboldt
Date: 2011-10-11 17:23:31 -0400 (Tue, 11 Oct 2011)
New Revision: 35560
Modified:
trunk/build/target-platform/jbds.target.p2mirror.xml
Log:
reorder file
Modified: trunk/build/target-platform/jbds.target.p2mirror.xml
===================================================================
--- trunk/build/target-platform/jbds.target.p2mirror.xml 2011-10-11 20:43:15 UTC (rev 35559)
+++ trunk/build/target-platform/jbds.target.p2mirror.xml 2011-10-11 21:23:31 UTC (rev 35560)
@@ -63,6 +63,9 @@
<iu id="org.eclipse.mylyn.commons.net" version=""/>
<iu id="org.eclipse.mylyn.commons.screenshots" version=""/>
<iu id="org.apache.commons.lang" version=""/>
+<iu id="org.eclipse.bpel.jboss.riftsaw.runtime.feature.feature.group" version=""/>
+<iu id="org.eclipse.bpel.apache.ode.runtime.feature.feature.group" version=""/>
+<iu id="org.eclipse.bpel.feature.feature.group" version=""/>
<iu id="org.apache.lucene.highlighter" version=""/>
<iu id="org.apache.lucene.memory" version=""/>
<iu id="org.apache.lucene.misc" version=""/>
@@ -110,9 +113,6 @@
<iu id="org.eclipse.xsd.mapping.editor.feature.group" version=""/>
<iu id="org.eclipse.xsd.mapping.feature.group" version=""/>
<iu id="org.eclipse.xsd.feature.group" version=""/>
-<iu id="org.eclipse.bpel.jboss.riftsaw.runtime.feature.feature.group" version=""/>
-<iu id="org.eclipse.bpel.apache.ode.runtime.feature.feature.group" version=""/>
-<iu id="org.eclipse.bpel.feature.feature.group" version=""/>
<iu id="org.eclipse.graphiti.feature.feature.group" version=""/>
<iu id="org.eclipse.emf.feature.group" version=""/>
<iu id="org.eclipse.emf.workspace.feature.group" version=""/>
14 years, 6 months
JBoss Tools SVN: r35559 - trunk/common/tests/org.jboss.tools.common.model.test/src/org/jboss/tools/common/model/test.
by jbosstools-commits@lists.jboss.org
Author: scabanovich
Date: 2011-10-11 16:43:15 -0400 (Tue, 11 Oct 2011)
New Revision: 35559
Modified:
trunk/common/tests/org.jboss.tools.common.model.test/src/org/jboss/tools/common/model/test/ClassPathTest.java
Log:
JBIDE-9884
https://issues.jboss.org/browse/JBIDE-9884
Test added that for jar shared by several projects: (1) jar handles are different; (2) children are same objects; (3) hasChildren() is correct.
Modified: trunk/common/tests/org.jboss.tools.common.model.test/src/org/jboss/tools/common/model/test/ClassPathTest.java
===================================================================
--- trunk/common/tests/org.jboss.tools.common.model.test/src/org/jboss/tools/common/model/test/ClassPathTest.java 2011-10-11 20:41:00 UTC (rev 35558)
+++ trunk/common/tests/org.jboss.tools.common.model.test/src/org/jboss/tools/common/model/test/ClassPathTest.java 2011-10-11 20:43:15 UTC (rev 35559)
@@ -19,6 +19,8 @@
import org.eclipse.jdt.core.IClasspathEntry;
import org.eclipse.jdt.core.IJavaProject;
import org.eclipse.jdt.core.JavaCore;
+import org.jboss.tools.common.model.XModelObject;
+import org.jboss.tools.common.model.filesystems.FileSystemsHelper;
import org.jboss.tools.common.model.util.EclipseResourceUtil;
import org.jboss.tools.test.util.JobUtils;
import org.jboss.tools.test.util.TestProjectProvider;
@@ -77,6 +79,21 @@
JobUtils.waitForIdle();
}
+ public void testSharingJarContent() throws Exception {
+ XModelObject fs1 = EclipseResourceUtil.createObjectForResource(project1);
+ XModelObject fs2 = EclipseResourceUtil.createObjectForResource(project2);
+
+ XModelObject a1 = FileSystemsHelper.getFileSystem(fs1.getModel(), "lib-a.jar");
+ XModelObject a2 = FileSystemsHelper.getFileSystem(fs2.getModel(), "lib-a.jar");
+ assertTrue(a1.hasChildren());
+ assertTrue(a2.hasChildren());
+ assertFalse(a1 == a2);
+ XModelObject[] c1 = a1.getChildren();
+ XModelObject[] c2 = a2.getChildren();
+ assertTrue(c1[0] == c2[0]);
+ System.out.println(a1.toString() + a2.toString());
+ }
+
public void testGetClassPath() throws CoreException, IOException {
List<String> list = EclipseResourceUtil.getClassPath(project2);
@@ -98,6 +115,11 @@
return location;
}
+ public void tearDown() {
+ provider2.dispose();
+ provider1.dispose();
+ }
+
private boolean contains(List<String> list, String name) {
for (String s: list) {
if(s.replace('\\', '/').endsWith(name.replace('\\', '/'))) {
14 years, 6 months
JBoss Tools SVN: r35558 - trunk/common/plugins/org.jboss.tools.common.model/src/org/jboss/tools/common/model/filesystems/impl.
by jbosstools-commits@lists.jboss.org
Author: scabanovich
Date: 2011-10-11 16:41:00 -0400 (Tue, 11 Oct 2011)
New Revision: 35558
Modified:
trunk/common/plugins/org.jboss.tools.common.model/src/org/jboss/tools/common/model/filesystems/impl/JarSystemImpl.java
Log:
JBIDE-9884
https://issues.jboss.org/browse/JBIDE-9884
Implemented hasChildren() in JarSystemImpl accordingly to getChildren().
Modified: trunk/common/plugins/org.jboss.tools.common.model/src/org/jboss/tools/common/model/filesystems/impl/JarSystemImpl.java
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.model/src/org/jboss/tools/common/model/filesystems/impl/JarSystemImpl.java 2011-10-11 20:31:55 UTC (rev 35557)
+++ trunk/common/plugins/org.jboss.tools.common.model/src/org/jboss/tools/common/model/filesystems/impl/JarSystemImpl.java 2011-10-11 20:41:00 UTC (rev 35558)
@@ -10,8 +10,6 @@
******************************************************************************/
package org.jboss.tools.common.model.filesystems.impl;
-import java.util.Set;
-
import org.jboss.tools.common.model.*;
import org.jboss.tools.common.model.util.*;
@@ -67,6 +65,11 @@
return (main == this || main == null) ? super.getChildren() : main.getChildren();
}
+ public boolean hasChildren() {
+ JarSystemImpl main = getJarAccess().getMain();
+ return (main == this || main == null) ? super.hasChildren() : main.hasChildren();
+ }
+
public XModelObject getChildByPathPart(String pathpart) {
JarSystemImpl main = getJarAccess().getMain();
return (main == this || main == null) ? super.getChildByPathPart(pathpart) : main.getChildByPathPart(pathpart);
14 years, 6 months
JBoss Tools SVN: r35557 - trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2011-10-11 16:31:55 -0400 (Tue, 11 Oct 2011)
New Revision: 35557
Added:
trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainWizardModel.java
Removed:
trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/DomainWizardPage.java
trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/DomainWizardPageModel.java
trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainWizardPageModel.java
Modified:
trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationWizardPage.java
trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationWizardPageModel.java
trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/CredentialsWizardPage.java
trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainDialog.java
trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainWizardPage.java
trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ServerAdapterWizard.java
Log:
[JBIDE-9793] removed DomainPage, added domain to application page
Modified: trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationWizardPage.java
===================================================================
--- trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationWizardPage.java 2011-10-11 20:22:21 UTC (rev 35556)
+++ trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationWizardPage.java 2011-10-11 20:31:55 UTC (rev 35557)
@@ -16,14 +16,19 @@
import org.eclipse.core.databinding.DataBindingContext;
import org.eclipse.core.databinding.UpdateValueStrategy;
import org.eclipse.core.databinding.beans.BeanProperties;
+import org.eclipse.core.databinding.conversion.Converter;
import org.eclipse.core.databinding.validation.IValidator;
import org.eclipse.core.databinding.validation.ValidationStatus;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.IJobChangeEvent;
import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.core.runtime.jobs.JobChangeAdapter;
+import org.eclipse.jface.databinding.swt.WidgetProperties;
import org.eclipse.jface.databinding.viewers.ViewerProperties;
import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.dialogs.ErrorDialog;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.layout.GridDataFactory;
import org.eclipse.jface.layout.GridLayoutFactory;
@@ -41,17 +46,20 @@
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Group;
+import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Table;
+import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.PlatformUI;
import org.jboss.tools.common.ui.WizardUtils;
import org.jboss.tools.common.ui.databinding.DataBindingUtils;
import org.jboss.tools.openshift.express.client.IApplication;
+import org.jboss.tools.openshift.express.client.IDomain;
import org.jboss.tools.openshift.express.client.OpenshiftException;
import org.jboss.tools.openshift.express.internal.ui.OpenshiftUIActivator;
@@ -62,10 +70,12 @@
private TableViewer viewer;
private ApplicationWizardPageModel model;
+ private ServerAdapterWizardModel wizardModel;
protected ApplicationWizardPage(IWizard wizard, ServerAdapterWizardModel wizardModel) {
super("Application selection", "Please select an Openshift Express application",
"Application selection", wizard);
+ this.wizardModel = wizardModel;
this.model = new ApplicationWizardPageModel(wizardModel);
}
@@ -73,17 +83,53 @@
protected void doCreateControls(Composite container, DataBindingContext dbc) {
GridLayoutFactory.fillDefaults().numColumns(3).applyTo(container);
- Group group = new Group(container, SWT.BORDER);
- group.setText("Available Applications");
- GridDataFactory.fillDefaults().grab(true, true).align(SWT.FILL, SWT.FILL).hint(400, 160).span(3, 1)
- .applyTo(group);
- FillLayout fillLayout = new FillLayout(SWT.VERTICAL);
- fillLayout.marginHeight = 6;
- fillLayout.marginWidth = 6;
- group.setLayout(fillLayout);
+ createDomainGroup(container, dbc);
+ createApplicationsGroup(container, dbc);
+ }
- Composite tableContainer = new Composite(group, SWT.NONE);
+ private void createDomainGroup(Composite container, DataBindingContext dbc) {
+ Group domainGroup = new Group(container, SWT.BORDER);
+ domainGroup.setText("Domain");
+ GridDataFactory.fillDefaults()
+ .grab(true, false).align(SWT.FILL, SWT.TOP).span(3, 1).applyTo(domainGroup);
+ GridLayoutFactory.fillDefaults().margins(6, 6).numColumns(3).applyTo(domainGroup);
+ Label namespaceLabel = new Label(domainGroup, SWT.NONE);
+ namespaceLabel.setText("&Domain name");
+ GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).applyTo(namespaceLabel);
+ Text namespaceText = new Text(domainGroup, SWT.BORDER);
+ GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).applyTo(namespaceText);
+ Binding namespaceBinding = DataBindingUtils.bindMandatoryTextField(
+ namespaceText, "Domain", ApplicationWizardPageModel.PROPERTY_NAMESPACE, model, dbc);
+ Button createRenameButton = new Button(domainGroup, SWT.PUSH);
+ DataBindingUtils.bindEnablementToValidationStatus(createRenameButton, IStatus.OK, dbc, namespaceBinding);
+ dbc.bindValue(WidgetProperties.text().observe(createRenameButton)
+ , BeanProperties.value(ApplicationWizardPageModel.PROPERTY_DOMAIN).observe(model)
+ , new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER)
+ , new UpdateValueStrategy().setConverter(new Converter(IDomain.class, String.class) {
+
+ @Override
+ public Object convert(Object fromObject) {
+ if (fromObject instanceof IDomain) {
+ return "&Rename";
+ } else {
+ return "&Create";
+ }
+ }
+ }));
+ GridDataFactory.fillDefaults().align(SWT.RIGHT, SWT.CENTER).hint(80, SWT.DEFAULT).applyTo(createRenameButton);
+ createRenameButton.addSelectionListener(onCreateRenameDomain(dbc));
+ }
+
+ private void createApplicationsGroup(Composite container, DataBindingContext dbc) {
+ Group applicationGroup = new Group(container, SWT.BORDER);
+ applicationGroup.setText("Available Applications");
+ GridDataFactory.fillDefaults().grab(true, true).align(SWT.FILL, SWT.FILL).hint(400, 260).span(3, 1)
+ .applyTo(applicationGroup);
+ GridLayoutFactory.fillDefaults().numColumns(3).margins(6, 6).applyTo(applicationGroup);
+
+ Composite tableContainer = new Composite(applicationGroup, SWT.NONE);
this.viewer = createTable(tableContainer);
+ GridDataFactory.fillDefaults().span(3, 1).align(SWT.FILL, SWT.FILL).grab(true, true).applyTo(tableContainer);
viewer.addDoubleClickListener(onApplicationDoubleClick());
Binding selectedApplicationBinding = dbc.bindValue(
@@ -103,49 +149,78 @@
}),
null);
- Button newButton = new Button(container, SWT.PUSH);
+ Button newButton = new Button(applicationGroup, SWT.PUSH);
newButton.setText("Ne&w");
GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).hint(80, 30).applyTo(newButton);
newButton.addSelectionListener(onNew(dbc));
- Button deleteButton = new Button(container, SWT.PUSH);
+ Button deleteButton = new Button(applicationGroup, SWT.PUSH);
deleteButton.setText("&Delete");
GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).hint(80, SWT.DEFAULT).applyTo(deleteButton);
- DataBindingUtils.bindEnablementToValidationStatus(deleteButton, IStatus.INFO, dbc, selectedApplicationBinding);
+ DataBindingUtils.bindEnablementToValidationStatus(deleteButton, IStatus.OK, dbc, selectedApplicationBinding);
deleteButton.addSelectionListener(onDelete(dbc));
- Button detailsButton = new Button(container, SWT.PUSH);
+ Button detailsButton = new Button(applicationGroup, SWT.PUSH);
detailsButton.setText("De&tails");
- GridDataFactory.fillDefaults().align(SWT.RIGHT, SWT.CENTER).hint(80, SWT.DEFAULT).applyTo(detailsButton);
- DataBindingUtils.bindEnablementToValidationStatus(detailsButton, IStatus.INFO, dbc, selectedApplicationBinding);
+ GridDataFactory.fillDefaults().align(SWT.RIGHT, SWT.CENTER).grab(true, false).hint(80, SWT.DEFAULT)
+ .applyTo(detailsButton);
+ DataBindingUtils.bindEnablementToValidationStatus(detailsButton, IStatus.OK, dbc, selectedApplicationBinding);
detailsButton.addSelectionListener(onDetails(dbc));
}
+ private SelectionListener onCreateRenameDomain(DataBindingContext dbc) {
+ return new SelectionAdapter() {
+
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ if (model.hasDomain()) {
+ renameDomain();
+ } else {
+ try {
+ createDomain();
+ } catch (OpenshiftException ex) {
+ IStatus status = new Status(IStatus.ERROR, OpenshiftUIActivator.PLUGIN_ID, ex.getMessage(), ex);
+ OpenshiftUIActivator.getDefault().getLog().log(status);
+ ErrorDialog.openError(getShell(), "Error creating domain", "An error occurred while creating the domain.", status);
+ }
+ }
+ }
+ };
+ }
+
+ private void createDomain() throws OpenshiftException {
+ if (WizardUtils.openWizardDialog(
+ new NewDomainDialog(model.getNamespace(), wizardModel), getContainer().getShell()) == Dialog.OK) {
+ model.updateDomain();
+ }
+ }
+
+ private void renameDomain() {
+ try {
+ WizardUtils.runInWizard(
+ new Job("Renaming domain...") {
+
+ @Override
+ protected IStatus run(IProgressMonitor monitor) {
+ try {
+ model.renameDomain();
+ return Status.OK_STATUS;
+ } catch (Exception e) {
+ return new Status(IStatus.ERROR, OpenshiftUIActivator.PLUGIN_ID,
+ "Could not rename domain", e);
+ }
+ }
+ }, getContainer(), getDatabindingContext());
+ } catch (Exception ex) {
+ // ignore
+ }
+ }
+
private IDoubleClickListener onApplicationDoubleClick() {
return new IDoubleClickListener() {
@Override
public void doubleClick(DoubleClickEvent event) {
- // try {
- // ISelection selection = event.getSelection();
- // if (selection instanceof StructuredSelection) {
- // Object firstElement = ((IStructuredSelection)
- // selection).getFirstElement();
- // if (firstElement instanceof IApplication) {
- // String url = ((IApplication)
- // firstElement).getApplicationUrl();
- // BrowserUtil.checkedCreateExternalBrowser(url,
- // OpenshiftUIActivator.PLUGIN_ID,
- // OpenshiftUIActivator.getDefault().getLog());
- // }
- // }
- // } catch (OpenshiftException e) {
- // IStatus status = new Status(IStatus.ERROR,
- // OpenshiftUIActivator.PLUGIN_ID,
- // "Could not open Openshift Express application in browser",
- // e);
- // OpenshiftUIActivator.getDefault().getLog().log(status);
- // }
openDetailsDialog();
}
};
@@ -207,13 +282,15 @@
@Override
public void widgetSelected(SelectionEvent e) {
try {
- if (MessageDialog.openQuestion(getShell(),
+ if (MessageDialog
+ .openQuestion(
+ getShell(),
"Delete Application",
NLS.bind(
"You're up to delete all data within an application. The data may not be recovered. "
- + "Are you sure that you want to delete application {0}?",
+ + "Are you sure that you want to delete application {0}?",
model.getSelectedApplication().getName()))) {
- WizardUtils.runInWizard(new DeleteApplicationJob(), getWizard().getContainer(), dbc);
+ WizardUtils.runInWizard(new DeleteApplicationJob(), getContainer(), dbc);
}
} catch (Exception ex) {
// ignore
@@ -228,8 +305,8 @@
@Override
public void widgetSelected(SelectionEvent e) {
Shell shell = getContainer().getShell();
- if (WizardUtils.openWizardDialog(new NewApplicationDialog(model.getUser()), shell)
- == Dialog.OK) {
+ if (WizardUtils.openWizardDialog(
+ new NewApplicationDialog(model.getUser()), shell) == Dialog.OK) {
viewer.refresh();
}
}
@@ -247,22 +324,43 @@
}
private void openDetailsDialog() {
- Shell shell = getContainer().getShell();
- new ApplicationDetailsDialog(model.getSelectedApplication(), shell).open();
+ new ApplicationDetailsDialog(model.getSelectedApplication(), getShell()).open();
}
@Override
- protected void onPageActivated(DataBindingContext dbc) {
+ protected void onPageActivated(final DataBindingContext dbc) {
try {
- WizardUtils.runInWizard(new LoadApplicationsJob(), getWizard().getContainer(), dbc);
+ Job loadDomainJob = new LoadDomainJob();
+ loadDomainJob.addJobChangeListener(onLoadDomainFinished(dbc));
+ WizardUtils.runInWizard(loadDomainJob, getContainer(), getDatabindingContext());
+
} catch (Exception ex) {
// ignore
}
}
+ private JobChangeAdapter onLoadDomainFinished(final DataBindingContext dbc) {
+ return new JobChangeAdapter() {
+
+ @Override
+ public void done(IJobChangeEvent event) {
+ try {
+ if (!event.getResult().isOK()) {
+ return;
+ }
+ if (model.hasDomain()) {
+ WizardUtils.runInWizard(new LoadApplicationsJob(), getContainer(), dbc);
+ }
+ } catch (Exception e) {
+ // ignore
+ }
+ }
+ };
+ }
+
private class LoadApplicationsJob extends Job {
private LoadApplicationsJob() {
- super("Loading applications");
+ super("Loading applications...");
}
@Override
@@ -309,6 +407,22 @@
model.getSelectedApplication().getName()));
}
}
+ }
+ private class LoadDomainJob extends Job {
+ private LoadDomainJob() {
+ super("Checking presence of domain...");
+ }
+
+ @Override
+ protected IStatus run(IProgressMonitor monitor) {
+ try {
+ model.updateDomain();
+ return Status.OK_STATUS;
+ } catch (Exception e) {
+ return new Status(IStatus.ERROR, OpenshiftUIActivator.PLUGIN_ID,
+ "Could not get domain", e);
+ }
+ }
}
}
Modified: trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationWizardPageModel.java
===================================================================
--- trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationWizardPageModel.java 2011-10-11 20:22:21 UTC (rev 35556)
+++ trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationWizardPageModel.java 2011-10-11 20:31:55 UTC (rev 35557)
@@ -15,6 +15,7 @@
import org.jboss.tools.common.ui.databinding.ObservableUIPojo;
import org.jboss.tools.openshift.express.client.IApplication;
+import org.jboss.tools.openshift.express.client.IDomain;
import org.jboss.tools.openshift.express.client.IUser;
import org.jboss.tools.openshift.express.client.OpenshiftException;
@@ -24,8 +25,12 @@
*/
public class ApplicationWizardPageModel extends ObservableUIPojo {
+ public static final String PROPERTY_NAMESPACE = "namespace";
+ public static final String PROPERTY_DOMAIN = "domain";
public static final String PROPERTY_SELECTED_APPLICATION = "selectedApplication";
+ private String namespace;
+ private IDomain domain;
private IApplication selectedApplication;
private ServerAdapterWizardModel wizardModel;
@@ -33,6 +38,43 @@
this.wizardModel = wizardModel;
}
+ public String getNamespace() {
+ return this.namespace;
+ }
+
+ private void setNamespace(IDomain domain) {
+ if (domain != null) {
+ setNamespace(domain.getNamespace());
+ } else {
+ setNamespace((String) null);
+ }
+ }
+
+ public void setNamespace(String namespace) {
+ firePropertyChange(PROPERTY_NAMESPACE, this.namespace, this.namespace = namespace);
+ }
+
+ public boolean hasDomain() {
+ return domain != null;
+ }
+
+ public IDomain getDomain() {
+ return domain;
+ }
+
+ public void setDomain(IDomain domain) {
+ firePropertyChange(PROPERTY_DOMAIN, this.domain, this.domain = domain);
+ setNamespace(domain);
+ }
+
+ public void renameDomain() throws OpenshiftException {
+ getDomain().setNamespace(namespace);
+ }
+
+ public void updateDomain() throws OpenshiftException {
+ setDomain(getUser().getDomain());
+ }
+
public Collection<IApplication> getApplications() throws OpenshiftException {
IUser user = wizardModel.getUser();
if (user == null) {
Modified: trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/CredentialsWizardPage.java
===================================================================
--- trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/CredentialsWizardPage.java 2011-10-11 20:22:21 UTC (rev 35556)
+++ trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/CredentialsWizardPage.java 2011-10-11 20:31:55 UTC (rev 35557)
@@ -135,7 +135,7 @@
model.validateCredentials();
return Status.OK_STATUS;
}
- }, getWizard().getContainer(), dbc);
+ }, getContainer(), dbc);
} catch (Exception ex) {
// ignore
}
@@ -150,7 +150,7 @@
public void widgetSelected(SelectionEvent e) {
BrowserUtil.checkedCreateInternalBrowser(OPENSHIFT_EXPRESS_SIGNUP_URL, OPENSHIFT_EXPRESS_SIGNUP_URL,
OpenshiftUIActivator.PLUGIN_ID, OpenshiftUIActivator.getDefault().getLog());
- getWizard().getContainer().getShell().close();
+ getContainer().getShell().close();
}
};
}
Deleted: trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/DomainWizardPage.java
===================================================================
--- trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/DomainWizardPage.java 2011-10-11 20:22:21 UTC (rev 35556)
+++ trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/DomainWizardPage.java 2011-10-11 20:31:55 UTC (rev 35557)
@@ -1,158 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011 Red Hat, Inc.
- * Distributed under license by Red Hat, Inc. All rights reserved.
- * This program is made available under the terms of the
- * Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
-package org.jboss.tools.openshift.express.internal.ui.wizard;
-
-import org.eclipse.core.databinding.DataBindingContext;
-import org.eclipse.core.databinding.UpdateValueStrategy;
-import org.eclipse.core.databinding.beans.BeanProperties;
-import org.eclipse.core.databinding.observable.value.WritableValue;
-import org.eclipse.core.databinding.validation.IValidator;
-import org.eclipse.core.databinding.validation.ValidationStatus;
-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.dialogs.Dialog;
-import org.eclipse.jface.layout.GridDataFactory;
-import org.eclipse.jface.layout.GridLayoutFactory;
-import org.eclipse.jface.wizard.IWizard;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.jboss.tools.common.ui.WizardUtils;
-import org.jboss.tools.common.ui.databinding.DataBindingUtils;
-import org.jboss.tools.openshift.express.client.IDomain;
-import org.jboss.tools.openshift.express.internal.ui.OpenshiftUIActivator;
-
-/**
- * @author André Dietisheim
- */
-public class DomainWizardPage extends AbstractOpenshiftWizardPage {
-
- private DomainWizardPageModel model;
- private ServerAdapterWizardModel wizardModel;
-
- public DomainWizardPage(IWizard wizard, ServerAdapterWizardModel wizardModel) {
- super("Domain", "Create a new domain (if you have none yet), use your existing domain or rename it...",
- "new Domain", wizard);
- this.wizardModel = wizardModel;
- this.model = new DomainWizardPageModel(wizardModel);
- }
-
- protected void doCreateControls(Composite container, DataBindingContext dbc) {
- GridLayoutFactory.fillDefaults().numColumns(3).applyTo(container);
-
- Label namespaceLabel = new Label(container, SWT.NONE);
- namespaceLabel.setText("&Domain name");
- GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).applyTo(namespaceLabel);
- Text namespaceText = new Text(container, SWT.BORDER);
- GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(2, 1).applyTo(namespaceText);
- DataBindingUtils.bindMandatoryTextField(
- namespaceText, "Domain name", DomainWizardPageModel.PROPERTY_NAMESPACE, model, dbc);
-
- // bind the existence of a domain to the page validity
- dbc.bindValue(
- new WritableValue(null, IDomain.class)
- , BeanProperties.value(DomainWizardPageModel.PROPERTY_DOMAIN).observe(model)
- , new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER)
- , new UpdateValueStrategy().setAfterGetValidator(new IValidator() {
-
- @Override
- public IStatus validate(Object value) {
- if (!(value instanceof IDomain)) {
- return ValidationStatus.info("You have no domain yet, you need to create one.");
- }
- return ValidationStatus.ok();
- }
- }));
-
- Label spacerLabel = new Label(container, SWT.NONE);
- GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).hint(80, 30).applyTo(spacerLabel);
-
- Button createButton = new Button(container, SWT.PUSH);
- createButton.setText("&Create");
- GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).hint(80, SWT.DEFAULT).applyTo(createButton);
- DataBindingUtils.bindEnablementToValidationStatus(createButton, IStatus.ERROR | IStatus.WARNING | IStatus.INFO , dbc);
- createButton.addSelectionListener(onCreate(dbc));
-
- Button renameButton = new Button(container, SWT.PUSH);
- renameButton.setText("&Rename");
- GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).hint(80, SWT.DEFAULT).applyTo(renameButton);
- DataBindingUtils.bindEnablementToValidationStatus(renameButton, IStatus.OK, dbc);
- renameButton.addSelectionListener(onRename(dbc));
- }
-
- private SelectionListener onCreate(DataBindingContext dbc) {
- return new SelectionAdapter() {
-
- @Override
- public void widgetSelected(SelectionEvent e) {
- Shell shell = getContainer().getShell();
- if (WizardUtils.openWizardDialog(new NewDomainDialog(model.getNamespace(), wizardModel), shell)
- == Dialog.OK) {
- }
- }
- };
- }
-
- private SelectionListener onRename(DataBindingContext dbc) {
- return new SelectionAdapter() {
-
- @Override
- public void widgetSelected(SelectionEvent e) {
- try {
- WizardUtils.runInWizard(new Job("Renaming domain...") {
-
- @Override
- protected IStatus run(IProgressMonitor monitor) {
- try {
- model.renameDomain();
- return Status.OK_STATUS;
- } catch (Exception e) {
- return new Status(IStatus.ERROR, OpenshiftUIActivator.PLUGIN_ID,
- "Could not get domain", e);
- }
- }
- }, getWizard().getContainer(), getDatabindingContext());
- } catch (Exception ex) {
- // ignore
- }
- }
- };
- }
-
- @Override
- protected void onPageActivated(DataBindingContext dbc) {
- try {
- WizardUtils.runInWizard(new Job("Checking presence of domain...") {
-
- @Override
- protected IStatus run(IProgressMonitor monitor) {
- try {
- model.updateDomain();
- return Status.OK_STATUS;
- } catch (Exception e) {
- return new Status(IStatus.ERROR, OpenshiftUIActivator.PLUGIN_ID,
- "Could not get domain", e);
- }
- }
- }, getWizard().getContainer(), getDatabindingContext());
- } catch (Exception ex) {
- // ignore
- }
- }
-}
Deleted: trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/DomainWizardPageModel.java
===================================================================
--- trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/DomainWizardPageModel.java 2011-10-11 20:22:21 UTC (rev 35556)
+++ trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/DomainWizardPageModel.java 2011-10-11 20:31:55 UTC (rev 35557)
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011 Red Hat, Inc.
- * Distributed under license by Red Hat, Inc. All rights reserved.
- * This program is made available under the terms of the
- * Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
-package org.jboss.tools.openshift.express.internal.ui.wizard;
-
-import org.jboss.tools.common.ui.databinding.ObservableUIPojo;
-import org.jboss.tools.openshift.express.client.IDomain;
-import org.jboss.tools.openshift.express.client.IUser;
-import org.jboss.tools.openshift.express.client.OpenshiftException;
-
-/**
- * @author André Dietisheim
- */
-public class DomainWizardPageModel extends ObservableUIPojo {
-
- public static final String PROPERTY_NAMESPACE = "namespace";
- public static final String PROPERTY_DOMAIN = "domain";
-
- private String namespace;
- private IDomain domain;
- private ServerAdapterWizardModel wizardModel;
-
- public DomainWizardPageModel(ServerAdapterWizardModel wizardModel) {
- this.wizardModel = wizardModel;
- }
-
- public String getNamespace() {
- return this.namespace;
- }
-
- public void setNamespace(String namespace) {
- firePropertyChange(PROPERTY_NAMESPACE, this.namespace, this.namespace = namespace);
- }
-
- public boolean hasDomain() {
- return domain != null;
- }
-
- public IDomain getDomain() {
- return domain;
- }
-
- public void setDomain(IDomain domain) {
- firePropertyChange(PROPERTY_DOMAIN, this.domain, this.domain = domain);
- setNamespace(domain);
- }
-
- private void setNamespace(IDomain domain) {
- if (domain != null) {
- setNamespace(domain.getNamespace());
- } else {
- setNamespace((String) null);
- }
- }
-
- public void renameDomain() throws OpenshiftException {
- getDomain().setNamespace(namespace);
- }
-
- public void updateDomain() throws OpenshiftException {
- setDomain(getUser().getDomain());
- }
-
- public IUser getUser() {
- return wizardModel.getUser();
- }
-
-}
Modified: trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainDialog.java
===================================================================
--- trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainDialog.java 2011-10-11 20:22:21 UTC (rev 35556)
+++ trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainDialog.java 2011-10-11 20:31:55 UTC (rev 35557)
@@ -26,13 +26,12 @@
*/
public class NewDomainDialog extends Wizard {
- private NewDomainWizardPageModel newDomainWizardModel;
- private ServerAdapterWizardModel wizardModel;
private String namespace;
+ private NewDomainWizardModel model;
public NewDomainDialog(String namespace, ServerAdapterWizardModel wizardModel) {
this.namespace = namespace;
- this.wizardModel = wizardModel;
+ this.model = new NewDomainWizardModel(namespace, wizardModel.getUser());
setNeedsProgressMonitor(true);
}
@@ -40,17 +39,17 @@
public boolean performFinish() {
final ArrayBlockingQueue<Boolean> queue = new ArrayBlockingQueue<Boolean>(1);
try {
- WizardUtils.runInWizard(new Job("Creating application...") {
+ WizardUtils.runInWizard(new Job("Creating domain...") {
@Override
protected IStatus run(IProgressMonitor monitor) {
try {
- newDomainWizardModel.createDomain();
+ model.createDomain();
queue.offer(true);
} catch (Exception e) {
queue.offer(false);
return new Status(IStatus.ERROR, OpenshiftUIActivator.PLUGIN_ID,
- NLS.bind("Could not create domain \"{0}\"", newDomainWizardModel.getNamespace()), e);
+ NLS.bind("Could not create domain \"{0}\"", model.getNamespace()), e);
}
return Status.OK_STATUS;
}
@@ -63,6 +62,6 @@
@Override
public void addPages() {
- addPage(new NewDomainWizardPage(namespace, wizardModel, this));
+ addPage(new NewDomainWizardPage(namespace, model, this));
}
}
Copied: trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainWizardModel.java (from rev 35512, trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainWizardPageModel.java)
===================================================================
--- trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainWizardModel.java (rev 0)
+++ trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainWizardModel.java 2011-10-11 20:31:55 UTC (rev 35557)
@@ -0,0 +1,81 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.openshift.express.internal.ui.wizard;
+
+import java.io.File;
+import java.io.IOException;
+
+import org.jboss.tools.common.ui.databinding.ObservableUIPojo;
+import org.jboss.tools.openshift.express.client.IDomain;
+import org.jboss.tools.openshift.express.client.ISSHPublicKey;
+import org.jboss.tools.openshift.express.client.IUser;
+import org.jboss.tools.openshift.express.client.OpenshiftException;
+import org.jboss.tools.openshift.express.client.SSHPublicKey;
+
+/**
+ * @author André Dietisheim
+ */
+public class NewDomainWizardModel extends ObservableUIPojo {
+
+ public static final String PROPERTY_NAMESPACE = "namespace";
+ public static final String PROPERTY_SSHKEY = "sshKey";
+ public static final String PROPERTY_DOMAIN = "domain";
+
+ private String namespace;
+ private IDomain domain;
+ private String sshKey;
+ private IUser user;
+
+ public NewDomainWizardModel(String namespace, IUser user) {
+ this.namespace = namespace;
+ this.user = user;
+ }
+
+ public String getNamespace() {
+ return this.namespace;
+ }
+
+ public void createDomain() throws OpenshiftException, IOException {
+ IDomain domain = user.createDomain(namespace, loadSshKey());
+ setDomain(domain);
+ }
+
+ public String getSshKey() {
+ return sshKey;
+ }
+
+ public void setSshKey(String sshKey) {
+ firePropertyChange(PROPERTY_SSHKEY, this.sshKey, this.sshKey = sshKey);
+ }
+
+ private ISSHPublicKey loadSshKey() throws IOException, OpenshiftException {
+ return new SSHPublicKey(new File(sshKey));
+ }
+
+ public void setNamespace(String namespace) {
+ firePropertyChange(PROPERTY_NAMESPACE, this.namespace, this.namespace = namespace);
+ }
+
+ public boolean hasDomain() {
+ return domain != null;
+ }
+
+ public IDomain getDomain() {
+ return domain;
+ }
+
+ public void setDomain(IDomain domain) {
+ firePropertyChange(PROPERTY_DOMAIN, this.domain, this.domain = domain);
+ if (domain != null) {
+ setNamespace(domain.getNamespace());
+ }
+ }
+}
Property changes on: trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainWizardModel.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainWizardPage.java
===================================================================
--- trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainWizardPage.java 2011-10-11 20:22:21 UTC (rev 35556)
+++ trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainWizardPage.java 2011-10-11 20:31:55 UTC (rev 35557)
@@ -43,11 +43,11 @@
private static final String FILTEREXPRESSION_PUBLIC_SSH_KEY = "*.pub";
private static final String FILTERNAME_PUBLIC_SSH_KEY = "Public ssh key file (*.pub)";
- private NewDomainWizardPageModel model;
+ private NewDomainWizardModel model;
- public NewDomainWizardPage(String namespace, ServerAdapterWizardModel wizardModel, IWizard wizard) {
+ public NewDomainWizardPage(String namespace, NewDomainWizardModel model, IWizard wizard) {
super("Domain", "Create a new domain", "New Domain", wizard);
- this.model = new NewDomainWizardPageModel(namespace, wizardModel);
+ this.model = model;
}
protected void doCreateControls(Composite container, DataBindingContext dbc) {
@@ -59,17 +59,17 @@
Text namespaceText = new Text(container, SWT.BORDER);
GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(2, 1).applyTo(namespaceText);
DataBindingUtils.bindMandatoryTextField(
- namespaceText, "Domain name", NewDomainWizardPageModel.PROPERTY_NAMESPACE, model, dbc);
+ namespaceText, "Domain name", NewDomainWizardModel.PROPERTY_NAMESPACE, model, dbc);
Label sshKeyLabel = new Label(container, SWT.NONE);
- sshKeyLabel.setText("SSH Key");
+ sshKeyLabel.setText("SSH Public Key");
GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).applyTo(sshKeyLabel);
Text sshKeyText = new Text(container, SWT.READ_ONLY | SWT.BORDER);
GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).applyTo(sshKeyText);
Binding sshKeyBinding = dbc.bindValue(
WidgetProperties.text(SWT.Modify).observe(sshKeyText)
- , BeanProperties.value(NewDomainWizardPageModel.PROPERTY_SSHKEY).observe(model)
+ , BeanProperties.value(NewDomainWizardModel.PROPERTY_SSHKEY).observe(model)
, new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER)
, null
);
Deleted: trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainWizardPageModel.java
===================================================================
--- trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainWizardPageModel.java 2011-10-11 20:22:21 UTC (rev 35556)
+++ trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/NewDomainWizardPageModel.java 2011-10-11 20:31:55 UTC (rev 35557)
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011 Red Hat, Inc.
- * Distributed under license by Red Hat, Inc. All rights reserved.
- * This program is made available under the terms of the
- * Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
-package org.jboss.tools.openshift.express.internal.ui.wizard;
-
-import java.io.File;
-import java.io.IOException;
-
-import org.jboss.tools.common.ui.databinding.ObservableUIPojo;
-import org.jboss.tools.openshift.express.client.IDomain;
-import org.jboss.tools.openshift.express.client.ISSHPublicKey;
-import org.jboss.tools.openshift.express.client.OpenshiftException;
-import org.jboss.tools.openshift.express.client.SSHPublicKey;
-
-/**
- * @author André Dietisheim
- */
-public class NewDomainWizardPageModel extends ObservableUIPojo {
-
- public static final String PROPERTY_NAMESPACE = "namespace";
- public static final String PROPERTY_SSHKEY = "sshKey";
- public static final String PROPERTY_DOMAIN = "domain";
-
- private String namespace;
- private IDomain domain;
- private String sshKey;
- private ServerAdapterWizardModel wizardModel;
-
- public NewDomainWizardPageModel(String namespace, ServerAdapterWizardModel wizardModel) {
- setNamespace(namespace);
- this.wizardModel = wizardModel;
- }
-
- public String getNamespace() {
- return this.namespace;
- }
-
- public void createDomain() throws OpenshiftException, IOException {
- IDomain domain = wizardModel.getUser().createDomain(namespace, loadSshKey());
- setDomain(domain);
- }
-
- public String getSshKey() {
- return sshKey;
- }
-
- public void setSshKey(String sshKey) {
- firePropertyChange(PROPERTY_SSHKEY, this.sshKey, this.sshKey = sshKey);
- }
-
- private ISSHPublicKey loadSshKey() throws IOException, OpenshiftException {
- return new SSHPublicKey(new File(sshKey));
- }
-
- public void setNamespace(String namespace) {
- firePropertyChange(PROPERTY_NAMESPACE, this.namespace, this.namespace = namespace);
- }
-
- public boolean hasDomain() {
- return domain != null;
- }
-
- public IDomain getDomain() {
- return domain;
- }
-
- public void setDomain(IDomain domain) {
- firePropertyChange(PROPERTY_DOMAIN, this.domain, this.domain = domain);
- if (domain != null) {
- setNamespace(domain.getNamespace());
- }
- }
-
- public void updateDomain() throws OpenshiftException {
- setDomain(wizardModel.getUser().getDomain());
- }
-}
Modified: trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ServerAdapterWizard.java
===================================================================
--- trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ServerAdapterWizard.java 2011-10-11 20:22:21 UTC (rev 35556)
+++ trunk/as/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ServerAdapterWizard.java 2011-10-11 20:31:55 UTC (rev 35557)
@@ -79,7 +79,6 @@
public void addPages() {
this.model = new ServerAdapterWizardModel();
addPage(new CredentialsWizardPage(this, model));
- addPage(new DomainWizardPage(this, model));
addPage(new ApplicationWizardPage(this, model));
addPage(new AdapterWizardPage(this, model));
}
14 years, 6 months
JBoss Tools SVN: r35556 - trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/search.
by jbosstools-commits@lists.jboss.org
Author: dazarov
Date: 2011-10-11 16:22:21 -0400 (Tue, 11 Oct 2011)
New Revision: 35556
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/search/CDIBeanQueryParticipant.java
trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/search/InjectionPointQueryParticipant.java
Log:
Updated CDI Query Participants in order to search in related projects and check search scope https://issues.jboss.org/browse/JBIDE-9801
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/search/CDIBeanQueryParticipant.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/search/CDIBeanQueryParticipant.java 2011-10-11 20:20:56 UTC (rev 35555)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/search/CDIBeanQueryParticipant.java 2011-10-11 20:22:21 UTC (rev 35556)
@@ -27,19 +27,16 @@
import org.eclipse.jdt.ui.search.QuerySpecification;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.osgi.util.NLS;
import org.eclipse.search.ui.text.Match;
import org.eclipse.swt.graphics.Image;
import org.eclipse.ui.PartInitException;
+import org.jboss.tools.cdi.core.CDICoreNature;
import org.jboss.tools.cdi.core.CDICorePlugin;
import org.jboss.tools.cdi.core.CDIImages;
import org.jboss.tools.cdi.core.IBean;
import org.jboss.tools.cdi.core.ICDIElement;
import org.jboss.tools.cdi.core.ICDIProject;
-import org.jboss.tools.cdi.core.IInitializerMethod;
import org.jboss.tools.cdi.core.IInjectionPoint;
-import org.jboss.tools.cdi.core.IInjectionPointField;
-import org.jboss.tools.cdi.core.IInjectionPointParameter;
import org.jboss.tools.cdi.core.util.BeanPresentationUtil;
import org.jboss.tools.cdi.ui.CDIUIMessages;
import org.jboss.tools.cdi.ui.CDIUIPlugin;
@@ -60,38 +57,57 @@
ElementQuerySpecification qs = (ElementQuerySpecification)querySpecification;
IJavaElement element = qs.getElement();
IProject project = element.getJavaProject().getProject();
+
ICDIProject cdiProject = CDICorePlugin.getCDIProject(project, true);
+
+
+
if(cdiProject == null) {
return;
}
- Set<IBean> sourceBeans = cdiProject.getBeans(element);
- Set<IInjectionPoint> injectionPoints = new HashSet<IInjectionPoint>();
- for (IBean b: sourceBeans) {
- Set<IParametedType> ts = b.getLegalTypes();
- for (IParametedType t: ts) {
- injectionPoints.addAll(cdiProject.getInjections(t.getType().getFullyQualifiedName()));
+ searchInProject(requestor, querySpecification, cdiProject, monitor, element);
+
+ CDICoreNature[] natures = cdiProject.getNature().getAllDependentProjects();
+ for(CDICoreNature nature : natures){
+ ICDIProject p = nature.getDelegate();
+ if(p != null){
+ searchInProject(requestor, querySpecification, p, monitor, element);
}
}
- monitor.beginTask(CDIUIMessages.CDI_BEAN_QUERY_PARTICIPANT_TASK, injectionPoints.size());
+ }
+ }
+
+ private void searchInProject(ISearchRequestor requestor, QuerySpecification querySpecification, ICDIProject cdiProject, IProgressMonitor monitor, IJavaElement element){
+ Set<IBean> sourceBeans = cdiProject.getBeans(element);
+
+ Set<IInjectionPoint> injectionPoints = new HashSet<IInjectionPoint>();
+ for (IBean b: sourceBeans) {
+ Set<IParametedType> ts = b.getLegalTypes();
+ for (IParametedType t: ts) {
+ injectionPoints.addAll(cdiProject.getInjections(t.getType().getFullyQualifiedName()));
+ }
+ }
+
+ monitor.beginTask(CDIUIMessages.CDI_BEAN_QUERY_PARTICIPANT_TASK, injectionPoints.size());
+
+ for(IInjectionPoint injectionPoint : injectionPoints){
+ if(monitor.isCanceled())
+ break;
+ Set<IBean> resultBeans = cdiProject.getBeans(false, injectionPoint);
+ monitor.worked(1);
- for(IInjectionPoint injectionPoint : injectionPoints){
- if(monitor.isCanceled())
+ for(IBean cBean : resultBeans){
+ if(sourceBeans.contains(cBean) && InjectionPointQueryParticipant.containsInSearchScope(querySpecification, cBean)){
+ Match match = new CDIMatch(injectionPoint);
+ requestor.reportMatch(match);
break;
- Set<IBean> resultBeans = cdiProject.getBeans(false, injectionPoint);
- monitor.worked(1);
-
- for(IBean cBean : resultBeans){
- if(sourceBeans.contains(cBean)){
- Match match = new CDIMatch(injectionPoint);
- requestor.reportMatch(match);
- break;
- }
}
}
- monitor.done();
}
+ monitor.done();
+
}
public boolean isSearchForReferences(int limitTo) {
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/search/InjectionPointQueryParticipant.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/search/InjectionPointQueryParticipant.java 2011-10-11 20:20:56 UTC (rev 35555)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.ui/src/org/jboss/tools/cdi/ui/search/InjectionPointQueryParticipant.java 2011-10-11 20:22:21 UTC (rev 35556)
@@ -15,7 +15,9 @@
import java.util.Set;
import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.jdt.core.IField;
import org.eclipse.jdt.core.IJavaElement;
@@ -23,6 +25,7 @@
import org.eclipse.jdt.core.IMethod;
import org.eclipse.jdt.core.JavaModelException;
import org.eclipse.jdt.core.search.IJavaSearchConstants;
+import org.eclipse.jdt.core.search.IJavaSearchScope;
import org.eclipse.jdt.ui.search.ElementQuerySpecification;
import org.eclipse.jdt.ui.search.IMatchPresentation;
import org.eclipse.jdt.ui.search.IQueryParticipant;
@@ -32,7 +35,7 @@
import org.jboss.tools.cdi.core.CDICorePlugin;
import org.jboss.tools.cdi.core.CDIUtil;
import org.jboss.tools.cdi.core.IBean;
-import org.jboss.tools.cdi.core.IBeanMethod;
+import org.jboss.tools.cdi.core.ICDIElement;
import org.jboss.tools.cdi.core.ICDIProject;
import org.jboss.tools.cdi.core.IClassBean;
import org.jboss.tools.cdi.core.IInjectionPoint;
@@ -49,11 +52,26 @@
public IMatchPresentation getUIParticipant() {
return new InjectionPointMatchPresentation();
}
+
+ private static boolean containsInSearchScope(QuerySpecification querySpecification, IPath projectPath){
+ IJavaSearchScope searchScope = querySpecification.getScope();
+ if(searchScope == null)
+ return true;
+ IPath[] paths = searchScope.enclosingProjectsAndJars();
+ for(IPath path : paths){
+ if(path.equals(projectPath))
+ return true;
+ }
+ return false;
+ }
+
+ public static boolean containsInSearchScope(QuerySpecification querySpecification, ICDIElement element){
+ return containsInSearchScope(querySpecification, element.getResource().getProject().getFullPath());
+ }
public void search(ISearchRequestor requestor,
QuerySpecification querySpecification, IProgressMonitor monitor)
throws CoreException {
-
objects.clear();
if(querySpecification instanceof ElementQuerySpecification){
@@ -84,7 +102,7 @@
Set<IBean> resultBeanSet = cdiProject.getBeans(false, injectionPoint);
List<IBean> resultBeanList = CDIUtil.sortBeans(resultBeanSet);
for(IBean bean : resultBeanList){
- if(bean != null){
+ if(bean != null && containsInSearchScope(querySpecification, bean)){
CDIMatch match = new CDIMatch(bean);
if(!objects.contains(match.getPath())){
requestor.reportMatch(match);
@@ -94,11 +112,13 @@
}
Set<IObserverMethod> observerMethods = cdiProject.resolveObserverMethods(injectionPoint);
for(IObserverMethod observerMethod : observerMethods){
- // match observer method
- CDIMatch match = new CDIMatch(observerMethod);
- if(!objects.contains(match.getPath())){
- requestor.reportMatch(match);
- objects.add(match.getPath());
+ if(containsInSearchScope(querySpecification, observerMethod)){
+ // match observer method
+ CDIMatch match = new CDIMatch(observerMethod);
+ if(!objects.contains(match.getPath())){
+ requestor.reportMatch(match);
+ objects.add(match.getPath());
+ }
}
}
}
@@ -107,11 +127,13 @@
if(param != null){
Set<IInjectionPoint> events = cdiProject.findObservedEvents(param);
for(IInjectionPoint event : events){
- // match event
- CDIMatch match = new CDIMatch(event);
- if(!objects.contains(match.getPath())){
- requestor.reportMatch(match);
- objects.add(match.getPath());
+ if(containsInSearchScope(querySpecification, event)){
+ // match event
+ CDIMatch match = new CDIMatch(event);
+ if(!objects.contains(match.getPath())){
+ requestor.reportMatch(match);
+ objects.add(match.getPath());
+ }
}
}
}
14 years, 6 months
JBoss Tools SVN: r35555 - trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test.
by jbosstools-commits@lists.jboss.org
Author: akazakov
Date: 2011-10-11 16:20:56 -0400 (Tue, 11 Oct 2011)
New Revision: 35555
Modified:
trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamValidatorsTest.java
Log:
https://issues.jboss.org/browse/JBIDE-9880 org.jboss.tools.seam.core.test.SeamValidatorsTest failure
Modified: trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamValidatorsTest.java
===================================================================
--- trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamValidatorsTest.java 2011-10-11 20:17:39 UTC (rev 35554)
+++ trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamValidatorsTest.java 2011-10-11 20:20:56 UTC (rev 35555)
@@ -62,6 +62,7 @@
assertTrue(newContentFile.exists());
super.copyContentsFile(originalFile, newContentFile);
if("xml".equalsIgnoreCase(originalFile.getFileExtension())) {
+ // Workaroud for an issue in XModel. If we change a XML to fast then its timestamp may not be changed. So XModel may not load the changed file.
originalFile.setLocalTimeStamp(originalFile.getModificationStamp() + 3000);
}
project.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, null);
@@ -242,14 +243,6 @@
validator.validate(targetFile);
assertTrue("Error marker not found", validator.isMessageCreated(markerTemplate, parameters));
assertTrue("Error marker has wrong line number", validator.isMessageCreatedOnLine(markerTemplate, parameters,lineNumber));
-//if(!validator.isMessageCreated(markerTemplate, parameters)) {
-// System.out.println("!!!");
-//// testDuplicateComponents();
-//}
-//if(!validator.isMessageCreatedOnLine(markerTemplate, parameters,lineNumber)) {
-// System.out.println("!!!");
-//// validator.validate(targetFile);
-//}
}
private void assertMarkerIsNotCreatedForFile(String target, String newContent, String markerTemplate,
14 years, 6 months
JBoss Tools SVN: r35554 - in trunk: tests/plugins/org.jboss.tools.tests/src/org/jboss/tools/tests and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: akazakov
Date: 2011-10-11 16:17:39 -0400 (Tue, 11 Oct 2011)
New Revision: 35554
Modified:
trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamValidatorsTest.java
trunk/tests/plugins/org.jboss.tools.tests/src/org/jboss/tools/tests/AbstractResourceMarkerTest.java
Log:
https://issues.jboss.org/browse/JBIDE-9880 org.jboss.tools.seam.core.test.SeamValidatorsTest failure
Modified: trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamValidatorsTest.java
===================================================================
--- trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamValidatorsTest.java 2011-10-11 19:35:49 UTC (rev 35553)
+++ trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamValidatorsTest.java 2011-10-11 20:17:39 UTC (rev 35554)
@@ -11,7 +11,6 @@
package org.jboss.tools.seam.core.test;
import java.io.IOException;
-import java.io.InputStream;
import java.util.Set;
import org.eclipse.core.resources.IFile;
@@ -21,12 +20,10 @@
import org.eclipse.core.resources.IncrementalProjectBuilder;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.jface.preference.IPersistentPreferenceStore;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.wst.validation.internal.core.ValidationException;
import org.jboss.tools.common.validation.IValidator;
-import org.jboss.tools.jst.web.kb.PageContextFactory;
import org.jboss.tools.jst.web.kb.WebKbPlugin;
import org.jboss.tools.jst.web.kb.internal.validation.ELValidationMessages;
import org.jboss.tools.jst.web.kb.preferences.ELSeverityPreferences;
@@ -59,23 +56,15 @@
super(name);
}
- protected void copyContentsFile(IFile originalFile, IFile newContentFile) throws CoreException{
- PageContextFactory.getInstance().cleanUp(originalFile);
- InputStream is = null;
- try{
- is = newContentFile.getContents();
- originalFile.setContents(is, true, false, null);
- } finally {
- if(is!=null) {
- try {
- is.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
+ @Override
+ protected void copyContentsFile(IFile originalFile, IFile newContentFile) throws CoreException {
+ assertTrue(originalFile.exists());
+ assertTrue(newContentFile.exists());
+ super.copyContentsFile(originalFile, newContentFile);
+ if("xml".equalsIgnoreCase(originalFile.getFileExtension())) {
+ originalFile.setLocalTimeStamp(originalFile.getModificationStamp() + 3000);
}
- originalFile.getProject().refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
- originalFile.getProject().build(IncrementalProjectBuilder.INCREMENTAL_BUILD, null);
+ project.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, null);
}
@Override
@@ -89,6 +78,7 @@
"SeamWebWarTestProject");
project = setup.importProject();
}
+ project.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, null);
}
@Override
@@ -252,6 +242,14 @@
validator.validate(targetFile);
assertTrue("Error marker not found", validator.isMessageCreated(markerTemplate, parameters));
assertTrue("Error marker has wrong line number", validator.isMessageCreatedOnLine(markerTemplate, parameters,lineNumber));
+//if(!validator.isMessageCreated(markerTemplate, parameters)) {
+// System.out.println("!!!");
+//// testDuplicateComponents();
+//}
+//if(!validator.isMessageCreatedOnLine(markerTemplate, parameters,lineNumber)) {
+// System.out.println("!!!");
+//// validator.validate(targetFile);
+//}
}
private void assertMarkerIsNotCreatedForFile(String target, String newContent, String markerTemplate,
Modified: trunk/tests/plugins/org.jboss.tools.tests/src/org/jboss/tools/tests/AbstractResourceMarkerTest.java
===================================================================
--- trunk/tests/plugins/org.jboss.tools.tests/src/org/jboss/tools/tests/AbstractResourceMarkerTest.java 2011-10-11 19:35:49 UTC (rev 35553)
+++ trunk/tests/plugins/org.jboss.tools.tests/src/org/jboss/tools/tests/AbstractResourceMarkerTest.java 2011-10-11 20:17:39 UTC (rev 35554)
@@ -75,11 +75,13 @@
copyContentsFile(originalFile, newContentFile);
}
- protected void copyContentsFile(IFile originalFile, IFile newContentFile) throws CoreException{
+ protected void copyContentsFile(IFile originalFile, IFile newContentFile) throws CoreException {
+ assertTrue(originalFile.exists());
+ assertTrue(newContentFile.exists());
InputStream is = null;
try{
is = newContentFile.getContents();
- originalFile.setContents(is, true, false, null);
+ originalFile.setContents(is, IFile.FORCE, null);
} finally {
if(is!=null) {
try {
@@ -93,7 +95,6 @@
JobUtils.waitForIdle();
}
-
public static int findMarkerLine(IResource resource, String type, String errorMessage, boolean pattern)
throws CoreException {
int number = -1;
14 years, 6 months
JBoss Tools SVN: r35553 - trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2011-10-11 15:35:49 -0400 (Tue, 11 Oct 2011)
New Revision: 35553
Added:
trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding/StatusSeverity2BooleanConverter.java
Modified:
trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding/DataBindingUtils.java
Log:
[JBIDE-9793] corrected default behaviour of DataBindingUtils#bindEnablement (was: enabled if the severity == IStatus.ERROR; now: severity == IStatus.OK)
Modified: trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding/DataBindingUtils.java
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding/DataBindingUtils.java 2011-10-11 18:30:47 UTC (rev 35552)
+++ trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding/DataBindingUtils.java 2011-10-11 19:35:49 UTC (rev 35553)
@@ -46,16 +46,16 @@
*/
public static void bindEnablementToValidationStatus(final Control control,
DataBindingContext dbc, Binding... bindings) {
- bindEnablementToValidationStatus(control, IStatus.ERROR, dbc, bindings);
+ bindEnablementToValidationStatus(control, IStatus.OK, dbc, bindings);
}
- public static void bindEnablementToValidationStatus(final Control control, int severity,
+ public static void bindEnablementToValidationStatus(final Control control, int enabledSeverityMask,
DataBindingContext dbc, Binding... bindings) {
dbc.bindValue(
WidgetProperties.enabled().observe(control),
createAggregateValidationStatus(dbc, bindings),
new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER),
- new UpdateValueStrategy().setConverter(new Status2BooleanConverter(severity)));
+ new UpdateValueStrategy().setConverter(new StatusSeverity2BooleanConverter(enabledSeverityMask)));
}
/**
Copied: trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding/StatusSeverity2BooleanConverter.java (from rev 35536, trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding/Status2BooleanConverter.java)
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding/StatusSeverity2BooleanConverter.java (rev 0)
+++ trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding/StatusSeverity2BooleanConverter.java 2011-10-11 19:35:49 UTC (rev 35553)
@@ -0,0 +1,68 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.common.ui.databinding;
+
+import org.eclipse.core.databinding.conversion.Converter;
+import org.eclipse.core.runtime.IStatus;
+
+/**
+ * Converts the severity of an IStatus to a boolean on behalf of a severity
+ * mask.
+ *
+ * @author André Dietisheim
+ *
+ * @see IStatus
+ * @see IStatus#getSeverity()
+ *
+ */
+public class StatusSeverity2BooleanConverter extends Converter {
+
+ private int severity;
+
+ /**
+ * Instantiates a new converter that turns the severity of a status into a
+ * boolean. The conversion is operated according to a severity mask that is
+ * given at construction time. If the status that is handed over at runtime
+ * matches the severity mask (given at construction time), then the
+ * converter returns a <code>true</code>. It will return <code>false</code>
+ * otherwise.
+ *
+ * @param trueSeverityMask
+ * the severity mask that is considered as equivalent to
+ * <code>true</code>
+ */
+ public StatusSeverity2BooleanConverter(int trueSeverityMask) {
+ super(IStatus.class, Boolean.class);
+ this.severity = trueSeverityMask;
+ }
+
+ /**
+ * Compares the severity of the given IStatus to the severity mask that was
+ * given at construction time. Returns <code>true</code> if the severity
+ * matches the mask, <code>false</code> otherwise.
+ *
+ * @see IStatus#ERROR
+ * @see IStatus#WARNING
+ * @see IStatus#INFO
+ * @see IStatus#OK
+ */
+ public Object convert(Object fromObject) {
+ if (!(fromObject instanceof IStatus)) {
+ return Boolean.FALSE;
+ }
+
+ int current = ((IStatus) fromObject).getSeverity();
+ if (current == IStatus.OK) {
+ return severity == IStatus.OK;
+ }
+ return (severity | current) == severity;
+ }
+}
\ No newline at end of file
Property changes on: trunk/common/plugins/org.jboss.tools.common.ui/src/org/jboss/tools/common/ui/databinding/StatusSeverity2BooleanConverter.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
14 years, 6 months