[yocto] [PATCH 10/12] Remove TerminalHandler from org.yocto.sdk.remoteools

Ioana Grigoropol ioanax.grigoropol at intel.com
Wed May 8 05:57:16 PDT 2013


- remove TerminalHandler from remotetools plugin since it has been added to org.yocto.remote.utils
- add imports to use remote utilities implementation

Signed-off-by: Ioana Grigoropol <ioanax.grigoropol at intel.com>
---
 .../sdk/remotetools/actions/DialogHandler.java     |    1 +
 .../sdk/remotetools/actions/TerminalHandler.java   |  128 --------------------
 2 files changed, 1 insertion(+), 128 deletions(-)
 delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/TerminalHandler.java

diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/DialogHandler.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/DialogHandler.java
index d5c3583..ca6d13b 100644
--- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/DialogHandler.java
+++ b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/DialogHandler.java
@@ -15,6 +15,7 @@ import org.eclipse.core.commands.ExecutionException;
 import org.eclipse.rse.core.model.IHost;
 import org.eclipse.ui.IWorkbenchWindow;
 import org.eclipse.ui.handlers.HandlerUtil;
+import org.yocto.remote.utils.TerminalHandler;
 
 abstract public class DialogHandler extends TerminalHandler {
 	
diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/TerminalHandler.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/TerminalHandler.java
deleted file mode 100644
index ae04dc9..0000000
--- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/TerminalHandler.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 Intel Corporation.
- * All rights reserved. This program and the accompanying materials
- * are 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:
- * Intel - initial API and implementation
- *******************************************************************************/
-package org.yocto.sdk.remotetools.actions;
-
-import org.eclipse.core.commands.AbstractHandler;
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.jface.dialogs.ProgressMonitorDialog;
-import org.eclipse.jface.operation.IRunnableWithProgress;
-import org.eclipse.rse.core.model.IHost;
-import org.eclipse.rse.internal.terminals.ui.TerminalServiceHelper;
-import org.eclipse.rse.internal.terminals.ui.views.RSETerminalConnector;
-import org.eclipse.rse.internal.terminals.ui.views.TerminalViewTab;
-import org.eclipse.rse.internal.terminals.ui.views.TerminalViewer;
-import org.eclipse.rse.internal.terminals.ui.views.TerminalsUI;
-import org.eclipse.rse.services.terminals.ITerminalShell;
-import org.eclipse.rse.subsystems.terminals.core.ITerminalServiceSubSystem;
-import org.eclipse.rse.subsystems.terminals.core.elements.TerminalElement;
-import org.eclipse.rse.ui.SystemBasePlugin;
-import org.eclipse.swt.custom.CTabItem;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.tm.internal.terminal.control.ITerminalViewControl;
-import org.eclipse.tm.internal.terminal.provisional.api.ITerminalConnector;
-import org.yocto.remote.utils.CommonHelper;
-import org.yocto.remote.utils.RSEHelper;
-
-abstract public class TerminalHandler extends AbstractHandler {
-	
-	
-	protected Shell shell;
-	
-	protected String changeTerm="export TERM=vt100;";
-	
-	abstract protected String getInitCmd();
-	abstract protected String getConnnectionName();
-	abstract protected String getDialogTitle();
-	
-	protected ITerminalShell getTerminalShellFromTab(CTabItem item) {
-        ITerminalShell terminalShell = null;
-        ITerminalViewControl terminalViewControl = (ITerminalViewControl) item
-                .getData(TerminalViewTab.DATA_KEY_CONTROL);
-        ITerminalConnector terminalConnector = terminalViewControl
-                .getTerminalConnector();
-        if (terminalConnector instanceof RSETerminalConnector) {
-            RSETerminalConnector rseTerminalConnector = (RSETerminalConnector) terminalConnector;
-            terminalShell = rseTerminalConnector.getTerminalHostShell();
-        }
-        return terminalShell;
-    }
-
-	protected boolean preProcess(final ITerminalServiceSubSystem terminalSubSystem) {
-		if (!terminalSubSystem.isConnected()) {
-			try {
-				ProgressMonitorDialog dialog = new ProgressMonitorDialog(shell);
-				dialog.run(true, true, new IRunnableWithProgress(){
-				    public void run(IProgressMonitor monitor) {
-				        monitor.beginTask("Connecting to remote target ...", 100);
-				        try {
-				        terminalSubSystem.connect(new NullProgressMonitor(), false);
-				        monitor.done();
-				        } catch (Exception e) {
-				        	CommonHelper.showErrorDialog("Connection failure", null, e.getMessage());
-				        	monitor.done();
-				        	
-				        }
-				    }
-				});
-			} catch (OperationCanceledException e) {
-				// user canceled, return silently
-				return false;
-			} catch (Exception e) {
-				SystemBasePlugin.logError(e.getLocalizedMessage(), e);
-				return false;
-			}
-		} else
-			return true;
-		return false;
-	}
-	
-	public void execute(IHost host) throws ExecutionException {
-		
-		final ITerminalServiceSubSystem terminalSubSystem = RSEHelper.getTerminalSubSystem(host);
-		
-		if (terminalSubSystem != null) {
-			TerminalsUI terminalsUI = TerminalsUI.getInstance();
-			TerminalViewer viewer = terminalsUI.activateTerminalsView();
-			if (preProcess(terminalSubSystem)) {
-				CTabItem tab = viewer.getTabFolder().createTabItem(
-						terminalSubSystem.getHost(), changeTerm + getInitCmd());
-				//since RSETerminalConnector not exit the shell during the diconnection,
-				//we have manually exit it here
-				try {
-					tab.addDisposeListener(new DisposeListener() {
-						public void widgetDisposed(DisposeEvent e) {
-							Object source = e.getSource();
-							if (source instanceof CTabItem) {
-								CTabItem currentItem = (CTabItem) source;
-								ITerminalShell shell=getTerminalShellFromTab(currentItem);
-								if(shell!=null) {
-									shell.exit();
-								}
-							}
-						}
-					});
-				}catch(Exception e) {
-					e.printStackTrace();
-				}
-				TerminalElement element = TerminalServiceHelper
-						.createTerminalElement(tab, terminalSubSystem);
-				terminalSubSystem.addChild(element);
-
-			}
-		}
-	}
-
-}
-- 
1.7.9.5




More information about the yocto mailing list