# Object Teams Package Explorer

The Object Teams package explorer provides the following features (in addition to the features of the standard JDT package explorer view):

- Showing the Object Teams element hierarchy of the Object Teams projects in the workbench including
  - specific classes:
    – team class ().
    – role class ().
    – a nested team () is a role as well as a team.
  - role class decorations:
    – bound role class () — has a `playedBy` declaration.
    – overriding role class () — overrides a role from the super team
  - methods:
    – callin methods are marked with a decoration .
  - method bindings:
    – callin: before(), after (), replace ()
    – callout: ()
  - guard predicates:
    – regular guard ()
    – base guard ()
- Displaying Role Files physically/logically ():
  - Physical display uses the file and directory structure, i.e., role files will appear in a special folder/package representing the enclosing team.
  - Logical display presents role files and inline roles uniformly as direct children of their enclosing team.
- Overlay icons for compilations units (team or role file) and packages (team package) can be enabled by checking Preferences->General->Appearance->Label Decorations->Java Type Indicator.
  - compilation unit:
    – holding a team class ()
    – holding a role class ( or )
  - package:
    – team package ()

Physical view: role file `FlightBonusDialog` is displayed as a child of its team package. |  | Logical view: role `FlightBonusDialog` is displayed as a child of its enclosing team class.

## Aspect bindings in Object Teams Plug-in projects

If an Object Teams Plug-in project has aspect bindings these will be displayed in the package explorer directly under the project's root:

Below the node called OT/Equinox Aspect Bindings you will find the list of all base plug-ins adapted by the given OT plug-in. Each base plug-in in turn lists all teams that implement this adaptation.
Base plug-ins to which forced exports are applied are decorated with a little up-and-left arrow:

Double clicking a base plugin or a team shows the corresponding element in an editor:

- a base plugin as sub-element of an aspectBinding extension in the PDE's extension editor.
- a team class in the source code editor