Author: rob.stryker(a)jboss.com
Date: 2011-12-05 06:01:00 -0500 (Mon, 05 Dec 2011)
New Revision: 36941
Modified:
branches/jbosstools-3.3.0.M5/as/plugins/org.jboss.ide.eclipse.as.ui/META-INF/MANIFEST.MF
branches/jbosstools-3.3.0.M5/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/launch/JBTWebLaunchableClient.java
branches/jbosstools-3.3.0.M5/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/views/server/extensions/AbstractOpenBrowserServerAction.java
Log:
JBIDE-10341 - harmful dependency on common.ui
Modified:
branches/jbosstools-3.3.0.M5/as/plugins/org.jboss.ide.eclipse.as.ui/META-INF/MANIFEST.MF
===================================================================
---
branches/jbosstools-3.3.0.M5/as/plugins/org.jboss.ide.eclipse.as.ui/META-INF/MANIFEST.MF 2011-12-05
10:02:20 UTC (rev 36940)
+++
branches/jbosstools-3.3.0.M5/as/plugins/org.jboss.ide.eclipse.as.ui/META-INF/MANIFEST.MF 2011-12-05
11:01:00 UTC (rev 36941)
@@ -55,8 +55,7 @@
org.eclipse.wst.common.project.facet.ui;bundle-version="1.4.200",
org.jboss.ide.eclipse.as.wtp.core;bundle-version="2.3.0",
org.eclipse.jst.common.project.facet.core;bundle-version="1.4.200",
- org.eclipse.wst.common.emfworkbench.integration;bundle-version="1.2.100",
- org.jboss.tools.common.ui;bundle-version="3.3.0"
+ org.eclipse.wst.common.emfworkbench.integration;bundle-version="1.2.100"
Bundle-ActivationPolicy: lazy
Export-Package: org.jboss.ide.eclipse.as.ui,
org.jboss.ide.eclipse.as.ui.console,
Modified:
branches/jbosstools-3.3.0.M5/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/launch/JBTWebLaunchableClient.java
===================================================================
---
branches/jbosstools-3.3.0.M5/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/launch/JBTWebLaunchableClient.java 2011-12-05
10:02:20 UTC (rev 36940)
+++
branches/jbosstools-3.3.0.M5/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/launch/JBTWebLaunchableClient.java 2011-12-05
11:01:00 UTC (rev 36941)
@@ -10,6 +10,9 @@
******************************************************************************/
package org.jboss.ide.eclipse.as.ui.launch;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.text.MessageFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
@@ -19,6 +22,7 @@
import javax.management.ObjectName;
import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.ILog;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
@@ -27,6 +31,8 @@
import org.eclipse.debug.core.ILaunch;
import org.eclipse.osgi.util.NLS;
import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.browser.IWebBrowser;
import org.eclipse.ui.browser.IWorkbenchBrowserSupport;
import org.eclipse.wst.server.core.IModule;
@@ -85,14 +91,7 @@
if(server.getServerState() == server.STATE_STARTED) {
Display.getDefault().asyncExec(new Runnable(){
public void run() {
- try {
- IWorkbenchBrowserSupport browserSupport =
JBossServerUIPlugin.getDefault().getWorkbench().getBrowserSupport();
- IWebBrowser browser =
browserSupport.createBrowser(IWorkbenchBrowserSupport.LOCATION_BAR |
IWorkbenchBrowserSupport.NAVIGATION_BAR, null, null, null);
- browser.openURL(http.getURL());
- } catch (Exception e) {
- JBossServerUIPlugin.getDefault().getLog().log(
- new Status(IStatus.ERROR, JBossServerUIPlugin.PLUGIN_ID, "Unable to open web
browser", e)); //$NON-NLS-1$
- }
+ openBrowser(http.getURL());
}
});
} else {
@@ -266,4 +265,63 @@
}
return null;
}
+
+
+
+
+ /*
+ * Stolen from BrowserUtil
+ */
+ private static final String BROWSER_COULD_NOT_OPEN_BROWSER = "Unable to open web
browser"; //$NON-NLS-1$
+ public static void checkedCreateInternalBrowser(String url, String browserId, String
pluginId, ILog log) {
+ try {
+ openUrl(url, PlatformUI.getWorkbench().getBrowserSupport().createBrowser(browserId),
pluginId, log);
+ } catch (PartInitException e) {
+ IStatus errorStatus = createErrorStatus(pluginId, BROWSER_COULD_NOT_OPEN_BROWSER, e,
url);
+ log.log(errorStatus);
+ }
+ }
+
+ private static IStatus createErrorStatus(String pluginId, String message, Throwable e,
+ Object... messageArguments) {
+ String formattedMessage = null;
+ if (message != null) {
+ formattedMessage = MessageFormat.format(message, messageArguments);
+ }
+ return new Status(Status.ERROR, pluginId, Status.ERROR, formattedMessage, e);
+ }
+
+ public static void checkedCreateExternalBrowser(String url, String pluginId, ILog log)
{
+ try {
+ openUrl(url, PlatformUI.getWorkbench().getBrowserSupport().getExternalBrowser(),
pluginId, log);
+ } catch (PartInitException e) {
+ IStatus errorStatus = createErrorStatus(pluginId, BROWSER_COULD_NOT_OPEN_BROWSER, e,
url);
+ log.log(errorStatus);
+ }
+ }
+
+ public static void openUrl(String url, IWebBrowser browser, String pluginId, ILog log)
{
+ try {
+ browser.openURL(new URL(url));
+ } catch (PartInitException e) {
+ IStatus errorStatus = createErrorStatus(pluginId, BROWSER_COULD_NOT_OPEN_BROWSER, e,
url);
+ log.log(errorStatus);
+ } catch (MalformedURLException e) {
+ IStatus errorStatus = createErrorStatus(pluginId, BROWSER_COULD_NOT_OPEN_BROWSER, e,
+ url);
+ log.log(errorStatus);
+ }
+ }
+
+ public static void openBrowser(URL url) {
+ try {
+ IWorkbenchBrowserSupport browserSupport =
JBossServerUIPlugin.getDefault().getWorkbench().getBrowserSupport();
+ IWebBrowser browser =
browserSupport.createBrowser(IWorkbenchBrowserSupport.LOCATION_BAR |
IWorkbenchBrowserSupport.NAVIGATION_BAR, null, null, null);
+ browser.openURL(url);
+ } catch (Exception e) {
+ JBossServerUIPlugin.getDefault().getLog().log(
+ new Status(IStatus.ERROR, JBossServerUIPlugin.PLUGIN_ID, "Unable to open web
browser", e)); //$NON-NLS-1$
+ }
+ }
+
}
Modified:
branches/jbosstools-3.3.0.M5/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/views/server/extensions/AbstractOpenBrowserServerAction.java
===================================================================
---
branches/jbosstools-3.3.0.M5/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/views/server/extensions/AbstractOpenBrowserServerAction.java 2011-12-05
10:02:20 UTC (rev 36940)
+++
branches/jbosstools-3.3.0.M5/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/views/server/extensions/AbstractOpenBrowserServerAction.java 2011-12-05
11:01:00 UTC (rev 36941)
@@ -29,7 +29,7 @@
import org.jboss.ide.eclipse.as.core.util.ServerConverter;
import org.jboss.ide.eclipse.as.ui.JBossServerUIPlugin;
import org.jboss.ide.eclipse.as.ui.Messages;
-import org.jboss.tools.common.ui.BrowserUtil;
+import org.jboss.ide.eclipse.as.ui.launch.JBTWebLaunchableClient;
public abstract class AbstractOpenBrowserServerAction extends CommonActionProvider {
@@ -100,7 +100,7 @@
public void perform(IServer server) {
try {
String consoleUrl = getURL(server);
- BrowserUtil.checkedCreateInternalBrowser(
+ JBTWebLaunchableClient.checkedCreateInternalBrowser(
consoleUrl, server.getName(), JBossServerUIPlugin.PLUGIN_ID,
JBossServerUIPlugin.getDefault().getLog());
} catch (CoreException e) {