Views & Dialogs | |
OT elements in structure compare |
Object Teams elements are now properly displayed in structure comparisons of any compare editors. |
Refactoring | |
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: Pull-up:
=>
Declare abstract:
=>
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. |
Language | |
Callin to Constructor |
It is now possible to define a callin-after binding to a constructor of a role's base class:
Within the intercepting role method the base instance can be assumed to be fully initialized, and thus the role is fully
operational, e.g., in terms of calling callout-bound methods. It is for these reasons that |