The pull-up refactoring has been made smarter so that it can correctly handle callout method bindings, too.
A callout binding can either be pulled-up as such or a corresponding abstract method can be created in ths super-role.
When choosing among the above strategies in the wizard, pull-up will only be accepted if a super-role has a compatible
This is particularly interesting when pulling up a method that calls a callout:
In the latter example you see that
Move to role file
A new refactoring has been added to move an inline role to a new role file (see OTJLD §1.2.5).
This refactoring is relevant when a team with inline roles grows to a size where maintainability suffers from a lack of decomposition. Since teams typically start with only a few, small roles, it is natural that this issue arises only during evolution. Re-organizing the file structure using this new refactoring is the natural answer to such issues.
By definition this refactoring does not change the semantics of a program. Still the following items are considered by the refactoring:
The refactoring is invoked via the Refactor menu or context menu as Move to Role File. No further input is needed.