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

Selector Architecture Harmonization

Revision as of 14:12, 30 December 2008 by Unnamed Poltroon (Talk) (Server Modifications)

{{#eclipseproject:technology.higgins}}
Higgins logo 76Wx100H.jpg

Since Selectors use most of the Higgins Components, work on harmonizing the Higgins selectors into a single architecture would be a huge step towards overall Higgins architecture harmonization/convergence.

A good first step in converging the selectors is start by harmonizing the GTK and Cocoa Selector and the AIR Client and Server.

Top Level Diagram

Unified-selector.1.1.115.png

Notes:

  • We introduce the notion of a "Component Set" -- a set of components
  • This architecture would run on Windows, Mac OSX, Linux and (with further work) potentially smart phones
  • The "Selector UI" component would be either GTK, Cocoa or AIR-based, but the underlying "Selector Service" would be common.

Phase 1

Phased approach to implementation.

First Steps

The first objective is to perfectly align the existing Components with the above diagram.

  1. Jeesmon: Split the shared tcpserver project into multiple projects to align with above. Suggestions for new names:
  2. Jeesmon: Merge the currently separate HSS connectors into .higgins.hss per the following ticket 258504
  3. Jeesmon: Split the AIR Selector code (org.eclipse.higgins.air ) into two project files
    • org.eclipse.higgins.selector.ui.air - selector UI in AIR/Flex
    • org.eclipse.higgins.selector.client.air (will eventually be replaced with a common .higgins.selector.client in C++) - selector services in AIR/Flex
  4. Split GTK/Cocoa Selector component into smaller pieces. Here's the first split:
    • Leave "org.eclipse.higgins.cbselector" project as-is (for Higgins 1.0 use)
    • Split out just the GTK-based user interface portion of .cbselector (shown in a box here) into its own project (e.g. .higgins.selector.ui.gtk) as the first alternative implmentation project within the new Selector UI component shown above.
  5. Change GTK-based Selector to use standard Higgins HBX

Phase 2

Selector Service

The client side of phase 2 involves replacing the current i-card store in .cbselector with an i-card cache

Overview:

Unified-selector-service.1.1.119.png

I-Card Cache (Component Set)

One possible way to implement the I-Card Cache:

I-card-cache-1.1.116.png

Server Modifications

The I-Card Service Web App and I-Card Service would be extended to support the enhancements to the existing client/server protocol.

Server-mods-v2.png

Back to the top