Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [corona-dev] Corona System Container

We had a small discussion here about this approach. In general we like it. It seem to be consistent and extensible :)

There is just one issue - it would require quite a big change to have it fully implemented. I don't think we would use it fully before Eclipse Con. We would probably keep it as is for now, and use only system events.

Two more ideas:
- Keeping the list of containers as repositories has one more advantage - we could use our adapters to keep it in other way than file. It could be in Jackrabbit, or CVS. - The system container could be probably completely detached from Corona. Corona server with container manager would be then a repository. It would allow better integration with other projects, like Buckminster - while they could use the same file. And instead of providing URL to CC Manger in clients, we could just point where the SystemContainer file is located.

Marcin


O'Flynn, Dennis napisał(a):

As thought was given to the need for system wide (non ContextContainer specific) events, it occurred that other system wide actions (web services) and configuration (properties) were needed. So, the these additional needs were included in a system wide approach. The result was the idea to create a SystemContainer.

The SystemContainer is used to interact with the Corona system as a whole. In addition to providing a mechanism for system events, the container will also be used to define Corona system wide properties and properties.

For example, consider a SystemContainer that defines the following:

1. RepositoryDescriptors

1. RemoteEventRouter for system events

2. Mylar webservice endpoint (for EclispeCon demo)

3. Descriptor for each ProjectContainer

2. Properties

1. Connection timeout to determine when a workgroup member has disconnected

Use Case: Workbench PCX Startup (SystemContainer: RepositoryDescriptor)

1. When the PCX first starts, it requests the SystemContainer from the Corona server.

2. The PCX retrieves the list of ProjectContainers from the SystemContainer’s RepositoryDescriptors (see 1.3 above)

3. List of available ProjectContainers (no including the SystemContainer) is displayed to the user.

4. The user selects a ProjectContainer to open

5. The PCX opens the selected ProjectContainer based upon it RepositoryDescriptor and connection parameters.

Use Case: Define new ProjectContainer (SystemContainer: Events)

1. A new ProjectContainer is defined via web service call to Corona server’s ContainerManager

2. The ContainerManager updates the SystemContainer to create a new RepositoryDesciptor for the new ProjectContainer

3. A SystemContainer update event is posted.

4. Each Workbench PCX handles the SystemContainer update event

5. Each PCX updates its display showing the new ProjectContainer

Use Case: Workbench Connection Timeout (SystemContainer: Properties)

1. The SystemContainer has a property defined to specifies a connection timeout, the length of time a Workbench is idle before it is to be considered disconnected.

2. Each Workbench ensures it has sent some action or event within the specified connection timeout to ensure its connections stays active.

3. The Corona server monitors the connection state for each Workbench. Workbench connections will be disconnected for each connection that has been idle longer than the specified value of the SystemContainer connection.timeout property.

I hope this helps to explain how the SystemContainer can be used not only for system wide events, but also for actions and configuration properties.

The contents of this e-mail are intended for the named addressee only. It contains information that may be confidential. Unless you are the named addressee or an authorized designee, you may not copy or use it, or disclose it to anyone else. If you received it in error please notify us immediately and then destroy it.

------------------------------------------------------------------------

_______________________________________________
corona-dev mailing list
corona-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/corona-dev
The contents of this e-mail are intended for the named addressee only. It contains information that may be confidential. Unless you are the named addressee or an authorized designee, you may not copy or use it, or disclose it to anyone else. If you received it in error please notify us immediately and then destroy it.

Back to the top