PG_ProviderModule
Purpose
This class represents the physical packaging of one or more providers
in a dynamic load library or shared library.
Properties
- string Name
- The logical name of the provider module.
- string Vendor
- The name of the provider module vendor, for example, IBM.
- string Version
- The provider module version.
- string InterfaceType
- The interface type implemented by the provider. Must be CMPI for z/OS.
- string InterfaceVersion
- The interface version number implemented by the provider. Must
be 2.0.0 for CMPI on z/OS.
- string Location
- The name of the dynamic load library or shared library in the
hierarchical file system without a path name. The name specified for Location is automatically prefixed with lib and
extended with .so by the CIM server:
lib<Location>.so
- boolean ShareAS
- Setting the ShareAS property to false causes
the provider module to run in its own copy of a provider agent process.
No other provider module will be loaded into this process.
Setting
the ShareAS property to false has
a major impact on the performance, so you should not set it to ‘false’
unless there is an urgent need for a provider module to be protected
from other provider modules. The default setting of ShareAS is true.
Setting ShareAS to false is only honored by
the CIM server, if it is running with the configuration property forceProviderProcesses set to true.
- uint16 UserContext
- Defines the user context in which this provider module is invoked.
Values:
- 2 (Requestor), default
- The provider is invoked in the security context of the user
requesting an operation.
- 3 (Designated User)
- The provider is invoked in the security context of the user
ID specified by the DesignatedUserContext property.
See Running providers in a designated user context for a general description
on running a provider module with a designated user context.
- string DesignatedUserContext
- Specifies the user ID providing the context in which this provider
module is invoked (regardless of which user requests an operation).
Values:
- NULL
- when UserContext = 2
- non-NULL value
- when UserContext = 3
See Running providers in a designated user context for a general description
on running a provider module with a designated user context.
- string ModuleGroupName
- Specifies a group name for the provider module, if the configuration
property forceProviderProcesses is true.
Else it has no effect.
This property controls which provider modules
are running together in the same provider agent process.
- If the specified value is CIMServer, the provider
module is loaded into the CIM server process.
- Provider modules having the same group name other than CIMServer are
loaded into a single agent process.
- If no module group name is defined, the provider either runs in
a single shared provider agent process together with all other providers
without a module group name, or in its own distinct provider agent
process in case ShareAS is true.
Can be set dynamically using the cimprovider command
(see cimprovider).
Examples
Example of an instance of class PG_ProviderModule in MOF syntax:
instance of PG_ProviderModule
{
Name = "TestClassProviderModule";
//The library name on disk
Location = "TestClassProvider";
// (will be extended to libTestClassProvider.so)
Vendor = "IBM";
Version = "1.0.0";
InterfaceType = "CMPI";
InterfaceVersion = "2.0.0";
ShareAS = true;
UserContext = 2;
};
|