Bug 261478 - [api] Remove SshShellService, SshHostShell
Summary: [api] Remove SshShellService, SshHostShell
Status: RESOLVED FIXED
Alias: None
Product: Target Management
Classification: Tools
Component: RSE (show other bugs)
Version: 3.1   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: 3.1 M5   Edit
Assignee: Anna Dushistova CLA
QA Contact: Martin Oberhuber CLA
URL:
Whiteboard:
Keywords: api
Depends on: 261481 259414
Blocks:
  Show dependency tree
 
Reported: 2009-01-19 05:18 EST by Martin Oberhuber CLA
Modified: 2011-05-26 06:57 EDT (History)
0 users

See Also:


Attachments
patch that removes (53.76 KB, patch)
2009-01-22 11:30 EST, Anna Dushistova CLA
no flags Details | Diff
improved patch (64.98 KB, patch)
2009-01-22 14:51 EST, Anna Dushistova CLA
mober.at+eclipse: iplog-
Details | Diff
Additional patch reving up services.ssh version to 3.0 (11.35 KB, patch)
2009-02-01 11:44 EST, Martin Oberhuber CLA
no flags Details | Diff
Additional patch reving up services.telnet to 2.0 (8.41 KB, patch)
2009-02-01 12:00 EST, Martin Oberhuber CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Oberhuber CLA 2009-01-19 05:18:42 EST
With using the new generic TerminalHostShell for both SSH and Telnet, we should be removing the obsolete SshShellService, SshHostShell or at least schedule for removal.

The classes have been internal, so we could theoretically be removing them right away, but deprecating for now seems safer. Should discuss this in the next committer meeting.

We should be getting rid of the "... using internal non-API" warnings in the subsystem. Note that as per the Manifest, subsystems.ssh now requires rse.services version 3.1 or later, so there is a guarantee that TerminalShellService is available.
Comment 1 Martin Oberhuber CLA 2009-01-19 05:19:31 EST
Need to decide or do this soon to allow adopters some time.
We should also mention in a migration guide that instead of

   x instanceof SshHostShell

clients should now do something else.
Comment 2 Anna Dushistova CLA 2009-01-22 09:30:50 EST
Martin, should we also get rid of TelnetShellService, TelnetHostShell, etc.?
Comment 3 Martin Oberhuber CLA 2009-01-22 10:13:26 EST
Yes, indeed!
Comment 4 Anna Dushistova CLA 2009-01-22 11:30:43 EST
Created attachment 123390 [details]
patch that removes 

Martin, could I also remove SshTerminalService/TelnetTerminalService#getRelatedShellService()?
It's only needed for getAdapter().
Also we might consider moving getAdapter() to AbstractTerminalService.
What do you think?
Comment 5 Martin Oberhuber CLA 2009-01-22 11:35:04 EST
getAdapter() should return the GenericTerminalToHostShellAdapter, so I think you can remove this.
Comment 6 Anna Dushistova CLA 2009-01-22 14:51:57 EST
Created attachment 123422 [details]
improved patch
Comment 7 Anna Dushistova CLA 2009-01-22 14:55:02 EST
Martin, could you please take a look?
Comment 8 Martin Oberhuber CLA 2009-01-23 01:36:24 EST
I cannot review each and every change, especially not while we're still far from release. You'll need to take on responsibility for yourself :-)

I'll make occasional checks in CVS though.
Comment 9 Anna Dushistova CLA 2009-01-23 05:44:30 EST
(In reply to comment #8)
> I cannot review each and every change, especially not while we're still far
> from release. You'll need to take on responsibility for yourself :-)

I just thought you want this M5 build be a bit more stable and thus asked for review. I checked the attached patch in. 
Comment 10 Martin Oberhuber CLA 2009-02-01 11:44:49 EST
Created attachment 124375 [details]
Additional patch reving up services.ssh version to 3.0

I also had to rev up the org.eclipse.rse.services.ssh plugin version 
to 3.0.0 because of the following:

- the OLD org.eclipse.rse.subsystems.shells.ssh plugin had a reference to
  SshHostShell which is now gone
- somebody could have RSE 3.0 and then use p2 to update only the SSH
  shell subsystem
- result would be a non-working configuration

==> Because our own plugins have been consuming internal non-API, and their 
dependencies had been expressed as [2.0.0,3.0.0), I have to move up 
the org.eclipse.rse.services.ssh version to 3.0.0 to ensure that the old 
plugins won't be compatible with the new version (which doesn't have SshHostShell any more).

In retrospect, it was wrong to have a [2.0.0,3.0.0) dependency -- any bundle 
which consumes internal non-API should specify a [2.0.0,2.1.0) dependency. I 
have rectified this in the new bundles and features.

At the same time, I moved up the Copyright Year to 2009 in all the
feature.properties and about.properties files. 

We will need to communicate the change in plugin version to 3.0 to our downstream consumers, since they might not expect such a change in a 
3.1 release -- although it is technically correct (since no public API was
touched).
Comment 11 Martin Oberhuber CLA 2009-02-01 12:00:06 EST
Created attachment 124376 [details]
Additional patch reving up services.telnet to 2.0

Rev up services.telnet to version 2.0 for the same reason as mentioned for SSH.