return;
}
IStructuredSelection ss = (IStructuredSelection)selection;
JcrNode node = (JcrNode) ss.getFirstElement();
IWorkbenchPage page = targetPart.getSite().getPage();
IModule module = ServerUtil.getModule(node.getProject());
if (module==null) {
MessageDialog.openWarning(shell, "Cannot open browser", "Not configured for any server");
return;
}
IServer[] servers = ServerUtil.getServersByModule(module, new NullProgressMonitor());
if (servers==null || servers.length==0) {
MessageDialog.openWarning(shell, "Cannot open browser", "Not configured for any server");
return;
}
IServer server = servers[0];
final String url = node.getURLForBrowser(server)+".html";
try {
IEditorInput input = new WebBrowserEditorInput(url);
page.openEditor(input, "org.apache.sling.ide.eclipse.ui.editors.WebBrowser", true);
} catch (PartInitException e1) {
//TODO proper logging
e1.printStackTrace();
MessageDialog.openWarning(shell, "Cannot open browser", "Opening caused an exception: "+e1.getMessage());
}