[interfacekit] The Plan (tm)

Hi folks,

as promised here comes my roadmap proposal.

Milestone 1
===========

A minimal registrar featuring running app management and inter-app 
messaging.

in detail:
* BRoster skeleton
  - app looper featuring retrieval of MIME and clipboard messengers
  - MIME looper, unimplemented
  - clipboard handler, unimplemented
* complete running application support
  - roster side registration support
  - roster side running app management
  - basic BApplication signature constructors/BApplication::InitData()
  - BApplication::Argv/RefsReceived(), ReadyToRun(), Quit[Requested]()
  - BRoster constructor
  - private BRoster app registration methods
  - running application querying (BRoster)
    - IsRunning(), TeamFor()
    - GetAppList()
    - GetRunningAppInfo(), GetActiveAppInfo()
  - BRoster::ActivateApp()
* full-blown inter-app messaging
  - complete BMessenger implementation

Note: The BApplication constructor uses libbe BAppFileInfo.


Milestone 2
===========

A basic registrar with full MIME support.

in detail:
* MIME support
  - registrar side MIME support
  - BMimeType
* not running application querying (BRoster)
  - GetAppInfo()/FindApp()
* BMimeType utilizing SK classes
  - BNodeInfo
  - BAppFileInfo


Milestone 3
===========

An API feature complete registrar.

in detail:
* remaining roster services
  - roster watching
    - roster side support
    - BRoster::Start/StopWatching()
  - app launching
    - roster side support
    - BRoster::Launch()
  - recent XYZ
    - roster side support
    - BRoster::*Recent*()
  - broadcasting
    - roster side support
    - BRoster::Broadcast()
* message runners
  - registrar side timing support
  - BMessageRunner
* clipboard
  - registrar side clipboard support
  - BClipboard


Milestone 4
===========

A feature complete registrar.

in detail:
* automatic background MIME database updating
* shutdown service
  - shut down window
  - shut down process


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

It looks like very much work for the first milestone, but it seems not 
to be suggestive to split it up any further. If you want app 
registration, then it makes sense to also add running app management, 
and messaging is needed anyway. And starting with messaging only, well, 
the signature BMessenger constructor can't be done without the roster.

Milestone 4 can/should of course be postponed until we have a running 
OBOS.

Basically the following questions remain to be answered:
Who will work on it?
How do we organize/distribute the work?

CU, Ingo



Other related posts: