Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 98604 Details for
Bug 228577
[rseterminal] Clean up RSE Terminal impl
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
[patch]
patch that fixes some issues mentioned
terminalsCleanUp.diff (text/plain), 11.99 KB, created by
Anna Dushistova
on 2008-05-05 04:58:04 EDT
(
hide
)
Description:
patch that fixes some issues mentioned
Filename:
MIME Type:
Creator:
Anna Dushistova
Created:
2008-05-05 04:58:04 EDT
Size:
11.99 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.rse.subsystems.terminals.core >Index: src/org/eclipse/rse/subsystems/terminals/core/TerminalServiceSubSystem.java >=================================================================== >RCS file: /cvsroot/dsdp/org.eclipse.tm.rse/plugins/org.eclipse.rse.subsystems.terminals.core/src/org/eclipse/rse/subsystems/terminals/core/TerminalServiceSubSystem.java,v >retrieving revision 1.2 >diff -u -r1.2 TerminalServiceSubSystem.java >--- src/org/eclipse/rse/subsystems/terminals/core/TerminalServiceSubSystem.java 24 Apr 2008 01:06:44 -0000 1.2 >+++ src/org/eclipse/rse/subsystems/terminals/core/TerminalServiceSubSystem.java 5 May 2008 08:56:53 -0000 >@@ -5,8 +5,9 @@ > * available at http://www.eclipse.org/legal/epl-v10.html > * > * Contributors: >- * Yu-Fen Kuo (MontaVista) - initial API and implementation >- * Yu-Fen Kuo (MontaVista) - [227572] RSE Terminal doesn't reset the "connected" state when the shell exits >+ * Yu-Fen Kuo (MontaVista) - initial API and implementation >+ * Yu-Fen Kuo (MontaVista) - [227572] RSE Terminal doesn't reset the "connected" state when the shell exits >+ * Anna Dushistova (MontaVista) - [228577] [rseterminal] Clean up RSE Terminal impl > ********************************************************************************/ > > package org.eclipse.rse.subsystems.terminals.core; >@@ -31,7 +32,7 @@ > public final class TerminalServiceSubSystem extends SubSystem implements > ITerminalServiceSubSystem, ICommunicationsListener { > >- protected ITerminalService _hostService; >+ protected ITerminalService _hostService = null; > > private ArrayList children; > >@@ -52,12 +53,14 @@ > protected TerminalServiceSubSystem(IHost host, > IConnectorService connectorService) { > super(host, connectorService); >+ children = new ArrayList(); > } > > public TerminalServiceSubSystem(IHost host, > IConnectorService connectorService, ITerminalService hostService) { > super(host, connectorService); > _hostService = hostService; >+ children = new ArrayList(); > } > > public ITerminalService getTerminalService() { >@@ -69,34 +72,28 @@ > } > > public void addChild(TerminalElement element) { >- if (children == null) { >- children = new ArrayList(); >- // if this is first shell, start listening so that on disconnect, we >- // persist >- getConnectorService().addCommunicationsListener(this); >- } >- children.add(element); >+ synchronized (children) { >+ children.add(element); >+ } > Display.getDefault().asyncExec(new Refresh(this)); > } > > public void removeChild(TerminalElement element) { >- if (children != null) { >- children.remove(element); >- } >- if (children == null) { >- getConnectorService().removeCommunicationsListener(this); >- } >- Display.getDefault().asyncExec(new Refresh(this)); >+ synchronized (children) { >+ if (children.size() > 0) { >+ children.remove(element); >+ } >+ } >+ Display.getDefault().asyncExec(new Refresh(this)); > } > > public void removeChild(String terminalTitle) { >- if (children != null) { >+ if (children.size() > 0) { > TerminalElement element = getChild(terminalTitle); > if (element != null){ >- children.remove(element); >- if (children == null) { >- getConnectorService().removeCommunicationsListener(this); >- } >+ synchronized (children) { >+ children.remove(element); >+ } > Display.getDefault().asyncExec(new Refresh(this)); > } > } >@@ -163,7 +160,7 @@ > try { > removeTerminalElement(element); > } catch (Exception e) { >- e.printStackTrace(); >+ RSECorePlugin.getDefault().getLogger().logError("Error removing terminal", e); //$NON-NLS-1$ > } > > } >#P org.eclipse.rse.terminals.ui >Index: src/org/eclipse/rse/internal/terminals/ui/views/TerminalViewer.java >=================================================================== >RCS file: /cvsroot/dsdp/org.eclipse.tm.rse/plugins/org.eclipse.rse.terminals.ui/src/org/eclipse/rse/internal/terminals/ui/views/TerminalViewer.java,v >retrieving revision 1.2 >diff -u -r1.2 TerminalViewer.java >--- src/org/eclipse/rse/internal/terminals/ui/views/TerminalViewer.java 24 Apr 2008 01:06:41 -0000 1.2 >+++ src/org/eclipse/rse/internal/terminals/ui/views/TerminalViewer.java 5 May 2008 08:56:59 -0000 >@@ -21,7 +21,8 @@ > * Radoslav Gerganov(ProSyst) - [181563] Fix hardcoded Ctrl+Space for remote shell content assist > * Yu-Fen Kuo (MontaVista) - Adapted from SystemCommandsViewPart > * Anna Dushistova (MontaVista) - Adapted from SystemCommandsViewPart >- * Yu-Fen Kuo (MontaVista) - [227572] RSE Terminal doesn't reset the "connected" state when the shell exits >+ * Yu-Fen Kuo (MontaVista) - [227572] RSE Terminal doesn't reset the "connected" state when the shell exits >+ * Anna Dushistova (MontaVista) - [228577] [rseterminal] Clean up RSE Terminal impl > ********************************************************************************/ > package org.eclipse.rse.internal.terminals.ui.views; > >@@ -38,8 +39,6 @@ > import org.eclipse.rse.core.model.ISystemRegistry; > import org.eclipse.rse.services.clientserver.messages.SystemMessage; > import org.eclipse.rse.subsystems.terminals.core.elements.TerminalElement; >-import org.eclipse.rse.ui.RSEUIPlugin; >-import org.eclipse.rse.ui.SystemWidgetHelpers; > import org.eclipse.rse.ui.messages.ISystemMessageLine; > import org.eclipse.rse.ui.model.ISystemShellProvider; > import org.eclipse.rse.ui.view.IRSEViewPart; >@@ -69,9 +68,6 @@ > .getSelectionService(); > selectionService.addSelectionListener(this); > >- SystemWidgetHelpers.setHelp(tabFolder, RSEUIPlugin.HELPPREFIX >- + "ucmd0000"); //$NON-NLS-1$ >- > ISystemRegistry registry = RSECorePlugin.getTheSystemRegistry(); > > registry.addSystemResourceChangeListener(this); >Index: src/org/eclipse/rse/internal/terminals/ui/views/TerminalsUI.java >=================================================================== >RCS file: /cvsroot/dsdp/org.eclipse.tm.rse/plugins/org.eclipse.rse.terminals.ui/src/org/eclipse/rse/internal/terminals/ui/views/TerminalsUI.java,v >retrieving revision 1.2 >diff -u -r1.2 TerminalsUI.java >--- src/org/eclipse/rse/internal/terminals/ui/views/TerminalsUI.java 17 Apr 2008 10:47:26 -0000 1.2 >+++ src/org/eclipse/rse/internal/terminals/ui/views/TerminalsUI.java 5 May 2008 08:56:59 -0000 >@@ -13,6 +13,7 @@ > * Contributors: > * Martin Oberhuber (Wind River) - [168870] refactor org.eclipse.rse.core package of the UI plugin > * Yu-Fen Kuo (MontaVista) - Adapted from SystemCommandsUI >+ * Anna Dushistova (MontaVista) - [228577] [rseterminal] Clean up RSE Terminal impl > ********************************************************************************/ > > package org.eclipse.rse.internal.terminals.ui.views; >@@ -56,7 +57,6 @@ > viewer = (TerminalViewer) page.showView(TerminalViewer.VIEW_ID); > page.bringToTop(viewer); > } catch (PartInitException e) { >- e.printStackTrace(); > SystemBasePlugin.logError(Activator > .getResourceString("TerminalsUI.cannotOpenView.error"), e); //$NON-NLS-1$ > } >Index: src/org/eclipse/rse/internal/terminals/ui/views/RSETerminalConnectorImpl.java >=================================================================== >RCS file: /cvsroot/dsdp/org.eclipse.tm.rse/plugins/org.eclipse.rse.terminals.ui/src/org/eclipse/rse/internal/terminals/ui/views/RSETerminalConnectorImpl.java,v >retrieving revision 1.3 >diff -u -r1.3 RSETerminalConnectorImpl.java >--- src/org/eclipse/rse/internal/terminals/ui/views/RSETerminalConnectorImpl.java 25 Apr 2008 20:14:52 -0000 1.3 >+++ src/org/eclipse/rse/internal/terminals/ui/views/RSETerminalConnectorImpl.java 5 May 2008 08:56:59 -0000 >@@ -7,12 +7,14 @@ > * Contributors: > * Anna Dushistova (MontaVista) - initial API and implementation > * Yu-Fen Kuo (MontaVista) - [227572] RSE Terminal doesn't reset the "connected" state when the shell exits >+ * Anna Dushistova (MontaVista) - [228577] [rseterminal] Clean up RSE Terminal impl > ********************************************************************************/ > package org.eclipse.rse.internal.terminals.ui.views; > > import java.io.InputStream; > import java.io.OutputStream; > >+import org.eclipse.rse.core.RSECorePlugin; > import org.eclipse.rse.core.model.IHost; > import org.eclipse.rse.internal.services.terminals.ITerminalShell; > import org.eclipse.tm.internal.terminal.provisional.api.ITerminalControl; >@@ -42,7 +44,7 @@ > try { > getInputStream().close(); > } catch (Exception exception) { >- exception.printStackTrace(); >+ RSECorePlugin.getDefault().getLogger().logError("Error while closing input stream", exception); //$NON-NLS-1$ > } > } > >@@ -50,7 +52,7 @@ > try { > getTerminalToRemoteStream().close(); > } catch (Exception exception) { >- exception.printStackTrace(); >+ RSECorePlugin.getDefault().getLogger().logError("Error while closing terminal-to-remote stream", exception); //$NON-NLS-1$ > } > } > } >Index: src/org/eclipse/rse/internal/terminals/ui/views/RSETerminalConnectionThread.java >=================================================================== >RCS file: /cvsroot/dsdp/org.eclipse.tm.rse/plugins/org.eclipse.rse.terminals.ui/src/org/eclipse/rse/internal/terminals/ui/views/RSETerminalConnectionThread.java,v >retrieving revision 1.1 >diff -u -r1.1 RSETerminalConnectionThread.java >--- src/org/eclipse/rse/internal/terminals/ui/views/RSETerminalConnectionThread.java 16 Apr 2008 20:56:35 -0000 1.1 >+++ src/org/eclipse/rse/internal/terminals/ui/views/RSETerminalConnectionThread.java 5 May 2008 08:56:59 -0000 >@@ -6,6 +6,7 @@ > * > * Contributors: > * Anna Dushistova (MontaVista) - initial API and implementation >+ * Anna Dushistova (MontaVista) - [228577] [rseterminal] Clean up RSE Terminal impl > ********************************************************************************/ > package org.eclipse.rse.internal.terminals.ui.views; > >@@ -14,6 +15,7 @@ > import java.io.InterruptedIOException; > > import org.eclipse.core.runtime.NullProgressMonitor; >+import org.eclipse.rse.core.RSECorePlugin; > import org.eclipse.rse.internal.services.terminals.ITerminalShell; > import org.eclipse.rse.internal.services.terminals.ITerminalService; > import org.eclipse.rse.internal.terminals.ui.TerminalServiceHelper; >@@ -53,9 +55,8 @@ > } > fConn.setInputStream(shell.getInputStream()); > fConn.setOutputStream(shell.getOutputStream()); >- } catch (SystemMessageException e1) { >- // TODO Auto-generated catch block >- e1.printStackTrace(); >+ } catch (SystemMessageException e) { >+ RSECorePlugin.getDefault().getLogger().logError("Error launching terminal", e); //$NON-NLS-1$ > } > fConn.setTerminalHostShell(shell); > fControl.setState(TerminalState.CONNECTED); >@@ -69,8 +70,7 @@ > } catch (InterruptedIOException e) { > // we got interrupted: we are done... > } catch (IOException e) { >- // TODO Auto-generated catch block >- e.printStackTrace(); >+ RSECorePlugin.getDefault().getLogger().logError("Error while reading data", e); //$NON-NLS-1$ > } catch (InterruptedException e) { > } > // when reading is done, we set the state to closed >@@ -82,16 +82,6 @@ > */ > void disconnect() { > interrupt(); >- synchronized (this) { >- try { >- // do not close the connection >- // TerminalServiceHelper.getTerminalSubSystem(fConn.host) >- // .disconnect(); >- } catch (Exception e) { >- // TODO Auto-generated catch block >- e.printStackTrace(); >- } >- } > } > > /**
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
mober.at+eclipse
:
iplog+
mober.at+eclipse
:
review+
Actions:
View
|
Diff
Attachments on
bug 228577
: 98604 |
98633
|
98685