Patent ID: 7752637

Claim:
A system for allowing a client application to access a service at a server, comprising: a computer, including a computer memory and processor; a server engine, executing on the computer, that provides access to a plurality of services, each service having a corresponding interface; a plurality of implementations of each interface that are registered with the server engine to provide various functions of the corresponding service, wherein each of the implementations associated with an interface comprises an array of pointers that point to the various functions provided thereby, and inherits functions from one or more other implementations associated with the interface, wherein the array of pointers associated with each of the implementations comprises a Virtual Function Table; a realization function that allows a client application to send a request to realize a particular interface to a service from the plurality of services; and wherein upon receiving the request to realize the particular interface, the server engine retrieves the array of pointers associated with a first implementation of the particular interface and the arrays of pointers associated with the one or more other implementations from which the first implementation inherits, copies the arrays of pointers to a proxy array, wherein the proxy array comprises a proxy Virtual Function Table, and returns a pointer to the proxy array to the client application, for use by the client application in accessing the service, wherein the client application uses the pointer to the proxy Virtual Function Table to access the particular interface and communicate with the first implementation.