E4/Eclipse Application Services
- Receiving input.
- Producing selection.
- Persisting data (receiving persisted state, and producing persistable state).
- Accessing preferences (mostly read access, but sometimes write access).
- Managing shared resources (e.g. JFace LocalResourceManager).
- Status handling (errors and warnings).
- Connecting to the help system.
- Participating in Undo/Redo.
- Adapting objects.
- Participating in label and icon decoration.
- Reacting to changes to the context (such as plug-ins that come and go).
- Scheduling background work.
- Contributing to the workbench model (e.g. tool items, menus).
- Registering command handlers.
- Reacting to changes to the workbench model.
- Reporting progress and responding to cancellation requests.
- Reporting status (think status line).
- Logging.