[higgins-dev] new IdASRegistry
I have a first version of the new IdASRegistry (and misc. other things around that). Here is a quick overview:
A new interface IContextId is introduced. The basic idea is that if you have an IContextId, you can get an IContext. An IContextId can be obtained from a local XRDS file, from a URL, from XRI resolution, and in the future possibly in other ways. IdASRegistry does the job of finding a suitable context factory that can instantiate the context. This is done by introducing context types (strings), which establish the association between contexts and their context factories.
In addition to the IdASRegistry, I created a (small) "Discovery" component, which can retrieve XRDS
documents and service endpoints in various ways, and a "Configuration Handler for XRDS", which can read a
configuration map from an XRDS service endpoint (making use of Greg's
There are a few Wiki pages with much more detail:http://wiki.eclipse.org/Context_Discovery
is an overview of the concepts behind this
(this page evolved from the former IdAS Registry Proposal 2B)http://wiki.eclipse.org/ContextId
is a detailled description of ContextIds
is the "main" page about the new components I have created, with example code and XRDS documents
Since I am not a committer, I put my code into a ZIP file which is here:
(sorry, 40MB, all libraries included)
Thanks for the +1 votes so far. In case I am going to be a committer soon, I can then of course put the stuff into SVN myself, which should make life easier.
I think a number of changes will be necessary to the IContextFactory interface, to use IContextId instead of a ContextRef URI.
I expect there will be a number of questions and complaints about stupid things I have done. Let them come.