You might also consider using static instances for RegisteredProfiles. This means that the instance is defined in MOF, then compiled directly into the repository.

For example, you could have the following in a MOF file:

instance of CIM_RegisteredProfile
{
  InstanceID = "CIM:RH_Fan";
  RegisteredOrganization = 2;
  RegisteredName = "Fan";
  RegisteredVersion = "1.0.0";
  AdvertiseTypes = 3;
};

This is then compiled similar to how classes are compiled into the repository. The default provider serves the request for RegisteredProfile by pulling the instance out of the repository.

SFCB's instances of RegiteredProfile work this way.  See 20_indication.mof for details.

Using static instances would save you needing the json file and extra provider to parse it. I'm unsure if Pegasus also honors the instance keyword when compiling MOFs, but it is worth a look.


-Chris
SBLIM Team



On 07/05/2013 07:39 AM, Michal Minář wrote:
Hi,

according to Profile Registration Profile [1], there are two ways of registered profile advertisement:
  1. Central Class Profile Implementation Advertisement
  2. Scoping Class Profile Implementation Advertisement

Both are mutually exclusive (can not be used together for the same profile). From what I've read they have following features:

  1. Central Class
  2. Scoping Class

Me and Jan think that the Scoping Class approach is the right way. Here is a proposal for profile registration based on this approach:

  1. let's create a file
  2. with contents (in json) below
  3. upon rpm installation, this would get registered by symlinking this file into directory
  4. our c provider for LMI_RegisteredProfile would read all files in this directory and generate instances such as this (in pseudo code):

Does it make sense? Any other ideas?

Michal

[1] http://www.dmtf.org/sites/default/files/standards/documents/DSP1033_1.0.0.pdf



_______________________________________________
openlmi-devel mailing list
openlmi-devel@lists.fedorahosted.org
https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel