History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: IDEADEV-20111
Type: New Feature New Feature
Status: Open Open
Priority: Normal Normal
Assignee: Dmitry Avdeev
Reporter: Davide Baroncelli
Votes: 1
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
IDEA: Development

Application Context Refactorings: extract bean and inline bean, extract property, extract import file

Created: 26 Jun 07 17:55   Updated: 02 Apr 08 16:24
Component/s: J2EE.Spring
Fix Version/s: None

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown
Issue Links:
Depend
 
This issue is required for:
IDEADEV-25668 Spring refactorings Major Open

Build: 7,027


 Description  « Hide
Could be good having features such as "extract bean" (an inlined bean is factored out of its in-place definition in a property setter, with duplicate extraction and given a name), and the inverse "inline bean" (a first-level bean is inlined in the property setters directly using it).

Also potentially useful: "extract property", when selecting text value (in a property setter), one could have an option to refactor that text in a property (ex: selecting "foo" in "foobar" and using the refactoring would ask for a property name and file with the usual "new property" dialog and replace it with "${chosen-property-name}bar".

Also useful could be selecting a number of beans, selecting "extract import file" and move those beans definition to an imported application context file.



 All   Comments   Work Log   Change History      Sort Order:
Taras Tielkes - 26 Jun 07 19:36
Davide, I think it's better to create multiple JIRA issues for such requests.
That way discussions and voting can be more specific and focused.

Many of the features you mention already have JIRA requests:
IDEADEV-13688: Introduce bean
IDEADEV-13689: Inline bean
IDEADEV-13690: Move bean (I think this could do most of the work of what you suggest for "extract import file")
IDEADEV-18330: extract of values into properties file

It looks like above requests cover almost everything you mention. Please add specific comments and votes (and add yourself as watcher).
I think this one can be marked "Duplicate" now


Davide Baroncelli - 26 Jun 07 22:38
You're absolutely right: I gave a quick peek at the feedback space in jira just to see that the feature enhancements hadn't already been suggested, but I didn't think they could have already been transferred in the dev space. They are nearly exact duplicates of mine, and I added a small comment to precise one.

Taras Tielkes - 26 Jun 07 23:01
From previous experience, just being in IDEADEV does not mean it will be implemented soon
However, it would be interesting to know which of these refactorings you deem most valuable/useful, and why.

While all of them have value, I (personally) feel that more lower-level essential features are more important. Just to name three of them: AOP, custom namepaces, and the new attribute-driven model from spring 2.1.


Davide Baroncelli - 27 Jun 07 12:27
We don't use a lot of AOP, but this may change in the future. Custom namespaces are a must. The attribute driven model is interesting, but is a little cutting edge, for us: I believe that IDEA Spring support should refine a little rough edges like these ones before moving on. I believe this is the time to establish a good baseline of quality with the Spring integration, and this quality in my opinion depends a lot on having similar refactoring and search features in the application context xml as we can have in other parts of the IDE. I find myself constantly trying things like "let's see if alt-f7 works... let's see if shift-f6 works": when I find no consistency it's a little bit frustrating.

Taras Tielkes - 27 Jun 07 14:34
So, which "refactoring" are you missing most when working with spring xml?

Davide Baroncelli - 27 Jun 07 16:48
I think the "move beans" with file creation support (and the automatic import inclusion).

Davide Baroncelli - 27 Jun 07 16:50
Also, I realize that I'm missing a good "what's new" aggregated by area (ex: what's new in Spring integration), up-to-date with the modifications introduced by the various EAP versions and sorted by feature (not by version), so that one can review them in a single pass: I didn't even know that alt-f7 works for beans!