Distributed Information Management
C (and Fortran) Interface
This chapter describes the routines provided by the server and client libraries
as well as some examples on how they can be used.
The Server library implements the DIM server functionality. In order
to become a DIM server a process can use (among others) the following routines:
The Client library implements the DIM client functionality. In order to
become a DIM client a process can use (among others) the following routines:
DIS_ADD_SERVICE - Declare each
Service it can provide.
DIS_ADD_CMND - Declare each Command
Services (if any) it is willing to execute.
DIS_START_SERVING - Send the
list of provided Services and Commands to the Name Server and start serving
client requests. The library takes care of handling all client requests
and updating the Service data according to the mechanism specified by the
DIS_UPDATE_SERVICE - A server
can force an update of the Service when it knows the information contained
in the service has changed.
DIS_REMOVE_SERVICE - A server
can stop providing a service.
DIC_INFO_SERVICE - Request a
service providing the update type (at regular time intervals or when the
information changes) and the update mechanism (either a callback routine
or a buffer update). The library will take care of contacting the Name
Server, find out which server provides the service, connect to the server,
request the service and update the service according to the specified mechanism
whenever the service data arrives.
DIC_CMND_SERVICE - Request the
execution of a command. The library will take care of contacting the Name
Server, find out which server provides the command, connect to the server
and tell it to execute the command.
DIC_CMND_CALLBACK - Same as above
but a callback will be executed to report success or failure.
DIC_RELEASE_SERVICE - Release
a service if it becomes unnecessary.