On 07/11/2013 03:46 PM, Jan Safranek wrote:
On 07/05/2013 01:39 PM, Michal Minář wrote:
> # our c provider for LMI_RegisteredProfile would read all files in this
> directory and generate instances such as this (in pseudo code):
>
> * instance of LMI_RegisteredProfile {
> InstanceID = "LMI:" + RegisteredOrganizationName + "+" +
> RegisteredName + "+" + RegisteredVersion;
> AdvertisedTypes = [2];
> Caption = "OpenLMI " + RegisteredName + " profile
implementation";
> Description = Description;
> RegisteredName = RegisteredName;
> RegisteredOrganization = RegisteredOrganization;
> RegisteredVersion = "1.0.0";
> MajorVersion = MajorVersion;
> MinorVersion = MinorVersion;
> RevisionNumber = RevisionNumber;
> SpecificationType = 2;
> };
I'm looking at Pegasus way of registering profiles. To register new
profile, one must create instance of PG_ProviderProfileCapabilities
(either via MOF or via CreateInstance WBEM call). It then automatically
creates instances of:
PG_RegisteredProfile
PG_SoftwareIdentity
(PG_RegisteredSubProfile)
+ all associations between them.
The PG_SoftwareIdentity instance then contains VersionString property,
which is taken from provider's PG_ProviderModule (=we can influence it).
Optionally, array of class names in ConformingElements property can be
specified and Pegasus then automatically creates
PG_ElementConformsToProfile association between PG_RegisteredProfile and
all instances of these classes.
Documentation with examples:
https://collaboration.opengroup.org/pegasus/pp/documents/16888/PEP319_DMT...
Jan