Bug 81926 - [extract interface] rename the implementation class instead of the interface [refactoring]
Summary: [extract interface] rename the implementation class instead of the interface ...
Status: ASSIGNED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 3.1   Edit
Hardware: PC Linux
: P3 enhancement with 2 votes (vote)
Target Milestone: ---   Edit
Assignee: JDT-UI-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-12-27 05:50 EST by Uwe Kubosch CLA
Modified: 2020-06-04 11:17 EDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Uwe Kubosch CLA 2004-12-27 05:50:15 EST
When performing an "Extract Interface", the interface should get the name of the
old class, and the implementation class, the old class, should be renamed with
an "Impl" suffix.

Optionally the interface could be given a new name.

Most often when performing "Extract Interface" you want to hide an
implementation behind a known interface.  So really what you want to do is
"Extract Implemetation", but "Extract Interface" is a better name.  However, in
all cases I have used it, I want all clients to refer to the interface by the
existing name, not by a new name.  I always want to give the implementing class
a new name, often with just an "Impl" suffix, but not always.  Today I need 2
extra refactings to rename both the interface to the old class name and the old
class to an implementation name.  I would be great to not have to do this.

This also saves the job of changing all client references, but this could be
optionally included if the developer chooses to change the interface name.
Comment 1 Dirk Baeumer CLA 2005-01-23 12:02:45 EST
Tobias, this is actually a good suggestion.

Depending on the overall progress we should look into this in M6/M7.

Time permitted enhancement for 3.1
Comment 2 Tobias Widmer CLA 2005-05-03 05:00:56 EDT
Not for 3.1
Comment 3 Tobias Widmer CLA 2006-04-11 10:21:50 EDT
Not for 3.2

Assigning for 3.3
Comment 4 Martin Aeschlimann CLA 2007-02-16 04:00:44 EST
Not planed for 3.3
Comment 5 Marvin Fröhlich CLA 2016-11-21 05:52:38 EST
+1