|
|
|
|
The ECom framework provides facilities to resolve and load the appropriate implementations at run-time, on behalf of the interface definition. It has a client-server architecture, with the additional constraint of the client side session being a singleton per process thread.
the client session class, REComSession, has functions for creating, destroying, and listing implementations
the server controls access to a registry of available implementations, which is used for interface implementation resolution, and loading.
Client calls to the interface definition for construction, and destruction, translate directly, through REComSession, into loading, and unloading of the correct implementation library, together with instantiation and destruction of an appropriate
interface implementation.
The framework supplies a default resolver for selecting appropriate implementations. This attempts to match data supplied by the client against a data identifier field in the implementation's registration details. The interface can ask the framework to create the best fit implementation directly, or ask it to return a list of all matching implementations, and then possibly use other methods, such as user selection, to select the one to be created.