Skip to main content

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.

Jump to: navigation, search

Difference between revisions of "Corona Use Case Project Open"

m
(Updated diagram and use case steps)
Line 25: Line 25:
 
# A team member open an Eclipse Workbench project
 
# A team member open an Eclipse Workbench project
 
# The Eclipse Workbench publishes a ''IResourceChangeEvent'' notifying interested plug-ins that the project is being opened. [A]
 
# The Eclipse Workbench publishes a ''IResourceChangeEvent'' notifying interested plug-ins that the project is being opened. [A]
# The Corona plug-in ''org.eclipse.corona.client.project.builder'' receives the ''IResourceChangeEvent'' notification. [C]
+
# The Corona plug-in ''org.eclipse.corona.client.project.builder'' receives the ''IResourceChangeEvent'' notification. [D]
 
## The plug-in validates that the Workbench project being opened has the Collaboration Nature assigned to it.
 
## The plug-in validates that the Workbench project being opened has the Collaboration Nature assigned to it.
## A ''ProjectCollaborationEvent'' is created and sent to Corona's Collaboration EventAdmin  [D,H]
+
## A ''ProjectCollaborationEvent'' is created and sent to Corona's Collaboration EventAdmin  [E,I]
# The Corona plug-in ''org.eclipse.corona.common.collaboration.eventadmin'' recieves the Collaboration Event from Corona's Project Builder. [G]
+
# The Corona plug-in ''org.eclipse.corona.common.collaboration.eventadmin'' recieves the Collaboration Event from Corona's Project Builder. [H]
 
## The CollaborationEvent is validated and published as an OSGi Event.
 
## The CollaborationEvent is validated and published as an OSGi Event.
# The Eclipse plug-in, ''org.eclipse.equinox.eventadmin'', handles the OSGi Event.  [J]
+
# The Eclipse plug-in, ''org.eclipse.equinox.eventadmin'', handles the OSGi Event.  [K]
## A copy of the event is delivered to all registered event subscribers.  [F,K]
+
## A copy of the event is delivered to all registered event subscribers.  [G,L]
# The Corona plug-in ''org.eclipse.corona.client.collaboration.ecf'' receives a copy of the Collaboratoin Event. [K]
+
# The Corona plug-in ''org.eclipse.corona.client.project.event.handler'' receives a copy of the Collaboratoin Event. [G]
 
## The Collaboration Event is "adapted"" to a Project Collaboration Event
 
## The Collaboration Event is "adapted"" to a Project Collaboration Event
## The remote Project Container is accessed via web services to retrieve details of the Collaboaration project.
+
## The ProjectEvent is forwarded to the plug-in ''org.eclipse.corona.client.project.proxy'' where the remote Project Container is accessed via web services to retrieve details of the Collaboaration project. [C]
 
## The Project Container deatils are used to update the UI. [B]
 
## The Project Container deatils are used to update the UI. [B]
# The Corona plug-in ''org.eclipse.corona.client.project.event.handler'' receives a copy of the Collaboration Event. [F]
+
# The Corona plug-in ''org.eclipse.corona.client.collaboration.ecf'' receives a copy of the Collaboration Event. [L]
## The Collaboration Event is sent to ECF where it is distributed to all members of the workgroup.
+
## The Collaboration Event is sent to ECF where it is distributed to all members of the workgroup. [M]
 
### The Collaboration Event is published to an ECF topic that represents the Project Collaboration context.
 
### The Collaboration Event is published to an ECF topic that represents the Project Collaboration context.
  

Revision as of 15:24, 26 June 2006

Home Wiki Home Requirements

Description

A new team member joins a Project. The development group is using eclipse, and the Project consists of a number of sub-projects (corresponding to Eclipse projects). The new member installs Eclipse, installs the Corona Client plugin, and configures it to talk to the workgroup's Corona server. The new member then selects the workgroup's Project from a list, and watches in amazement as Eclipse initializes the project settings and checks the appropriate sub-projects out of CVS.

Actors

  • Team Member – A member of team that performs some action (create, update, delete) upon a project.

Assumptions

  • The Eclipse Workbench has been enabled with Corona and ECF plug-ins
  • The Workbench has a local projects ‘A’ defined
  • Workbench project ‘A’ has a Project Collaboration Nature assigned to it.
  • Workbench project ‘A’ belong to the Corona ProjectContainer context named ‘Acme’

Steps

The following illustration is referenced by this use case. Each box in the illustration is labled (A-L) and is referenced by each use case step that it is involved with.\\ CoronaCollabFlow.png

  1. A team member open an Eclipse Workbench project
  2. The Eclipse Workbench publishes a IResourceChangeEvent notifying interested plug-ins that the project is being opened. [A]
  3. The Corona plug-in org.eclipse.corona.client.project.builder receives the IResourceChangeEvent notification. [D]
    1. The plug-in validates that the Workbench project being opened has the Collaboration Nature assigned to it.
    2. A ProjectCollaborationEvent is created and sent to Corona's Collaboration EventAdmin [E,I]
  4. The Corona plug-in org.eclipse.corona.common.collaboration.eventadmin recieves the Collaboration Event from Corona's Project Builder. [H]
    1. The CollaborationEvent is validated and published as an OSGi Event.
  5. The Eclipse plug-in, org.eclipse.equinox.eventadmin, handles the OSGi Event. [K]
    1. A copy of the event is delivered to all registered event subscribers. [G,L]
  6. The Corona plug-in org.eclipse.corona.client.project.event.handler receives a copy of the Collaboratoin Event. [G]
    1. The Collaboration Event is "adapted"" to a Project Collaboration Event
    2. The ProjectEvent is forwarded to the plug-in org.eclipse.corona.client.project.proxy where the remote Project Container is accessed via web services to retrieve details of the Collaboaration project. [C]
    3. The Project Container deatils are used to update the UI. [B]
  7. The Corona plug-in org.eclipse.corona.client.collaboration.ecf receives a copy of the Collaboration Event. [L]
    1. The Collaboration Event is sent to ECF where it is distributed to all members of the workgroup. [M]
      1. The Collaboration Event is published to an ECF topic that represents the Project Collaboration context.

Variations

Non-Functional

Performance

  • Performance is expected to meet a normal user experience.

Frequency

  • A team member is expected to occasionally open a project.

Back to the top