HP WBEM Services Software Developer's Kit for HP-UX Provider and Client Developer's Guide A.01
Provider Implementation
Provider Design Considerations
Chapter 454
Provider Design Considerations
Flow Of A Client Request
The following is a high-level description of the control flow of a client
request:
• A client issues a request for data or an operation; the request is
encoded in xmlCIM by the Client API (if used) and sent to the CIM
server.
• The CIM server receives the xmlCIM request, decodes it, and
authenticates it by determining whether the username and
password are valid (authentication is automatic for local requests -
see the connectLocal() client function).
• The CIM server determines whether the user is authorized to
perform the requested operation in the specified namespace.
• The CIM server searches the provider registration information to
determine which provider can service the request.
• The CIM server loads the appropriate shared library (if it’s not
already loaded), and calls the appropriate provider.
• The provider has the responsibility to determine whether the client
is authorized to issue the request if necessary (in addition to the
simple namespace authorization already performed by the CIM
server).
• The provider performs whatever operations are required to satisfy
the request, and delivers information requested, as appropriate, to
the CIM server.
• The CIM server encodes the information received from the provider
into xmlCIM and returns it in its reply to the client.
Provider Execution Context
A provider module is implemented as a shared library. The CIM Server
loads the shared library and initializes the provider on demand (on the
first access of an object served by the provider). In HP WBEM Services