Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Corona Design Collaboration
Contents
Description
Collaboration is the user experience of Corona. It enables a set of individual Eclipse Workbenches to participate in a workgroup. Corona's collaboratoin features involve both client-side (Eclipse Workbench plugins) server-side (SOA) components.
Corona enables a context to collaboration. This context enables collaboration events to be grouped so that relationships between artifacts can be established. Corona provides an exemplary collaboration context of a project as the bases for a workgroup.
References
- Project Container
- Eclipse Communication Framework
- OSGi EventAdmin service
- OSGi Service Registration / Service Tracking
Scope
- The Eclipse Workbench is the supported client side environment for collaboration.
Assumptions
- A collaboration project context has already been established on each Workbench that is participating in the workgroup.
Design
Collaboration Builder
An Eclipse Workbench project builder (nature) will be added to each Workbench project that is associated with a Collaboration project. This will indicate that the Workbench project is participating in a Collaboration project.
The Collaboration Builder will handle all Workbench Resource Change Events and propagate them to registered Collaboration listeners. The following are the types of Collaboration listeners
- ICollaborationFileListener
- ICollaborationFolderListener
- ICollaborationResourceListener
Each Collaboration listener is responsible for handling the Workbench Resource Change event and publishing it as a Collaboration Event, if necessary.