JBoss Tools SVN: r40963 - trunk/openshift/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: 2012-05-11 18:00:49 -0400 (Fri, 11 May 2012)
New Revision: 40963
Modified:
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeStrategy.java
Log:
[JBIDE-10852] corrected addition strategy for 10gen (also add mongo), corrected removal strategy for mongo (remove 10gen, rockmongo)
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeStrategy.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeStrategy.java 2012-05-11 21:27:33 UTC (rev 40962)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeStrategy.java 2012-05-11 22:00:49 UTC (rev 40963)
@@ -212,7 +212,7 @@
pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MONGODB_20);
pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.ROCKMONGO_11);
} else {
- viewer.setChecked(IEmbeddableCartridge.MONGODB_20, false);
+ viewer.setChecked(IEmbeddableCartridge.ROCKMONGO_11, false);
}
} else {
pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.PHPMYADMIN_34);
@@ -228,7 +228,17 @@
} else {
viewer.setChecked(IEmbeddableCartridge.MONGODB_20, true);
}
- } else {
+ } if (!viewer.getChecked(IEmbeddableCartridge.MONGODB_20)
+ && viewer.getChecked(IEmbeddableCartridge._10GEN_MMS_AGENT_01)) {
+ if (MessageDialog.openQuestion(getShell(), "Remove MongoDB cartridge",
+ "If you remove the MongoDB cartridge, you'd also have to remove 10gen MMS agent.")) {
+ pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge._10GEN_MMS_AGENT_01);
+ viewer.setChecked(IEmbeddableCartridge._10GEN_MMS_AGENT_01, false);
+ } else {
+ viewer.setChecked(IEmbeddableCartridge.MONGODB_20, true);
+ }
+ }
+ if (!viewer.getChecked(IEmbeddableCartridge.MONGODB_20)) {
pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.MONGODB_20);
}
}
@@ -241,7 +251,7 @@
pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MONGODB_20);
pageModel.selectEmbeddedCartridges(IEmbeddableCartridge._10GEN_MMS_AGENT_01);
} else {
- viewer.setChecked(IEmbeddableCartridge.MONGODB_20, false);
+ viewer.setChecked(IEmbeddableCartridge._10GEN_MMS_AGENT_01, false);
}
} else {
pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.PHPMYADMIN_34);
13 years, 11 months
JBoss Tools SVN: r40962 - trunk/openshift/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: 2012-05-11 17:27:33 -0400 (Fri, 11 May 2012)
New Revision: 40962
Added:
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeStrategy.java
Removed:
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeListener.java
Modified:
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationConfigurationWizardPage.java
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPage.java
Log:
[JBIDE-10852] renamed EmbedCatridgeListener to EmbedCartridgeStrategy
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationConfigurationWizardPage.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationConfigurationWizardPage.java 2012-05-11 20:47:24 UTC (rev 40961)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationConfigurationWizardPage.java 2012-05-11 21:27:33 UTC (rev 40962)
@@ -333,7 +333,7 @@
GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).grab(true, true).span(1, 2).hint(400, 250)
.applyTo(tableContainer);
this.viewer = createTable(tableContainer);
- viewer.addCheckStateListener(new EmbedCartridgeListener(viewer, pageModel, this));
+ viewer.addCheckStateListener(new EmbedCartridgeStrategy(viewer, pageModel, this));
dbc.bindSet(ViewerProperties.checkedElements(IEmbeddableCartridge.class).observe(viewer),
BeanProperties.set(ApplicationConfigurationWizardPageModel.PROPERTY_SELECTED_EMBEDDABLE_CARTRIDGES)
.observe(pageModel));
Deleted: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeListener.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeListener.java 2012-05-11 20:47:24 UTC (rev 40961)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeListener.java 2012-05-11 21:27:33 UTC (rev 40962)
@@ -1,296 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2012 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.net.SocketTimeoutException;
-
-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.dialogs.IInputValidator;
-import org.eclipse.jface.dialogs.InputDialog;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.CheckStateChangedEvent;
-import org.eclipse.jface.viewers.CheckboxTableViewer;
-import org.eclipse.jface.viewers.ICheckStateListener;
-import org.eclipse.jface.wizard.IWizardContainer;
-import org.eclipse.jface.wizard.IWizardPage;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.swt.widgets.Shell;
-import org.jboss.tools.common.ui.WizardUtils;
-import org.jboss.tools.openshift.express.internal.ui.OpenShiftUIActivator;
-import org.jboss.tools.openshift.express.internal.ui.utils.StringUtils;
-
-import com.openshift.client.IApplication;
-import com.openshift.client.ICartridge;
-import com.openshift.client.IEmbeddableCartridge;
-import com.openshift.client.OpenShiftException;
-
-/**
- * A UI strategy that is able to add and remove embedded cartridges while
- * fullfilling requirements and resolving conflicts (ex. mutual exclusivity
- * etc.)
- *
- * @author Andre Dietisheim
- */
-public class EmbedCartridgeListener implements ICheckStateListener {
-
- private CheckboxTableViewer viewer;
- private IEmbedCartridgesWizardPageModel pageModel;
- private IWizardPage wizardPage;
-
- public EmbedCartridgeListener(CheckboxTableViewer viewer,
- IEmbedCartridgesWizardPageModel pageModel, IWizardPage wizardPage) {
- this.viewer = viewer;
- this.wizardPage = wizardPage;
- this.pageModel = pageModel;
- }
-
- public void checkStateChanged(CheckStateChangedEvent event) {
- try {
- IEmbeddableCartridge cartridge = (IEmbeddableCartridge) event.getElement();
- if (event.getChecked()) {
- addCartridge(cartridge);
- } else {
- removeCartridge(cartridge);
- }
- } catch (OpenShiftException e) {
- OpenShiftUIActivator.log("Could not process embeddable cartridges", e);
- } catch (SocketTimeoutException e) {
- OpenShiftUIActivator.log("Could not process embeddable cartridges", e);
- }
- }
-
- private void addCartridge(IEmbeddableCartridge cartridge) throws OpenShiftException, SocketTimeoutException {
- if (IEmbeddableCartridge.PHPMYADMIN_34.equals(cartridge)) {
- addPhpMyAdmin();
- } else if (IEmbeddableCartridge.JENKINS_14.equals(cartridge)) {
- addJenkins(cartridge);
- } else if (IEmbeddableCartridge.MYSQL_51.equals(cartridge)) {
- addMySql();
- } else if (IEmbeddableCartridge.POSTGRESQL_84.equals(cartridge)) {
- addPostgreSql();
- } else if (IEmbeddableCartridge.ROCKMONGO_11.equals(cartridge)) {
- addRockMongo();
- } else if (IEmbeddableCartridge._10GEN_MMS_AGENT_01.equals(cartridge)) {
- add10gen();
- } else {
- pageModel.selectEmbeddedCartridges(cartridge);
- }
- }
-
- private void removeCartridge(IEmbeddableCartridge cartridge) throws OpenShiftException, SocketTimeoutException {
- if (IEmbeddableCartridge.MYSQL_51.equals(cartridge)) {
- removeMySQL();
- } else if (IEmbeddableCartridge.MONGODB_20.equals(cartridge)) {
- removeMongoDb();
- } else {
- pageModel.unselectEmbeddedCartridges(cartridge);
- }
- }
-
- private void addJenkins(final IEmbeddableCartridge cartridge) throws OpenShiftException,
- SocketTimeoutException {
- if (pageModel.hasApplicationOfType(ICartridge.JENKINS_14)) {
- pageModel.getSelectedEmbeddableCartridges().add(cartridge);
- } else {
- final JenkinsApplicationDialog dialog = new JenkinsApplicationDialog(getShell());
- if (dialog.open() == Dialog.OK) {
- createJenkinsApplication(cartridge, dialog.getValue());
- } else {
- viewer.setChecked(cartridge, false);
- }
- }
- }
-
- private void createJenkinsApplication(final IEmbeddableCartridge cartridge, final String name) {
- try {
- WizardUtils.runInWizard(new Job(NLS.bind("Creating jenkins application \"{0}\"...", name)) {
- @Override
- protected IStatus run(IProgressMonitor monitor) {
- try {
- IApplication jenkinsApplication = pageModel.createJenkinsApplication(name, monitor);
- pageModel.getSelectedEmbeddableCartridges().add(cartridge);
- openLogDialog(jenkinsApplication);
- return Status.OK_STATUS;
- } catch (Exception e) {
- viewer.getControl().getDisplay().syncExec(new Runnable() {
- @Override
- public void run() {
- viewer.setChecked(cartridge, false);
- }
- });
- return OpenShiftUIActivator.createErrorStatus("Could not create jenkins application", e);
- }
- }
-
- }, getContainer());
- } catch (Exception e) {
- // ignore
- }
- }
-
- private void addPhpMyAdmin() throws OpenShiftException, SocketTimeoutException {
- if (!viewer.getChecked(IEmbeddableCartridge.MYSQL_51)) {
- if (MessageDialog.openQuestion(getShell(), "Embed phpMyAdmin Cartridge",
- "To embed phpMyAdmin, you'd also have to embed MySQL. \n\nAlso embed MySQL?")) {
- viewer.setChecked(IEmbeddableCartridge.MYSQL_51, true);
- pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
- pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.PHPMYADMIN_34);
- } else {
- viewer.setChecked(IEmbeddableCartridge.PHPMYADMIN_34, false);
- }
- } else {
- pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.PHPMYADMIN_34);
- }
- }
-
- private void addMySql()
- throws OpenShiftException, SocketTimeoutException {
- if (viewer.getChecked(IEmbeddableCartridge.POSTGRESQL_84)) {
- if (MessageDialog
- .openQuestion(getShell(), "Remove PostgreSQL Cartridge",
- "MySQL and PostgreSQL are mutually exclusive. To embed MySQL, you have to remove PostgreSQL. \n\nRemove PostgreSQL?")) {
- viewer.setChecked(IEmbeddableCartridge.POSTGRESQL_84, false);
- pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.POSTGRESQL_84);
- pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
- } else {
- viewer.setChecked(IEmbeddableCartridge.MYSQL_51, false);
- }
- } else {
- pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
- }
- }
-
- private void addPostgreSql()
- throws OpenShiftException, SocketTimeoutException {
- if (viewer.getChecked(IEmbeddableCartridge.MYSQL_51)) {
- if (MessageDialog
- .openQuestion(getShell(), "Remove MySQL Cartridge",
- "MySQL and PostgreSQL are mutually exclusive. To embed PostgreSQL, you have to remove MySQL.\n\nRemove MySQL?")) {
- viewer.setChecked(IEmbeddableCartridge.MYSQL_51, false);
- pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
- pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.POSTGRESQL_84);
- } else {
- viewer.setChecked(IEmbeddableCartridge.POSTGRESQL_84, false);
- }
- } else {
- pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.POSTGRESQL_84);
- }
- }
-
- private void removeMySQL() throws OpenShiftException, SocketTimeoutException {
- if (viewer.getChecked(IEmbeddableCartridge.PHPMYADMIN_34)) {
- if (MessageDialog.openQuestion(getShell(), "Remove phpmyadmin cartridge",
- "If you remove the mysql cartridge, you'd also have to remove phpmyadmin.\n\nRemove phpMyAdmin and MySQL?")) {
- pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.PHPMYADMIN_34);
- pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
- viewer.setChecked(IEmbeddableCartridge.PHPMYADMIN_34, false);
- } else {
- viewer.setChecked(IEmbeddableCartridge.MYSQL_51, true);
- }
- } else {
- pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
- }
- }
-
- private void addRockMongo() throws OpenShiftException, SocketTimeoutException {
- if (!viewer.getChecked(IEmbeddableCartridge.MONGODB_20)) {
- if (MessageDialog.openQuestion(getShell(), "Embed MongoDB Cartridge",
- "To embed RockMongo, you'd also have to embed MongoDB. \n\nAlso embed MongoDB?")) {
- viewer.setChecked(IEmbeddableCartridge.MONGODB_20, true);
- pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MONGODB_20);
- pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.ROCKMONGO_11);
- } else {
- viewer.setChecked(IEmbeddableCartridge.MONGODB_20, false);
- }
- } else {
- pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.PHPMYADMIN_34);
- }
- }
-
- private void removeMongoDb() throws OpenShiftException, SocketTimeoutException {
- if (viewer.getChecked(IEmbeddableCartridge.ROCKMONGO_11)) {
- if (MessageDialog.openQuestion(getShell(), "Remove MongoDB cartridge",
- "If you remove the MongoDB cartridge, you'd also have to remove RockMongo.")) {
- pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.ROCKMONGO_11);
- viewer.setChecked(IEmbeddableCartridge.ROCKMONGO_11, false);
- } else {
- viewer.setChecked(IEmbeddableCartridge.MONGODB_20, true);
- }
- } else {
- pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.MONGODB_20);
- }
- }
-
- private void add10gen() throws OpenShiftException, SocketTimeoutException {
- if (!viewer.getChecked(IEmbeddableCartridge.MONGODB_20)) {
- if (MessageDialog.openQuestion(getShell(), "Embed 10gen Cartridge",
- "To embed 10gen cartridge, you'd also have to embed MongoDB. \n\nAlso embed MongoDB?")) {
- viewer.setChecked(IEmbeddableCartridge.MONGODB_20, true);
- pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MONGODB_20);
- pageModel.selectEmbeddedCartridges(IEmbeddableCartridge._10GEN_MMS_AGENT_01);
- } else {
- viewer.setChecked(IEmbeddableCartridge.MONGODB_20, false);
- }
- } else {
- pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.PHPMYADMIN_34);
- }
- }
-
-
- private Shell getShell() {
- return viewer.getControl().getShell();
- }
-
- private IWizardContainer getContainer() {
- return wizardPage.getWizard().getContainer();
- }
-
- private void openLogDialog(final IApplication application) {
- viewer.getControl().getDisplay().syncExec(new Runnable() {
-
- @Override
- public void run() {
- new CreationLogDialog(getShell(), application).open();
- }
- });
- }
-
- private static class JenkinsApplicationDialog extends InputDialog {
-
- public JenkinsApplicationDialog(Shell shell) {
- super(
- shell,
- "New Jenkins application",
- "To embed Jenkins into your application, you first have to create a separate Jenkins application. "
- + "Please provide a name for this new Jenkins application (lower-case letters and digits only):"
- , null, new JenkinsNameValidator());
- }
-
- private static class JenkinsNameValidator implements IInputValidator {
-
- @Override
- public String isValid(String input) {
- if (StringUtils.isEmpty(input)) {
- return "You have to provide a name for the jenkins application";
- }
-
- if (!StringUtils.isAlphaNumeric(input)) {
- return "The name may only contain lower-case letters and digits.";
- }
- return null;
- }
- }
- }
-}
Copied: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeStrategy.java (from rev 40960, trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeListener.java)
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeStrategy.java (rev 0)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeStrategy.java 2012-05-11 21:27:33 UTC (rev 40962)
@@ -0,0 +1,296 @@
+/*******************************************************************************
+ * Copyright (c) 2012 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.net.SocketTimeoutException;
+
+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.dialogs.IInputValidator;
+import org.eclipse.jface.dialogs.InputDialog;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.viewers.CheckStateChangedEvent;
+import org.eclipse.jface.viewers.CheckboxTableViewer;
+import org.eclipse.jface.viewers.ICheckStateListener;
+import org.eclipse.jface.wizard.IWizardContainer;
+import org.eclipse.jface.wizard.IWizardPage;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.widgets.Shell;
+import org.jboss.tools.common.ui.WizardUtils;
+import org.jboss.tools.openshift.express.internal.ui.OpenShiftUIActivator;
+import org.jboss.tools.openshift.express.internal.ui.utils.StringUtils;
+
+import com.openshift.client.IApplication;
+import com.openshift.client.ICartridge;
+import com.openshift.client.IEmbeddableCartridge;
+import com.openshift.client.OpenShiftException;
+
+/**
+ * A UI strategy that is able to add and remove embedded cartridges while
+ * fullfilling requirements and resolving conflicts (ex. mutual exclusivity
+ * etc.)
+ *
+ * @author Andre Dietisheim
+ */
+public class EmbedCartridgeStrategy implements ICheckStateListener {
+
+ private CheckboxTableViewer viewer;
+ private IEmbedCartridgesWizardPageModel pageModel;
+ private IWizardPage wizardPage;
+
+ public EmbedCartridgeStrategy(CheckboxTableViewer viewer,
+ IEmbedCartridgesWizardPageModel pageModel, IWizardPage wizardPage) {
+ this.viewer = viewer;
+ this.wizardPage = wizardPage;
+ this.pageModel = pageModel;
+ }
+
+ public void checkStateChanged(CheckStateChangedEvent event) {
+ try {
+ IEmbeddableCartridge cartridge = (IEmbeddableCartridge) event.getElement();
+ if (event.getChecked()) {
+ addCartridge(cartridge);
+ } else {
+ removeCartridge(cartridge);
+ }
+ } catch (OpenShiftException e) {
+ OpenShiftUIActivator.log("Could not process embeddable cartridges", e);
+ } catch (SocketTimeoutException e) {
+ OpenShiftUIActivator.log("Could not process embeddable cartridges", e);
+ }
+ }
+
+ private void addCartridge(IEmbeddableCartridge cartridge) throws OpenShiftException, SocketTimeoutException {
+ if (IEmbeddableCartridge.PHPMYADMIN_34.equals(cartridge)) {
+ addPhpMyAdmin();
+ } else if (IEmbeddableCartridge.JENKINS_14.equals(cartridge)) {
+ addJenkins(cartridge);
+ } else if (IEmbeddableCartridge.MYSQL_51.equals(cartridge)) {
+ addMySql();
+ } else if (IEmbeddableCartridge.POSTGRESQL_84.equals(cartridge)) {
+ addPostgreSql();
+ } else if (IEmbeddableCartridge.ROCKMONGO_11.equals(cartridge)) {
+ addRockMongo();
+ } else if (IEmbeddableCartridge._10GEN_MMS_AGENT_01.equals(cartridge)) {
+ add10gen();
+ } else {
+ pageModel.selectEmbeddedCartridges(cartridge);
+ }
+ }
+
+ private void removeCartridge(IEmbeddableCartridge cartridge) throws OpenShiftException, SocketTimeoutException {
+ if (IEmbeddableCartridge.MYSQL_51.equals(cartridge)) {
+ removeMySQL();
+ } else if (IEmbeddableCartridge.MONGODB_20.equals(cartridge)) {
+ removeMongoDb();
+ } else {
+ pageModel.unselectEmbeddedCartridges(cartridge);
+ }
+ }
+
+ private void addJenkins(final IEmbeddableCartridge cartridge) throws OpenShiftException,
+ SocketTimeoutException {
+ if (pageModel.hasApplicationOfType(ICartridge.JENKINS_14)) {
+ pageModel.getSelectedEmbeddableCartridges().add(cartridge);
+ } else {
+ final JenkinsApplicationDialog dialog = new JenkinsApplicationDialog(getShell());
+ if (dialog.open() == Dialog.OK) {
+ createJenkinsApplication(cartridge, dialog.getValue());
+ } else {
+ viewer.setChecked(cartridge, false);
+ }
+ }
+ }
+
+ private void createJenkinsApplication(final IEmbeddableCartridge cartridge, final String name) {
+ try {
+ WizardUtils.runInWizard(new Job(NLS.bind("Creating jenkins application \"{0}\"...", name)) {
+ @Override
+ protected IStatus run(IProgressMonitor monitor) {
+ try {
+ IApplication jenkinsApplication = pageModel.createJenkinsApplication(name, monitor);
+ pageModel.getSelectedEmbeddableCartridges().add(cartridge);
+ openLogDialog(jenkinsApplication);
+ return Status.OK_STATUS;
+ } catch (Exception e) {
+ viewer.getControl().getDisplay().syncExec(new Runnable() {
+ @Override
+ public void run() {
+ viewer.setChecked(cartridge, false);
+ }
+ });
+ return OpenShiftUIActivator.createErrorStatus("Could not create jenkins application", e);
+ }
+ }
+
+ }, getContainer());
+ } catch (Exception e) {
+ // ignore
+ }
+ }
+
+ private void addPhpMyAdmin() throws OpenShiftException, SocketTimeoutException {
+ if (!viewer.getChecked(IEmbeddableCartridge.MYSQL_51)) {
+ if (MessageDialog.openQuestion(getShell(), "Embed phpMyAdmin Cartridge",
+ "To embed phpMyAdmin, you'd also have to embed MySQL. \n\nAlso embed MySQL?")) {
+ viewer.setChecked(IEmbeddableCartridge.MYSQL_51, true);
+ pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
+ pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.PHPMYADMIN_34);
+ } else {
+ viewer.setChecked(IEmbeddableCartridge.PHPMYADMIN_34, false);
+ }
+ } else {
+ pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.PHPMYADMIN_34);
+ }
+ }
+
+ private void addMySql()
+ throws OpenShiftException, SocketTimeoutException {
+ if (viewer.getChecked(IEmbeddableCartridge.POSTGRESQL_84)) {
+ if (MessageDialog
+ .openQuestion(getShell(), "Remove PostgreSQL Cartridge",
+ "MySQL and PostgreSQL are mutually exclusive. To embed MySQL, you have to remove PostgreSQL. \n\nRemove PostgreSQL?")) {
+ viewer.setChecked(IEmbeddableCartridge.POSTGRESQL_84, false);
+ pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.POSTGRESQL_84);
+ pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
+ } else {
+ viewer.setChecked(IEmbeddableCartridge.MYSQL_51, false);
+ }
+ } else {
+ pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
+ }
+ }
+
+ private void addPostgreSql()
+ throws OpenShiftException, SocketTimeoutException {
+ if (viewer.getChecked(IEmbeddableCartridge.MYSQL_51)) {
+ if (MessageDialog
+ .openQuestion(getShell(), "Remove MySQL Cartridge",
+ "MySQL and PostgreSQL are mutually exclusive. To embed PostgreSQL, you have to remove MySQL.\n\nRemove MySQL?")) {
+ viewer.setChecked(IEmbeddableCartridge.MYSQL_51, false);
+ pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
+ pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.POSTGRESQL_84);
+ } else {
+ viewer.setChecked(IEmbeddableCartridge.POSTGRESQL_84, false);
+ }
+ } else {
+ pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.POSTGRESQL_84);
+ }
+ }
+
+ private void removeMySQL() throws OpenShiftException, SocketTimeoutException {
+ if (viewer.getChecked(IEmbeddableCartridge.PHPMYADMIN_34)) {
+ if (MessageDialog.openQuestion(getShell(), "Remove phpmyadmin cartridge",
+ "If you remove the mysql cartridge, you'd also have to remove phpmyadmin.\n\nRemove phpMyAdmin and MySQL?")) {
+ pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.PHPMYADMIN_34);
+ pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
+ viewer.setChecked(IEmbeddableCartridge.PHPMYADMIN_34, false);
+ } else {
+ viewer.setChecked(IEmbeddableCartridge.MYSQL_51, true);
+ }
+ } else {
+ pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
+ }
+ }
+
+ private void addRockMongo() throws OpenShiftException, SocketTimeoutException {
+ if (!viewer.getChecked(IEmbeddableCartridge.MONGODB_20)) {
+ if (MessageDialog.openQuestion(getShell(), "Embed MongoDB Cartridge",
+ "To embed RockMongo, you'd also have to embed MongoDB. \n\nAlso embed MongoDB?")) {
+ viewer.setChecked(IEmbeddableCartridge.MONGODB_20, true);
+ pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MONGODB_20);
+ pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.ROCKMONGO_11);
+ } else {
+ viewer.setChecked(IEmbeddableCartridge.MONGODB_20, false);
+ }
+ } else {
+ pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.PHPMYADMIN_34);
+ }
+ }
+
+ private void removeMongoDb() throws OpenShiftException, SocketTimeoutException {
+ if (viewer.getChecked(IEmbeddableCartridge.ROCKMONGO_11)) {
+ if (MessageDialog.openQuestion(getShell(), "Remove MongoDB cartridge",
+ "If you remove the MongoDB cartridge, you'd also have to remove RockMongo.")) {
+ pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.ROCKMONGO_11);
+ viewer.setChecked(IEmbeddableCartridge.ROCKMONGO_11, false);
+ } else {
+ viewer.setChecked(IEmbeddableCartridge.MONGODB_20, true);
+ }
+ } else {
+ pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.MONGODB_20);
+ }
+ }
+
+ private void add10gen() throws OpenShiftException, SocketTimeoutException {
+ if (!viewer.getChecked(IEmbeddableCartridge.MONGODB_20)) {
+ if (MessageDialog.openQuestion(getShell(), "Embed 10gen Cartridge",
+ "To embed 10gen cartridge, you'd also have to embed MongoDB. \n\nAlso embed MongoDB?")) {
+ viewer.setChecked(IEmbeddableCartridge.MONGODB_20, true);
+ pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MONGODB_20);
+ pageModel.selectEmbeddedCartridges(IEmbeddableCartridge._10GEN_MMS_AGENT_01);
+ } else {
+ viewer.setChecked(IEmbeddableCartridge.MONGODB_20, false);
+ }
+ } else {
+ pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.PHPMYADMIN_34);
+ }
+ }
+
+
+ private Shell getShell() {
+ return viewer.getControl().getShell();
+ }
+
+ private IWizardContainer getContainer() {
+ return wizardPage.getWizard().getContainer();
+ }
+
+ private void openLogDialog(final IApplication application) {
+ viewer.getControl().getDisplay().syncExec(new Runnable() {
+
+ @Override
+ public void run() {
+ new CreationLogDialog(getShell(), application).open();
+ }
+ });
+ }
+
+ private static class JenkinsApplicationDialog extends InputDialog {
+
+ public JenkinsApplicationDialog(Shell shell) {
+ super(
+ shell,
+ "New Jenkins application",
+ "To embed Jenkins into your application, you first have to create a separate Jenkins application. "
+ + "Please provide a name for this new Jenkins application (lower-case letters and digits only):"
+ , null, new JenkinsNameValidator());
+ }
+
+ private static class JenkinsNameValidator implements IInputValidator {
+
+ @Override
+ public String isValid(String input) {
+ if (StringUtils.isEmpty(input)) {
+ return "You have to provide a name for the jenkins application";
+ }
+
+ if (!StringUtils.isAlphaNumeric(input)) {
+ return "The name may only contain lower-case letters and digits.";
+ }
+ return null;
+ }
+ }
+ }
+}
Property changes on: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeStrategy.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPage.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPage.java 2012-05-11 20:47:24 UTC (rev 40961)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPage.java 2012-05-11 21:27:33 UTC (rev 40962)
@@ -76,7 +76,7 @@
this.viewer = createTable(tableContainer);
GridDataFactory.fillDefaults()
.span(3, 1).align(SWT.FILL, SWT.FILL).grab(true, true).applyTo(tableContainer);
- viewer.addCheckStateListener(new EmbedCartridgeListener(viewer, pageModel, this));
+ viewer.addCheckStateListener(new EmbedCartridgeStrategy(viewer, pageModel, this));
// hiding buttons for now: https://issues.jboss.org/browse/JBIDE-10399
// Button checkAllButton = new Button(embedGroup, SWT.PUSH);
13 years, 11 months
JBoss Tools SVN: r40961 - trunk/openshift/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: 2012-05-11 16:47:24 -0400 (Fri, 11 May 2012)
New Revision: 40961
Modified:
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPage.java
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPageModel.java
Log:
[JBIDE-10852] refreshing application before resetting selected embedded cartridges
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPage.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPage.java 2012-05-11 20:35:30 UTC (rev 40960)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPage.java 2012-05-11 20:47:24 UTC (rev 40961)
@@ -187,13 +187,13 @@
});
}
- private void safeResetSelectedEmbeddedCartridges() {
+ private void safeRefreshSelectedEmbeddedCartridges() {
getShell().getDisplay().syncExec(new Runnable() {
@Override
public void run() {
try {
- Set<IEmbeddableCartridge> selectedEmbeddableCartridges = pageModel.resetSelectedEmbeddedCartridges();
+ Set<IEmbeddableCartridge> selectedEmbeddableCartridges = pageModel.refreshSelectedEmbeddedCartridges();
viewer.setCheckedElements(
selectedEmbeddableCartridges.toArray());
} catch (Exception e) {
@@ -227,13 +227,13 @@
openLogDialog(addedCartridges);
queue.offer(true);
} catch (OpenShiftException e) {
- safeResetSelectedEmbeddedCartridges();
+ safeRefreshSelectedEmbeddedCartridges();
queue.offer(false);
return new Status(IStatus.ERROR, OpenShiftUIActivator.PLUGIN_ID,
NLS.bind("Could not embed cartridges to application {0}",
pageModel.getApplication().getName()), e);
} catch (SocketTimeoutException e) {
- safeResetSelectedEmbeddedCartridges();
+ safeRefreshSelectedEmbeddedCartridges();
queue.offer(false);
return new Status(IStatus.ERROR, OpenShiftUIActivator.PLUGIN_ID,
NLS.bind("Could not embed cartridges to application {0}",
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPageModel.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPageModel.java 2012-05-11 20:35:30 UTC (rev 40960)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPageModel.java 2012-05-11 20:47:24 UTC (rev 40961)
@@ -104,10 +104,11 @@
getSelectedEmbeddableCartridges().remove(cartridge);
}
- public Set<IEmbeddableCartridge> resetSelectedEmbeddedCartridges()
+ public Set<IEmbeddableCartridge> refreshSelectedEmbeddedCartridges()
throws OpenShiftException, SocketTimeoutException {
+ getApplication().refresh();
setSelectedEmbeddedCartridges(getApplication().getEmbeddedCartridges());
- return selectedCartridges;
+ return getSelectedEmbeddableCartridges();
}
/**
13 years, 11 months
JBoss Tools SVN: r40960 - in trunk/openshift/plugins: org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2012-05-11 16:35:30 -0400 (Fri, 11 May 2012)
New Revision: 40960
Modified:
trunk/openshift/plugins/org.jboss.tools.openshift.express.client/openshift-java-client-2.0.0-SNAPSHOT.jar
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeListener.java
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPage.java
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPageModel.java
Log:
[JBIDE-10852] resetting selected embedded cartridges when error occurrs
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.client/openshift-java-client-2.0.0-SNAPSHOT.jar
===================================================================
(Binary files differ)
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeListener.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeListener.java 2012-05-11 17:40:41 UTC (rev 40959)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeListener.java 2012-05-11 20:35:30 UTC (rev 40960)
@@ -124,13 +124,13 @@
openLogDialog(jenkinsApplication);
return Status.OK_STATUS;
} catch (Exception e) {
- getShell().getDisplay().syncExec(new Runnable() {
+ viewer.getControl().getDisplay().syncExec(new Runnable() {
@Override
public void run() {
viewer.setChecked(cartridge, false);
}
});
- return OpenShiftUIActivator.createErrorStatus("Could not load embeddable cartridges", e);
+ return OpenShiftUIActivator.createErrorStatus("Could not create jenkins application", e);
}
}
@@ -166,7 +166,6 @@
pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
} else {
viewer.setChecked(IEmbeddableCartridge.MYSQL_51, false);
- pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
}
} else {
pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
@@ -238,13 +237,11 @@
if (!viewer.getChecked(IEmbeddableCartridge.MONGODB_20)) {
if (MessageDialog.openQuestion(getShell(), "Embed 10gen Cartridge",
"To embed 10gen cartridge, you'd also have to embed MongoDB. \n\nAlso embed MongoDB?")) {
- pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MONGODB_20);
viewer.setChecked(IEmbeddableCartridge.MONGODB_20, true);
+ pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.MONGODB_20);
pageModel.selectEmbeddedCartridges(IEmbeddableCartridge._10GEN_MMS_AGENT_01);
} else {
viewer.setChecked(IEmbeddableCartridge.MONGODB_20, false);
- pageModel.unselectEmbeddedCartridges(IEmbeddableCartridge.MYSQL_51);
- viewer.setChecked(IEmbeddableCartridge._10GEN_MMS_AGENT_01, false);
}
} else {
pageModel.selectEmbeddedCartridges(IEmbeddableCartridge.PHPMYADMIN_34);
@@ -261,7 +258,7 @@
}
private void openLogDialog(final IApplication application) {
- getShell().getDisplay().syncExec(new Runnable() {
+ viewer.getControl().getDisplay().syncExec(new Runnable() {
@Override
public void run() {
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPage.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPage.java 2012-05-11 17:40:41 UTC (rev 40959)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPage.java 2012-05-11 20:35:30 UTC (rev 40960)
@@ -14,6 +14,7 @@
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
+import java.util.Set;
import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.TimeUnit;
@@ -186,6 +187,22 @@
});
}
+ private void safeResetSelectedEmbeddedCartridges() {
+ getShell().getDisplay().syncExec(new Runnable() {
+
+ @Override
+ public void run() {
+ try {
+ Set<IEmbeddableCartridge> selectedEmbeddableCartridges = pageModel.resetSelectedEmbeddedCartridges();
+ viewer.setCheckedElements(
+ selectedEmbeddableCartridges.toArray());
+ } catch (Exception e) {
+ OpenShiftUIActivator.log(e);
+ }
+ }
+ });
+ }
+
private void setViewerInput(final Collection<IEmbeddableCartridge> cartridges) {
getShell().getDisplay().syncExec(new Runnable() {
@@ -210,11 +227,13 @@
openLogDialog(addedCartridges);
queue.offer(true);
} catch (OpenShiftException e) {
+ safeResetSelectedEmbeddedCartridges();
queue.offer(false);
return new Status(IStatus.ERROR, OpenShiftUIActivator.PLUGIN_ID,
NLS.bind("Could not embed cartridges to application {0}",
pageModel.getApplication().getName()), e);
} catch (SocketTimeoutException e) {
+ safeResetSelectedEmbeddedCartridges();
queue.offer(false);
return new Status(IStatus.ERROR, OpenShiftUIActivator.PLUGIN_ID,
NLS.bind("Could not embed cartridges to application {0}",
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPageModel.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPageModel.java 2012-05-11 17:40:41 UTC (rev 40959)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/EmbedCartridgeWizardPageModel.java 2012-05-11 20:35:30 UTC (rev 40960)
@@ -56,6 +56,11 @@
selectedCartridges.addAll(application.getEmbeddedCartridges());
}
+ protected void setSelectedEmbeddedCartridges(List<IEmbeddedCartridge> cartridges) {
+ selectedCartridges.clear();
+ selectedCartridges.addAll(cartridges);
+ }
+
public List<IEmbeddableCartridge> loadEmbeddableCartridges() throws OpenShiftException, SocketTimeoutException {
List<IEmbeddableCartridge> cartridges = wizardModel.getUser().getEmbeddableCartridges();
setEmbeddableCartridges(cartridges);
@@ -88,17 +93,23 @@
}
@Override
- public void selectEmbeddedCartridges(IEmbeddableCartridge cartridge) throws OpenShiftException,
- SocketTimeoutException {
+ public void selectEmbeddedCartridges(IEmbeddableCartridge cartridge)
+ throws OpenShiftException,SocketTimeoutException {
getSelectedEmbeddableCartridges().add(cartridge);
}
@Override
- public void unselectEmbeddedCartridges(IEmbeddableCartridge cartridge) throws OpenShiftException,
- SocketTimeoutException {
+ public void unselectEmbeddedCartridges(IEmbeddableCartridge cartridge)
+ throws OpenShiftException,SocketTimeoutException {
getSelectedEmbeddableCartridges().remove(cartridge);
}
+ public Set<IEmbeddableCartridge> resetSelectedEmbeddedCartridges()
+ throws OpenShiftException, SocketTimeoutException {
+ setSelectedEmbeddedCartridges(getApplication().getEmbeddedCartridges());
+ return selectedCartridges;
+ }
+
/**
* Embeds/removes the cartridges that were added/removed in this wizard
* page.
13 years, 11 months
JBoss Tools SVN: r40959 - in trunk/maven/plugins/org.jboss.tools.maven.project.examples/src/org/jboss/tools/maven/project/examples: utils and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: fbricon
Date: 2012-05-11 13:40:41 -0400 (Fri, 11 May 2012)
New Revision: 40959
Modified:
trunk/maven/plugins/org.jboss.tools.maven.project.examples/src/org/jboss/tools/maven/project/examples/messages.properties
trunk/maven/plugins/org.jboss.tools.maven.project.examples/src/org/jboss/tools/maven/project/examples/utils/MavenArtifactHelper.java
Log:
JBIDE-11684 : fixed local repo path and message sent when EAP repo is not found
Modified: trunk/maven/plugins/org.jboss.tools.maven.project.examples/src/org/jboss/tools/maven/project/examples/messages.properties
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.project.examples/src/org/jboss/tools/maven/project/examples/messages.properties 2012-05-11 16:52:29 UTC (rev 40958)
+++ trunk/maven/plugins/org.jboss.tools.maven.project.examples/src/org/jboss/tools/maven/project/examples/messages.properties 2012-05-11 17:40:41 UTC (rev 40959)
@@ -5,6 +5,6 @@
ArchetypeExamplesWizardFirstPage_ProjectName_Label=Project name
ArchetypeExamplesWizardFirstPage_Target_Runtime_Label=Target Runtime
ArchetypeExamplesWizardFirstPage_Title=Create a new Java EE project
-ArchetypeExamplesWizardFirstPage_Unresolved_Enterprise_Repo={0} cannot be found. This indicates you do not have access to a JBoss Enterprise Maven repository.\nThis can cause build problems. Follow this <a href\="http\://community.jboss.org/wiki/SettingUpTheJBossEnterpriseRepositories">link</a> for more details.
+ArchetypeExamplesWizardFirstPage_Unresolved_Enterprise_Repo=A *-redhat version of {0} cannot be found. This indicates you do not have access to a JBoss Enterprise Maven repository.\nThis can cause build problems. Follow this <a href\="http\://community.jboss.org/wiki/SettingUpTheJBossEnterpriseRepositories">link</a> for more details.
ArchetypeExamplesWizardFirstPage_Unresolved_WFK_Repo=The enterprise version of this project has a dependency on {0} which cannot be found. This indicates you do not have access to a JBoss WFK Maven repository or that repository is incomplete.\nThis can cause build problems. Follow this <a href\="http\://community.jboss.org/wiki/SettingUpTheJBossEnterpriseRepositories">link</a> for more details.
ArchetypeExamplesWizardFirstPage_Error_Package=Invalid package name
\ No newline at end of file
Modified: trunk/maven/plugins/org.jboss.tools.maven.project.examples/src/org/jboss/tools/maven/project/examples/utils/MavenArtifactHelper.java
===================================================================
--- trunk/maven/plugins/org.jboss.tools.maven.project.examples/src/org/jboss/tools/maven/project/examples/utils/MavenArtifactHelper.java 2012-05-11 16:52:29 UTC (rev 40958)
+++ trunk/maven/plugins/org.jboss.tools.maven.project.examples/src/org/jboss/tools/maven/project/examples/utils/MavenArtifactHelper.java 2012-05-11 17:40:41 UTC (rev 40959)
@@ -42,16 +42,16 @@
public class MavenArtifactHelper {
- //private static final DependencyKey ENTERPRISE_JBOSS_SPEC = DependencyKey.fromPortableString("org.jboss.spec:jboss-javaee-web-6.0:pom:3.0.0.Beta1-redhat-1::"); //$NON-NLS-1$
+ private static final String JBOSS_SPEC = "org.jboss.spec:jboss-javaee-web-6.0"; //$NON-NLS-1$
- private static final String COORDS = "org.jboss.spec:jboss-javaee-web-6.0:[0,)"; //$NON-NLS-1$
+ private static final String COORDS = JBOSS_SPEC+":[0,)"; //$NON-NLS-1$
/**
* Checks if the EAP repository is available
*
* @return true if org.jboss.spec:jboss-javaee-web-6.0:pom:*redhat* can be resolved
*/
public static boolean isEnterpriseRepositoryAvailable() {
- boolean isRepoAvailable = artifactExists(COORDS);
+ boolean isRepoAvailable = redHatArtifactExists(COORDS);
return isRepoAvailable;
}
@@ -87,7 +87,7 @@
if (!isEnterpriseRepositoryAvailable()) {
return new Status(IStatus.ERROR,
MavenProjectExamplesActivator.PLUGIN_ID,
- NLS.bind(Messages.ArchetypeExamplesWizardFirstPage_Unresolved_Enterprise_Repo, COORDS));
+ NLS.bind(Messages.ArchetypeExamplesWizardFirstPage_Unresolved_Enterprise_Repo, JBOSS_SPEC));
}
if (project != null) {
Set<String> requirements = project.getEssentialEnterpriseDependencyGavs();
@@ -105,7 +105,7 @@
return Status.OK_STATUS;
}
- private static boolean artifactExists(String coords) {
+ private static boolean redHatArtifactExists(String coords) {
RepositorySystem system;
try {
system = new DefaultPlexusContainer()
@@ -115,15 +115,15 @@
return false;
}
MavenRepositorySystemSession session = new MavenRepositorySystemSession();
- String localRepoHome = System.getProperty("user.home") //$NON-NLS-1$
- + Path.SEPARATOR + ".m2" + Path.SEPARATOR + "repository"; //$NON-NLS-1$ //$NON-NLS-2$
+ IMaven maven = MavenPlugin.getMaven();
+ String localRepoHome = maven.getLocalRepositoryPath();
LocalRepository localRepo = new LocalRepository(localRepoHome);
session.setLocalRepositoryManager(system.newLocalRepositoryManager(localRepo));
- org.sonatype.aether.artifact.Artifact artifact = new DefaultArtifact(coords);
+
VersionRangeRequest rangeRequest = new VersionRangeRequest();
- rangeRequest.setArtifact(artifact);
+ rangeRequest.setArtifact( new DefaultArtifact(coords));
+
List<ArtifactRepository> repos = new ArrayList<ArtifactRepository>();
- IMaven maven = MavenPlugin.getMaven();
try {
repos.addAll(maven.getArtifactRepositories(false));
} catch (CoreException e) {
@@ -135,8 +135,7 @@
rangeRequest.addRepository(remoteRepo);
}
try {
- VersionRangeResult result = system.resolveVersionRange(
- session, rangeRequest);
+ VersionRangeResult result = system.resolveVersionRange( session, rangeRequest);
List<Version> versions = result.getVersions();
for (Version version:versions) {
if (version != null && version.toString().contains("redhat")) { //$NON-NLS-1$
13 years, 11 months
JBoss Tools SVN: r40958 - trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/core.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2012-05-11 12:52:29 -0400 (Fri, 11 May 2012)
New Revision: 40958
Modified:
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/core/EmbedCartridgesOperation.java
Log:
[JBIDE-11835][JBIDE-10852] unified cartridge embedding. fixed bug where not being able to remove mysql / add postgres (and vice-versa)
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/core/EmbedCartridgesOperation.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/core/EmbedCartridgesOperation.java 2012-05-11 16:01:51 UTC (rev 40957)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/core/EmbedCartridgesOperation.java 2012-05-11 16:52:29 UTC (rev 40958)
@@ -27,6 +27,8 @@
import com.openshift.client.OpenShiftException;
/**
+ * An operation that embeds/removes cartridges from a given application.
+ *
* @author Andre Dietisheim
*/
public class EmbedCartridgesOperation {
@@ -37,10 +39,23 @@
this.application = application;
}
- public List<IEmbeddedCartridge> execute(final List<IEmbeddableCartridge> enabledCartridges, final IProgressMonitor monitor) throws SocketTimeoutException, OpenShiftException {
+ /**
+ * Embeds and removes cartridges from the given application so that it
+ * matches the given list of enabled cartridges.
+ *
+ * @param enabledCartridges
+ * @param monitor
+ * @return
+ * @throws SocketTimeoutException
+ * @throws OpenShiftException
+ */
+ public List<IEmbeddedCartridge> execute(final List<IEmbeddableCartridge> enabledCartridges,
+ final IProgressMonitor monitor)
+ throws SocketTimeoutException, OpenShiftException {
if (enabledCartridges == null) {
return Collections.emptyList();
}
+
List<IEmbeddableCartridge> cartridgesToAdd = new ArrayList<IEmbeddableCartridge>();
List<IEmbeddableCartridge> cartridgesToRemove = new ArrayList<IEmbeddableCartridge>();
computeAdditionsAndRemovals(
@@ -48,18 +63,18 @@
cartridgesToRemove,
enabledCartridges,
application.getEmbeddedCartridges());
+
removeEmbeddedCartridges(cartridgesToRemove, application);
final List<IEmbeddedCartridge> addedCartridges = addEmbeddedCartridges(cartridgesToAdd, application);
return addedCartridges;
-
}
- private void removeEmbeddedCartridges(List<IEmbeddableCartridge> cartridgesToRemove, final IApplication application) throws OpenShiftException,
- SocketTimeoutException {
+ private void removeEmbeddedCartridges(List<IEmbeddableCartridge> cartridgesToRemove, final IApplication application)
+ throws OpenShiftException,SocketTimeoutException {
if (cartridgesToRemove.isEmpty()) {
return;
}
- // Collections.sort(removedCartridges, new CartridgeComparator());
+ Collections.sort(cartridgesToRemove, new CartridgeAddRemovePriorityComparator());
for (IEmbeddableCartridge cartridgeToRemove : cartridgesToRemove) {
final IEmbeddedCartridge embeddedCartridge = application.getEmbeddedCartridge(cartridgeToRemove);
if (embeddedCartridge != null) {
@@ -68,12 +83,13 @@
}
}
- private List<IEmbeddedCartridge> addEmbeddedCartridges(List<IEmbeddableCartridge> cartridgesToAdd, final IApplication application)
+ private List<IEmbeddedCartridge> addEmbeddedCartridges(List<IEmbeddableCartridge> cartridgesToAdd,
+ final IApplication application)
throws OpenShiftException, SocketTimeoutException {
if (cartridgesToAdd.isEmpty()) {
return Collections.emptyList();
}
- // Collections.sort(addedCartridges, new CartridgeComparator());
+ Collections.sort(cartridgesToAdd, new CartridgeAddRemovePriorityComparator());
return application.addEmbeddableCartridges(cartridgesToAdd);
}
@@ -89,11 +105,9 @@
removedCartridges.add((IEmbeddableCartridge) entry.getElement());
}
}
- Collections.sort(addedCartridges, new CartridgeComparator());
- Collections.sort(removedCartridges, new CartridgeComparator());
}
- private static class CartridgeComparator implements Comparator<IEmbeddableCartridge> {
+ private static class CartridgeAddRemovePriorityComparator implements Comparator<IEmbeddableCartridge> {
@Override
public int compare(IEmbeddableCartridge thisCartridge, IEmbeddableCartridge thatCartridge) {
@@ -114,5 +128,5 @@
return 0;
}
}
-
+
}
13 years, 11 months
JBoss Tools SVN: r40957 - trunk/openshift/plugins/org.jboss.tools.openshift.express.client.
by jbosstools-commits@lists.jboss.org
Author: xcoulon
Date: 2012-05-11 12:01:51 -0400 (Fri, 11 May 2012)
New Revision: 40957
Modified:
trunk/openshift/plugins/org.jboss.tools.openshift.express.client/openshift-java-client-2.0.0-SNAPSHOT.jar
Log:
Fixed - JBIDE-11680
OpenShift Explorer is noticebly slower since b2
JBIDE-11791
Add a 'refresh' action at the user level in the OpenShift Explorer
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.client/openshift-java-client-2.0.0-SNAPSHOT.jar
===================================================================
(Binary files differ)
13 years, 11 months
JBoss Tools SVN: r40956 - in trunk/openshift/plugins: org.jboss.tools.openshift.express.ui and 6 other directories.
by jbosstools-commits@lists.jboss.org
Author: xcoulon
Date: 2012-05-11 11:53:49 -0400 (Fri, 11 May 2012)
New Revision: 40956
Added:
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/action/RefreshElementAction.java
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/viewer/actionProvider/RefreshElementActionProvider.java
Modified:
trunk/openshift/plugins/org.jboss.tools.openshift.express.client/.classpath
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/plugin.xml
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/core/console/UserDelegate.java
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/messages/OpenShiftExpressUIMessages.java
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/messages/OpenShiftExpressUIMessages.properties
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/viewer/OpenShiftExpressConsoleContentProvider.java
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationSelectionDialogModel.java
Log:
Fixed - JBIDE-11680
OpenShift Explorer is noticebly slower since b2
JBIDE-11791
Add a 'refresh' action at the user level in the OpenShift Explorer
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.client/.classpath
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.client/.classpath 2012-05-11 15:45:49 UTC (rev 40955)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.client/.classpath 2012-05-11 15:53:49 UTC (rev 40956)
@@ -3,7 +3,7 @@
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src"/>
- <classpathentry exported="true" kind="lib" path="openshift-java-client-2.0.0-SNAPSHOT.jar"/>
+ <classpathentry exported="true" kind="lib" path="openshift-java-client-2.0.0-SNAPSHOT.jar" sourcepath="/openshift-java-client"/>
<classpathentry kind="lib" path="jboss-dmr-1.0.0.Final.jar"/>
<classpathentry kind="lib" path="log4j-1.2.16.jar"/>
<classpathentry kind="lib" path="slf4j-api-1.6.1.jar"/>
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/plugin.xml
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/plugin.xml 2012-05-11 15:45:49 UTC (rev 40955)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/plugin.xml 2012-05-11 15:53:49 UTC (rev 40956)
@@ -386,6 +386,20 @@
</enablement>
</actionProvider>
<actionProvider
+ class="org.jboss.tools.openshift.express.internal.ui.viewer.actionProvider.RefreshElementActionProvider"
+ id="org.jboss.tools.openshift.express.internal.ui.viewer.actionProvider.RefreshElementActionProvider">
+ <enablement>
+ <or>
+ <instanceof
+ value="org.jboss.tools.openshift.express.internal.core.console.UserDelegate">
+ </instanceof>
+ <instanceof
+ value="com.openshift.client.IApplication">
+ </instanceof>
+ </or>
+ </enablement>
+ </actionProvider>
+ <actionProvider
class="org.jboss.tools.openshift.express.internal.ui.viewer.actionProvider.DeleteConnectionActionProvider"
id="org.jboss.tools.openshift.express.internal.ui.viewer.actionProvider.DeleteConnectionActionProvider">
<enablement>
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/core/console/UserDelegate.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/core/console/UserDelegate.java 2012-05-11 15:45:49 UTC (rev 40955)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/core/console/UserDelegate.java 2012-05-11 15:53:49 UTC (rev 40956)
@@ -216,7 +216,7 @@
return false;
}
- public void refresh() throws OpenShiftException {
+ public void refresh() throws OpenShiftException, SocketTimeoutException {
if(checkForPassword()) {
delegate.refresh();
}
Added: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/action/RefreshElementAction.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/action/RefreshElementAction.java (rev 0)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/action/RefreshElementAction.java 2012-05-11 15:53:49 UTC (rev 40956)
@@ -0,0 +1,78 @@
+/*******************************************************************************
+ * 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.action;
+
+import java.net.SocketTimeoutException;
+
+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.ITreeSelection;
+import org.eclipse.swt.widgets.Display;
+import org.jboss.tools.openshift.express.internal.ui.OpenShiftUIActivator;
+import org.jboss.tools.openshift.express.internal.ui.messages.OpenShiftExpressUIMessages;
+import org.jboss.tools.openshift.express.internal.ui.utils.Logger;
+
+import com.openshift.client.IOpenShiftResource;
+import com.openshift.client.OpenShiftException;
+
+/**
+ * @author Xavier Coulon
+ */
+public class RefreshElementAction extends AbstractAction {
+
+ public RefreshElementAction() {
+ super(OpenShiftExpressUIMessages.REFRESH_USER_ACTION, true);
+ setImageDescriptor(OpenShiftUIActivator.getDefault().createImageDescriptor("refresh.gif"));
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.jface.action.Action#run()
+ */
+ @Override
+ public void run() {
+ if (selection != null && selection instanceof ITreeSelection
+ && ((ITreeSelection) selection).getFirstElement() instanceof IOpenShiftResource) {
+ refresh((IOpenShiftResource) ((ITreeSelection) selection).getFirstElement());
+ }
+ }
+
+ private void refresh(final IOpenShiftResource element) {
+ Job job = new Job("Loading OpenShift information...") {
+
+ @Override
+ protected IStatus run(IProgressMonitor monitor) {
+ try {
+ monitor.beginTask("Loading OpenShift information...", IProgressMonitor.UNKNOWN);
+ element.refresh();
+ //List<IApplication> applications = user.getApplications();
+ Display.getDefault().asyncExec(new Runnable() {
+ public void run() {
+ viewer.refresh(element);
+ }
+ });
+ } catch (OpenShiftException e) {
+ Logger.error("Failed to refresh element", e);
+ } catch (SocketTimeoutException e) {
+ Logger.error("Failed to refresh element", e);
+ } finally {
+ monitor.done();
+ }
+ return Status.OK_STATUS;
+ }
+ };
+ job.setPriority(Job.LONG);
+ job.schedule();
+ }
+
+}
Property changes on: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/action/RefreshElementAction.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/messages/OpenShiftExpressUIMessages.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/messages/OpenShiftExpressUIMessages.java 2012-05-11 15:45:49 UTC (rev 40955)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/messages/OpenShiftExpressUIMessages.java 2012-05-11 15:53:49 UTC (rev 40956)
@@ -45,6 +45,8 @@
public static String REFRESH_VIEWER_ACTION;
+ public static String REFRESH_USER_ACTION;
+
public static String DELETE_CONNECTION_ACTION;
public static String USER_NOT_CONNECTED_LABEL;
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/messages/OpenShiftExpressUIMessages.properties
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/messages/OpenShiftExpressUIMessages.properties 2012-05-11 15:45:49 UTC (rev 40955)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/messages/OpenShiftExpressUIMessages.properties 2012-05-11 15:53:49 UTC (rev 40956)
@@ -16,6 +16,7 @@
SHOW_PROPERTIES_VIEW_ACTION=Properties
REFRESH_VIEWER_ACTION=Refresh
+REFRESH_USER_ACTION=Refresh
SHOW_ENVIRONMENT_ACTION=Show Environment Variables
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/viewer/OpenShiftExpressConsoleContentProvider.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/viewer/OpenShiftExpressConsoleContentProvider.java 2012-05-11 15:45:49 UTC (rev 40955)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/viewer/OpenShiftExpressConsoleContentProvider.java 2012-05-11 15:53:49 UTC (rev 40956)
@@ -13,6 +13,8 @@
import java.net.SocketTimeoutException;
import java.util.ArrayList;
import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
import org.eclipse.core.resources.IWorkspaceRoot;
import org.eclipse.core.runtime.IProgressMonitor;
@@ -25,7 +27,6 @@
import org.eclipse.swt.widgets.Display;
import org.jboss.tools.openshift.express.internal.core.console.UserDelegate;
import org.jboss.tools.openshift.express.internal.core.console.UserModel;
-import org.jboss.tools.openshift.express.internal.ui.utils.Logger;
import com.openshift.client.IApplication;
import com.openshift.client.OpenShiftException;
@@ -60,15 +61,19 @@
}
// Keep track of what's loading and what's finished
- private ArrayList<UserDelegate> loadedUsers = new ArrayList<UserDelegate>();
- private ArrayList<UserDelegate> loadingUsers = new ArrayList<UserDelegate>();
- private HashMap<UserDelegate, Exception> errors = new HashMap<UserDelegate, Exception>();
+ private List<Object> loadedElements = new ArrayList<Object>();
+ private List<Object> loadingElements = new ArrayList<Object>();
+
+ private Map<Object, Exception> errors = new HashMap<Object, Exception>();
+ /**
+ * Called to obtain the root elements of the tree viewer, ie, the Users
+ */
@Override
public Object[] getElements(final Object parentElement) {
// A refresh on the whole model... clear our cache
- loadedUsers.clear();
- loadingUsers.clear();
+ loadedElements.clear();
+ loadingElements.clear();
errors.clear();
if (parentElement instanceof IWorkspaceRoot) {
return UserModel.getDefault().getUsers();
@@ -80,6 +85,9 @@
return new Object[0];
}
+ /**
+ * Called to obtain the children of any element in the tree viewer, ie, from a user or an application
+ */
@Override
public Object[] getChildren(Object parentElement) {
if (parentElement instanceof UserDelegate) {
@@ -87,45 +95,39 @@
if(!user.isConnected() && !user.canPromptForPassword()) {
return new Object[]{new NotConnectedUserStub()};
}
- if (!loadedUsers.contains(parentElement)) {
- if (!loadingUsers.contains(parentElement)) {
- // Load the data
- launchLoadingUserJob((UserDelegate) parentElement);
- }
- // return a stub object that says loading...
- return new Object[] { new LoadingStub() };
- }
- Exception ose = errors.get((UserDelegate)parentElement);
- if( ose != null ) {
- return new Object[]{ose};
- }
+ return loadChildren(parentElement);
+ } else if(parentElement instanceof IApplication) {
+ return loadChildren(parentElement);
}
- return getChildrenForElement_LogException(parentElement, false);
+ return getChildrenForElement(parentElement);
}
- // Force the children to load completely
- private void getChildrenFor(Object[] parentElements) {
- for (int i = 0; i < parentElements.length; i++) {
- getChildrenForElement_LogException(parentElements[i], true);
+ /**
+ * @param parentElement
+ * @return
+ */
+ private Object[] loadChildren(Object parentElement) {
+ if (!loadedElements.contains(parentElement)) {
+ if (!loadingElements.contains(parentElement)) {
+ // Load the data
+ launchLoadingJob(parentElement);
+ }
+ // return a stub object that says loading...
+ return new Object[] { new LoadingStub() };
}
- }
-
- // Get the children without the protection of a "loading..." situation
- private Object[] getChildrenForElement_LogException(Object parentElement, boolean recurse) {
- try {
- return getChildrenForElement(parentElement, recurse);
- } catch (OpenShiftException e) {
- Logger.error("Unable to retrieve OpenShift information", e);
- } catch (SocketTimeoutException e) {
- Logger.error("Unable to retrieve OpenShift information", e);
+ Exception ose = errors.get(parentElement);
+ if( ose != null ) {
+ return new Object[]{ose};
}
- return new Object[0];
+ return getChildrenForElement(parentElement);
}
+
- private Object[] getChildrenForElement(Object parentElement, boolean recurse) throws OpenShiftException, SocketTimeoutException {
+
+ private Object[] getChildrenForElement(Object parentElement) {
// .... the actual work is done here...
Object[] children = new Object[0];
-// try {
+ try {
if (parentElement instanceof OpenShiftExpressConsoleContentCategory) {
UserDelegate user = ((OpenShiftExpressConsoleContentCategory) parentElement).getUser();
children = new Object[] { user };
@@ -137,36 +139,28 @@
} else if (parentElement instanceof IApplication) {
children = ((IApplication) parentElement).getEmbeddedCartridges().toArray();
}
+ } catch(OpenShiftException e) {
+ errors.put(parentElement, e);
+ } catch(SocketTimeoutException e) {
+ errors.put(parentElement, e);
+ }
- if (recurse) {
- getChildrenFor(children);
- }
-// } catch (OpenShiftException e) {
-// Logger.error("Unable to retrieve OpenShift information", e);
-// }
return children;
}
- private void launchLoadingUserJob(final UserDelegate user) {
- Job job = new Job("Loading OpenShift User information...") {
+ private void launchLoadingJob(final Object element) {
+ Job job = new Job("Loading OpenShift information...") {
@Override
protected IStatus run(IProgressMonitor monitor) {
monitor.beginTask("Loading OpenShift information...", IProgressMonitor.UNKNOWN);
monitor.worked(1);
// Get the actual children, with the delay
- loadingUsers.add(user);
- try {
- getChildrenForElement(user, Boolean.valueOf(System.getProperty("org.jboss.tools.openshift.express.ui.eagerloading", "true"))); // JBIDE-11680 false = fast, but blocks ui while loading cartridges, true = slow, but no blocking since cartridges is forced loaded.
-
- } catch(OpenShiftException e) {
- errors.put(user, e);
- } catch(SocketTimeoutException e) {
- errors.put(user, e);
- }
- loadedUsers.add(user);
- loadingUsers.remove(user);
- refreshViewerObject(user);
+ loadingElements.add(element);
+ getChildrenForElement(element); //Boolean.valueOf(System.getProperty("org.jboss.tools.openshift.express.ui.eagerloading", "true"))); // JBIDE-11680 false = fast, but blocks ui while loading cartridges, true = slow, but no blocking since cartridges is forced loaded.
+ loadedElements.add(element);
+ loadingElements.remove(element);
+ refreshViewerObject(element);
monitor.done();
return Status.OK_STATUS;
}
Added: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/viewer/actionProvider/RefreshElementActionProvider.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/viewer/actionProvider/RefreshElementActionProvider.java (rev 0)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/viewer/actionProvider/RefreshElementActionProvider.java 2012-05-11 15:53:49 UTC (rev 40956)
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * 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.viewer.actionProvider;
+
+import org.jboss.tools.openshift.express.internal.ui.action.RefreshElementAction;
+
+/**
+ * @author Xavier Coulon
+ */
+public class RefreshElementActionProvider extends AbstractActionProvider {
+
+ public RefreshElementActionProvider() {
+ super(new RefreshElementAction(), "group.properties");
+ }
+
+}
Property changes on: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/viewer/actionProvider/RefreshElementActionProvider.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationSelectionDialogModel.java
===================================================================
--- trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationSelectionDialogModel.java 2012-05-11 15:45:49 UTC (rev 40955)
+++ trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ApplicationSelectionDialogModel.java 2012-05-11 15:53:49 UTC (rev 40956)
@@ -44,6 +44,8 @@
getUser().refresh();
} catch (OpenShiftException e) {
Logger.error("Failed to refresh User's account", e);
+ } catch (SocketTimeoutException e) {
+ Logger.error("Failed to refresh User's account", e);
}
}
13 years, 11 months
JBoss Tools SVN: r40955 - in workspace/fred/repositories/snapshot/org/jboss/spec/archetypes: jboss-javaee6-webapp-archetype/7.1.1-Beta1-JBT and 2 other directories.
by jbosstools-commits@lists.jboss.org
Author: fbricon
Date: 2012-05-11 11:45:49 -0400 (Fri, 11 May 2012)
New Revision: 40955
Added:
workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-archetype/7.1.1-Beta1-JBT/
workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-archetype-7.1.1-Beta1-JBT-sources.jar
workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-archetype-7.1.1-Beta1-JBT.jar
workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-archetype-7.1.1-Beta1-JBT.pom
workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-ear-archetype/7.1.1-Beta1-JBT/
workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-ear-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-ear-archetype-7.1.1-Beta1-JBT-sources.jar
workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-ear-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-ear-archetype-7.1.1-Beta1-JBT.jar
workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-ear-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-ear-archetype-7.1.1-Beta1-JBT.pom
Log:
Add javaee archetypes compatible with EAP ER6 repo
Added: workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-archetype-7.1.1-Beta1-JBT-sources.jar
===================================================================
(Binary files differ)
Property changes on: workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-archetype-7.1.1-Beta1-JBT-sources.jar
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-archetype-7.1.1-Beta1-JBT.jar
===================================================================
(Binary files differ)
Property changes on: workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-archetype-7.1.1-Beta1-JBT.jar
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-archetype-7.1.1-Beta1-JBT.pom
===================================================================
--- workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-archetype-7.1.1-Beta1-JBT.pom (rev 0)
+++ workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-archetype-7.1.1-Beta1-JBT.pom 2012-05-11 15:45:49 UTC (rev 40955)
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-parent</artifactId>
+ <version>6-beta-2</version>
+ <relativePath />
+ </parent>
+
+ <groupId>org.jboss.spec.archetypes</groupId>
+ <artifactId>jboss-javaee6-webapp-archetype</artifactId>
+ <version>7.1.1-Beta1-JBT</version>
+ <packaging>maven-archetype</packaging>
+
+ <name>Java EE 6 Webapp</name>
+
+ <description>An archetype that generates a starter Java EE 6 webapp project for JBoss AS 7.1 (by default) or EAP 6 (if the "enterprise" property is true)</description>
+
+ <url>http://jboss.org/jbossas</url>
+
+ <developers>
+ <developer>
+ <name>Steven Boscarine</name>
+ <email>stevenboscarine(a)gmail.com</email>
+ </developer>
+ <developer>
+ <id>fbricon</id>
+ <name>Fred Bricon</name>
+ <email>fbricon(a)gmail.com</email>
+ <organization>Red Hat, Inc.</organization>
+ <organizationUrl>http://redhat.com/jboss</organizationUrl>
+ <url>http://community.jboss.org/people/fbricon</url>
+ <timezone>+1</timezone>
+ </developer>
+ <developer>
+ <name>Dan Allen</name>
+ <email>dan.j.allen(a)gmail.com</email>
+ <organization>JBoss, by Red Hat</organization>
+ <organizationUrl>http://redhat.com/jboss</organizationUrl>
+ <url>http://community.jboss.org/people/dan.j.allen</url>
+ </developer>
+ <developer>
+ <name>Pete Muir</name>
+ <email>pete.muir(a)jboss.org</email>
+ <organization>Red Hat, Inc.</organization>
+ <organizationUrl>http://redhat.com/jboss</organizationUrl>
+ <url>http://in.relation.to/Bloggers/Pete</url>
+ </developer>
+ </developers>
+
+
+ <build>
+ <testResources>
+ <testResource>
+ <directory>src/test/resources</directory>
+ <filtering>true</filtering>
+ </testResource>
+ </testResources>
+
+ <extensions>
+ <extension>
+ <groupId>org.apache.maven.archetype</groupId>
+ <artifactId>archetype-packaging</artifactId>
+ <version>2.1</version>
+ </extension>
+ </extensions>
+
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-archetype-plugin</artifactId>
+ <version>2.1</version>
+ <extensions>true</extensions>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+ <properties>
+ <enterprise.available>false</enterprise.available>
+ </properties>
+
+
+ <profiles>
+ <!-- Build with -Penterprise to test against an EAP repository -->
+ <profile>
+ <id>enterprise</id>
+ <properties>
+ <enterprise.available>true</enterprise.available>
+ </properties>
+ </profile>
+ </profiles>
+
+</project>
Added: workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-ear-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-ear-archetype-7.1.1-Beta1-JBT-sources.jar
===================================================================
(Binary files differ)
Property changes on: workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-ear-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-ear-archetype-7.1.1-Beta1-JBT-sources.jar
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-ear-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-ear-archetype-7.1.1-Beta1-JBT.jar
===================================================================
(Binary files differ)
Property changes on: workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-ear-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-ear-archetype-7.1.1-Beta1-JBT.jar
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-ear-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-ear-archetype-7.1.1-Beta1-JBT.pom
===================================================================
--- workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-ear-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-ear-archetype-7.1.1-Beta1-JBT.pom (rev 0)
+++ workspace/fred/repositories/snapshot/org/jboss/spec/archetypes/jboss-javaee6-webapp-ear-archetype/7.1.1-Beta1-JBT/jboss-javaee6-webapp-ear-archetype-7.1.1-Beta1-JBT.pom 2012-05-11 15:45:49 UTC (rev 40955)
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Licensed under the Apache License, Version 2.0 (the "License"); you
+ may not use this file except in compliance with the License. You may obtain
+ a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless
+ required by applicable law or agreed to in writing, software distributed
+ under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
+ OR CONDITIONS OF ANY KIND, either express or implied. See the License for
+ the specific language governing permissions and limitations under the License. -->
+<project
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
+ xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-parent</artifactId>
+ <version>6-beta-2</version>
+ </parent>
+
+ <groupId>org.jboss.spec.archetypes</groupId>
+ <artifactId>jboss-javaee6-webapp-ear-archetype</artifactId>
+ <version>7.1.1-Beta1-JBT</version>
+ <packaging>maven-archetype</packaging>
+
+ <name>JBoss AS 7.1 / Java EE 6 EAR Webapp</name>
+ <description>An archetype that generates a starter Java EE 6 webapp project for JBoss AS 7.1 (by default) or EAP 6 (if the "enterprise" property is true). The project is an EAR, with an EJB-JAR and WAR</description>
+
+ <url>http://jboss.org/jbossas</url>
+
+ <developers>
+ <developer>
+ <name>Steven Boscarine</name>
+ <email>stevenboscarine(a)gmail.com</email>
+ </developer>
+ <developer>
+ <name>Dan Allen</name>
+ <email>dan.j.allen(a)gmail.com</email>
+ <organization>JBoss, by Red Hat</organization>
+ <organizationUrl>http://redhat.com/jboss</organizationUrl>
+ <url>http://community.jboss.org/people/dan.j.allen</url>
+ </developer>
+ <developer>
+ <name>Pete Muir</name>
+ <email>pete.muir(a)jboss.org</email>
+ <organization>Red Hat Inc.</organization>
+ <organizationUrl>http://redhat.com/jboss</organizationUrl>
+ <url>http://in.relation.to/Bloggers/Pete</url>
+ </developer>
+ <developer>
+ <id>fbricon</id>
+ <name>Fred Bricon</name>
+ <email>fbricon(a)gmail.com</email>
+ <organization>Red Hat, Inc.</organization>
+ <organizationUrl>http://redhat.com/jboss</organizationUrl>
+ <url>http://community.jboss.org/people/fbricon</url>
+ <timezone>+1</timezone>
+ </developer>
+ </developers>
+
+ <licenses>
+ <license>
+ <name>The Apache Software License, Version 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ <distribution>repo</distribution>
+ </license>
+ </licenses>
+
+ <build>
+ <testResources>
+ <testResource>
+ <directory>src/test/resources</directory>
+ <filtering>true</filtering>
+ </testResource>
+ </testResources>
+
+ <extensions>
+ <extension>
+ <groupId>org.apache.maven.archetype</groupId>
+ <artifactId>archetype-packaging</artifactId>
+ <version>2.1</version>
+ </extension>
+ </extensions>
+
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-archetype-plugin</artifactId>
+ <version>2.1</version>
+ <extensions>true</extensions>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+ <properties>
+ <enterprise.available>false</enterprise.available>
+ </properties>
+
+ <profiles>
+ <!-- Build with -Penterprise to test against an EAP repository -->
+ <profile>
+ <id>enterprise</id>
+ <properties>
+ <enterprise.available>true</enterprise.available>
+ </properties>
+ </profile>
+ </profiles>
+</project>
13 years, 11 months
JBoss Tools SVN: r40954 - trunk/seam/features/org.jboss.tools.seam.feature.
by jbosstools-commits@lists.jboss.org
Author: nickboldt
Date: 2012-05-11 11:31:10 -0400 (Fri, 11 May 2012)
New Revision: 40954
Modified:
trunk/seam/features/org.jboss.tools.seam.feature/feature.xml
Log:
JBIDE-11844 - include AS feature when installing Seam
Modified: trunk/seam/features/org.jboss.tools.seam.feature/feature.xml
===================================================================
--- trunk/seam/features/org.jboss.tools.seam.feature/feature.xml 2012-05-11 15:08:22 UTC (rev 40953)
+++ trunk/seam/features/org.jboss.tools.seam.feature/feature.xml 2012-05-11 15:31:10 UTC (rev 40954)
@@ -21,6 +21,9 @@
<import feature="org.jboss.tools.jsf.feature" version="3.3.0" match="greaterOrEqual" />
<import feature="org.eclipse.datatools.connectivity.feature" version="1.6.1" match="greaterOrEqual" />
<import feature="org.eclipse.datatools.enablement.jdbc.feature" version="1.6.1" match="greaterOrEqual" />
+
+ <!-- JBIDE-11844 - include AS feature when installing Seam -->
+ <import feature="org.jboss.ide.eclipse.as.feature" version="2.3.0.qualifier" match="greaterOrEqual"/>
</requires>
<plugin id="org.jboss.tools.seam.core" download-size="0" install-size="0" version="0.0.0" unpack="false" />
13 years, 11 months