Role of SOMDServer

The server process's server object (whose default class is SOMDServer) is responsible for creating/destroying objects on the server via somdCreateObj, somdGetClassObj, and somdDeleteObj, for mapping between object references (SOMDObjects) and SOMObjects via somdRefFromSOMObj and somdSOMObjFromRef, and for dispatching remote requests to server process objects via somdDispatchMethod. These last three methods are invoked on the server object by the SOMOA when objects are to be returned to clients, when incoming requests contain object references, and when the method is ready to be dispatched, respectively. By partitioning out these mapping and dispatching functions into the server object, the application can more easily customize them, without having to build object adapter subclasses.

SOMDServer can be subclassed by applications that want to manage object location, object activation, and method dispatching. An example of such an application (which provides a server class implementation for persistent SOM objects) is shown in section 6.4, "Basic Server Programming."

These features of SOMOA and SOMDServer make it possible to take existing OM classes, which have been written for a single-address space environment, and use them unchanged in a DSOM application. More information on the SOMOA and server objects can be found in the "Basic Server Programming" section.


[Back: Role of SOM Object Adapter]
[Next: Implementation constraints]