From e969407d6073bcb73f8e57c9fb3f3ee38f706e13 Mon Sep 17 00:00:00 2001 From: Michael Scharf Date: Wed, 26 Sep 2007 21:17:16 +0000 Subject: [PATCH] fixed: when serial port in use, ask if connected terminal should be closed. --- .../terminal/serial/SerialConnectWorker.java | 1 - .../internal/terminal/serial/SerialConnector.java | 8 -------- .../terminal/serial/SerialPortHandler.java | 14 ++++---------- 3 files changed, 4 insertions(+), 19 deletions(-) diff --git a/org.eclipse.tm.terminal.serial/src/org/eclipse/tm/internal/terminal/serial/SerialConnectWorker.java b/org.eclipse.tm.terminal.serial/src/org/eclipse/tm/internal/terminal/serial/SerialConnectWorker.java index e5883a29d31..40a94a0b970 100644 --- a/org.eclipse.tm.terminal.serial/src/org/eclipse/tm/internal/terminal/serial/SerialConnectWorker.java +++ b/org.eclipse.tm.terminal.serial/src/org/eclipse/tm/internal/terminal/serial/SerialConnectWorker.java @@ -58,7 +58,6 @@ public class SerialConnectWorker extends Thread { fConn.setSerialPort(serialPort); fControl.setState(TerminalState.CONNECTED); } catch (PortInUseException portInUseException) { - fConn.setPortInUse(true); fControl.setState(TerminalState.CLOSED); fControl.setMsg("Connection Error!\n" + portInUseException.getMessage()); //$NON-NLS-1$ diff --git a/org.eclipse.tm.terminal.serial/src/org/eclipse/tm/internal/terminal/serial/SerialConnector.java b/org.eclipse.tm.terminal.serial/src/org/eclipse/tm/internal/terminal/serial/SerialConnector.java index 905c05b80e3..f637a34d7ff 100644 --- a/org.eclipse.tm.terminal.serial/src/org/eclipse/tm/internal/terminal/serial/SerialConnector.java +++ b/org.eclipse.tm.terminal.serial/src/org/eclipse/tm/internal/terminal/serial/SerialConnector.java @@ -40,7 +40,6 @@ public class SerialConnector implements ITerminalConnector { private SerialPort fSerialPort; private CommPortIdentifier fSerialPortIdentifier; private SerialPortHandler fTerminalSerialPortHandler; - private boolean fIsPortInUse; private SerialSettings fSettings; public SerialConnector() { } @@ -168,13 +167,6 @@ public class SerialConnector implements ITerminalConnector { SerialPortHandler getSerialPortHandler() { return fTerminalSerialPortHandler; } - public boolean isPortInUse() { - return fIsPortInUse; - } - public void setPortInUse(boolean b) { - fIsPortInUse=true; - - } public ISerialSettings getSerialSettings() { return fSettings; } diff --git a/org.eclipse.tm.terminal.serial/src/org/eclipse/tm/internal/terminal/serial/SerialPortHandler.java b/org.eclipse.tm.terminal.serial/src/org/eclipse/tm/internal/terminal/serial/SerialPortHandler.java index 3af07a0dc8d..82119d1a149 100644 --- a/org.eclipse.tm.terminal.serial/src/org/eclipse/tm/internal/terminal/serial/SerialPortHandler.java +++ b/org.eclipse.tm.terminal.serial/src/org/eclipse/tm/internal/terminal/serial/SerialPortHandler.java @@ -16,18 +16,17 @@ *******************************************************************************/ package org.eclipse.tm.internal.terminal.serial; -import java.io.IOException; -import java.text.MessageFormat; - import gnu.io.CommPortOwnershipListener; import gnu.io.SerialPortEvent; import gnu.io.SerialPortEventListener; +import java.io.IOException; +import java.text.MessageFormat; + import org.eclipse.jface.dialogs.MessageDialog; import org.eclipse.swt.widgets.Display; import org.eclipse.tm.internal.terminal.provisional.api.ITerminalControl; import org.eclipse.tm.internal.terminal.provisional.api.Logger; -import org.eclipse.tm.internal.terminal.provisional.api.TerminalState; /** * UNDER CONSTRUCTION @@ -68,11 +67,6 @@ public class SerialPortHandler implements } public void onSerialOwnershipRequested(Object data) { - if (fConn.isPortInUse()) { - fConn.setPortInUse(false); - return; - } - Display.getDefault().asyncExec(new Runnable() { public void run() { String[] args = new String[] { fConn.getSerialSettings().getSerialPort() }; @@ -80,7 +74,7 @@ public class SerialPortHandler implements if (!MessageDialog.openQuestion(fControl.getShell(), SerialMessages.PROP_TITLE, strMsg)) return; - fControl.setState(TerminalState.CONNECTING); + fConn.disconnect(); } });