Re: CIMOM refuses EmbeddedObject with unknown class

Jan Safranek <[email protected]> Wed, 13 Mar 2013 10:21:51 +0100
Newsgroups gmane.network.open-pegasus.general
Message-ID <[email protected]>
On 03/13/2013 09:22 AM, Jan Safranek wrote:
> I have a CMPI provider for CIM_MethodResult class under Pegasus 2.12.0.
> It has EmbeddedInstance('CIM_InstMethodCall') property PostCallIndication.
> 
> This CIM_InstMethodCall class has EmbeddedObject property
> MethodParameters and description of the property says:
> 
>    The parameters of the method, formatted as an EmbeddedObject (with a
>    predefined class name of "__MethodParameters".
> 
> Now if I set the MethodParameters property with CIM instance of
> not-existing "__MethodParameters" class in my provider, Pegasus returns
> CMPI_RC_ERR_NOT_FOUND from
> src/Pegasus/ProviderManager2/CMPI/CMPI_BrokerEnc.cpp:mbEncNewInstance()
> 
> If I try to use "CIM_ManagedElement" as classname of the embedded object
> just for testing, Pegasus shows correct property, i.e. these
> EmbeddedInstances and EmbeddedObjects work well for registered classes.

Well, it does not work so well... I can add only properties specified
for CIM_ManagedElement, I cannot add parameters of the method as
properties - the parameter names (=name of __MethodParameters
properties) are different for each method which starts a job.

Am I the first one, who tries to implement job control? How can I return
an output parameter from a method, which created a job, without using
embedded instance? Whole CIM is full of these methods... Do I miss
something?

Jan