From: <agi...@us...> - 2009-04-17 14:22:41
|
Revision: 4517 http://unicore.svn.sourceforge.net/unicore/?rev=4517&view=rev Author: agiesler Date: 2009-04-17 13:31:54 +0000 (Fri, 17 Apr 2009) Log Message: ----------- - Transforming to Communication Provider for plain SSH Modified Paths: -------------- eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/META-INF/MANIFEST.MF eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/plugin.xml eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/Messages.java eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/SSHConnectionInfo.java eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/SSHTerminalView.java eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/SshShell.java Added Paths: ----------- eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/.project eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/icons/terminal-icon-16.jpg eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/icons/terminal_rg_16.jpg eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/PlainSSHCommunicationProvider.java Added: eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/.project =================================================================== --- eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/.project (rev 0) +++ eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/.project 2009-04-17 13:31:54 UTC (rev 4517) @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>de.fzj.unicore.rcp.terminal.ssh.plain</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>com.atlassw.tools.eclipse.checkstyle.CheckstyleBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.jem.workbench.JavaEMFNature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.jem.beaninfo.BeanInfoNature</nature> + <nature>com.atlassw.tools.eclipse.checkstyle.CheckstyleNature</nature> + </natures> +</projectDescription> Modified: eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/META-INF/MANIFEST.MF =================================================================== --- eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/META-INF/MANIFEST.MF 2009-04-17 13:30:24 UTC (rev 4516) +++ eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/META-INF/MANIFEST.MF 2009-04-17 13:31:54 UTC (rev 4517) @@ -1,7 +1,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name -Bundle-SymbolicName: eu.geclipse.terminal.ssh;singleton:=true +Bundle-SymbolicName: de.fzj.unicore.rcp.terminal.ssh;singleton:=true Bundle-Version: 1.0.0.qualifier Bundle-Activator: de.fzj.unicore.rcp.terminal.ssh.plain.Activator Bundle-Vendor: %Bundle-Vendor @@ -10,8 +10,8 @@ org.eclipse.core.runtime, org.eclipse.jsch.core, com.jcraft.jsch, - de.fzj.unicore.rcp.common, - de.fzj.unicore.rcp.terminal + de.fzj.unicore.rcp.terminal, + de.fzj.unicore.rcp.common Bundle-ActivationPolicy: lazy Import-Package: de.fzj.unicore.rcp.terminal Bundle-RequiredExecutionEnvironment: J2SE-1.5 Added: eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/icons/terminal-icon-16.jpg =================================================================== (Binary files differ) Property changes on: eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/icons/terminal-icon-16.jpg ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Added: eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/icons/terminal_rg_16.jpg =================================================================== (Binary files differ) Property changes on: eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/icons/terminal_rg_16.jpg ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Modified: eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/plugin.xml =================================================================== --- eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/plugin.xml 2009-04-17 13:30:24 UTC (rev 4516) +++ eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/plugin.xml 2009-04-17 13:31:54 UTC (rev 4517) @@ -1,13 +1,15 @@ <?xml version="1.0" encoding="UTF-8"?> <?eclipse version="3.2"?> <plugin> -<extension + + <extension point="org.eclipse.ui.views"> <view - name="SSH Terminal" - category="eu.geclipse.ui.viewcategory" - class="de.fzj.unicore.rcp.terminal.ssh.internal.SSHTerminalView" - id="de.fzj.unicore.rcp.terminal.views.SSHTerminalView"> + icon="icons/terminal-icon-16.jpg" + name="SSHTerminal" + category="de.fzj.unicore" + class="de.fzj.unicore.rcp.terminal.ssh.plain.SSHTerminalView" + id="de.fzj.unicore.rcp.terminal.ssh.views.TerminalView"> </view> </extension> @@ -24,5 +26,13 @@ </action> </objectContribution> </extension> + <extension + id="de.fzj.unicore.rcp.terminal.ssh.plain.CommunicationProvider" + name="PLAIN SSH" + point="de.fzj.unicore.rcp.terminal.communicationProvider"> + <provider + class="de.fzj.unicore.rcp.terminal.ssh.plain.PlainSSHCommunicationProvider"> + </provider> + </extension> </plugin> Modified: eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/Messages.java =================================================================== --- eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/Messages.java 2009-04-17 13:30:24 UTC (rev 4516) +++ eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/Messages.java 2009-04-17 13:31:54 UTC (rev 4517) @@ -23,7 +23,7 @@ * Returns the localised messages for this package. */ public class Messages { - private static final String BUNDLE_NAME = "de.fzj.unicore.rcp.terminal.ssh.internal.messages"; //$NON-NLS-1$ + private static final String BUNDLE_NAME = "de.fzj.unicore.rcp.terminal.ssh.plain.messages"; //$NON-NLS-1$ private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME ); private Messages() { Added: eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/PlainSSHCommunicationProvider.java =================================================================== --- eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/PlainSSHCommunicationProvider.java (rev 0) +++ eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/PlainSSHCommunicationProvider.java 2009-04-17 13:31:54 UTC (rev 4517) @@ -0,0 +1,26 @@ +package de.fzj.unicore.rcp.terminal.ssh.plain; + +import java.net.URI; + +import de.fzj.unicore.rcp.terminal.IBidirectionalConnection; +import de.fzj.unicore.rcp.terminal.TerminalConnection; +import de.fzj.unicore.rcp.terminal.extensionpoints.ICommunicationProvider; + +public class PlainSSHCommunicationProvider implements + ICommunicationProvider { + + @Override + public TerminalConnection establishConnection(URI serverAddress) { + TerminalConnection result = new TerminalConnection(); + String hostname = serverAddress.getHost(); + SSHConnectionInfo info = new SSHConnectionInfo(null,hostname,null,null,22); + info.promptHost(); + info.promptUsername(); + SshShell shell = new SshShell(); + IBidirectionalConnection connection = shell.createConnection(info); + result.setConnection(connection); + result.setListener(shell); + return result; + } + +} Modified: eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/SSHConnectionInfo.java =================================================================== --- eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/SSHConnectionInfo.java 2009-04-17 13:30:24 UTC (rev 4516) +++ eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/SSHConnectionInfo.java 2009-04-17 13:31:54 UTC (rev 4517) @@ -131,7 +131,8 @@ final int[] result = { Window.OK }; Display.getDefault().syncExec( new Runnable() { public void run() { - InputDialog dlg = new InputDialog(new Shell(),"Host name","Please enter the host name:","zam025c09.zam.kfa-juelich.de",null); + String hostname = SSHConnectionInfo.this.host == null ? "hostname" : SSHConnectionInfo.this.host; + InputDialog dlg = new InputDialog(new Shell(),"Host name","Please enter the host name:",hostname,null); dlg.open(); if ( dlg.getReturnCode() == InputDialog.OK ) SSHConnectionInfo.this.host = dlg.getValue(); Modified: eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/SSHTerminalView.java =================================================================== --- eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/SSHTerminalView.java 2009-04-17 13:30:24 UTC (rev 4516) +++ eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/SSHTerminalView.java 2009-04-17 13:31:54 UTC (rev 4517) @@ -7,13 +7,13 @@ public class SSHTerminalView extends TerminalView{ + + public void createPartControl( final Composite parent ) { super.createPartControl(parent); - SSHConnectionInfo info = new SSHConnectionInfo(); - info.promptHost(); - info.promptUsername(); - SshShell shell = new SshShell(); - shell.createTerminal(this, info); + } + + } Modified: eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/SshShell.java =================================================================== --- eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/SshShell.java 2009-04-17 13:30:24 UTC (rev 4516) +++ eclipseclient/trunk/plugins/de.fzj.unicore.rcp.terminal.ssh.plain/src/de/fzj/unicore/rcp/terminal/ssh/plain/SshShell.java 2009-04-17 13:31:54 UTC (rev 4517) @@ -38,7 +38,7 @@ */ public class SshShell implements ITerminalListener { ChannelShell channel; - ITerminalPage terminal; + SSHConnectionInfo userInfo; private int preConnectCols = -1; private int preConnectLines; @@ -57,16 +57,8 @@ } - /** - * Creates a new SSH terminal session using the specified ssh connection - * information in the specified terminal view. - * @param terminalView the terminal view to add the ssh terminal session to. - * @param sshConnectionInfo the connection information describing the ssh - * session. - * @param forwards list of port forwards to create. - */ - public void createTerminal( final ITerminalView terminalView, - final SSHConnectionInfo sshConnectionInfo) { + + public IBidirectionalConnection createConnection(final SSHConnectionInfo sshConnectionInfo) { try { IJSchService service = Activator.getDefault().getJSchService(); if (service == null) { @@ -109,43 +101,25 @@ }; this.channel = (ChannelShell) session.openChannel( "shell" ); //$NON-NLS-1$ - Display.getDefault().syncExec( new Runnable() { - public void run() { - try { - SshShell.this.terminal = terminalView.addTerminal( connection, SshShell.this ); - SshShell.this.terminal.setTabName( SshShell.this.userInfo.getHostname() ); - SshShell.this.terminal.setDescription( Messages.formatMessage( "SshShell.descriptionWithoutWinTitle", //$NON-NLS-1$ - SshShell.this.userInfo.getUsername(), - SshShell.this.userInfo.getHostname() ) ); - } catch( final IOException exception ) { - Activator.logException( exception ); - } - } - } ); this.channel.connect(); if ( this.preConnectCols != -1 ) { windowSizeChanged( this.preConnectCols, this.preConnectLines, this.preConnectXPix, this.preConnectYPix ); } + return connection; } - } catch ( final JSchException exception ) { - if ( !this.userInfo.getCanceledPWValue() ) { - Display.getDefault().asyncExec( new Runnable() { - public void run() { - - } - } ); - } - } catch( Exception exception ){ - Activator.logException( exception ); + } catch ( final Exception exception ) { + Activator.logException( exception ); + } + return null; } public void windowTitleChanged( final String windowTitle ) { - this.terminal.setDescription( Messages.formatMessage( "SshShell.descriptionWithWinTitle", //$NON-NLS-1$ - this.userInfo.getUsername(), - this.userInfo.getHostname(), - windowTitle ) ); +// this.terminal.setDescription( Messages.formatMessage( "SshShell.descriptionWithWinTitle", //$NON-NLS-1$ +// this.userInfo.getUsername(), +// this.userInfo.getHostname(), +// windowTitle ) ); } /* (non-Javadoc) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |