display. This required because some operations have default true
and other false.
*/
-String _resolveIncludeQualifiers(Options& opts, Boolean defaultValue)
+void _resolveIncludeQualifiers(Options& opts, Boolean defaultValue)
{
// Assure niq and iq not both supplied. They are incompatible
if (opts.includeQualifiersRequested && opts.notIncludeQualifiersRequested)
opts.includeQualifiers = opts.includeQualifiersRequested ?
true : false;
}
- return _toString(opts.includeQualifiers);
+ return;
}
/////////////////////////////////////////////////////////////////////////////
CIMCLIOutput::displayPaths(opts, instanceNames, s);
}
- cout << "total Instances in " << opts.nameSpace
+ cout << "Total Instances in " << opts.nameSpace
<< " = " << totalInstances
<< " which contains " << classNames.size() << " classes"
<< endl;
int enumerateInstances(Options& opts)
{
+ // Resolve the IncludeQualifiers -iq vs -niq qualifiers default is true.
+ _resolveIncludeQualifiers(opts, false);
+
if (opts.verboseTest)
{
cout << "EnumerateInstances "
<< ", Class = " << opts.className.getString()
<< ", deepInheritance = " << _toString(opts.deepInheritance)
<< ", localOnly = " << _toString(opts.localOnly)
- << ", includeQualifiers = " <<
- _resolveIncludeQualifiers(opts,false)
+ << ", includeQualifiers = " << _toString(opts.includeQualifiers)
<< ", includeClassOrigin = " << _toString(opts.includeClassOrigin)
<< ", PropertyList = " << _toString(opts.propertyList)
<< endl;
*/
int getInstance(Options& opts)
{
+ // Resolve the IncludeQualifiers -iq vs -niq qualifiers default is true.
+ _resolveIncludeQualifiers(opts, false);
if (opts.verboseTest)
{
cout << "getInstance "
<< "Namespace = " << opts.nameSpace
<< ", InstanceName/class = " << opts.getTargetObjectNameStr()
<< ", localOnly = " << _toString(opts.localOnly)
- << ", includeQualifiers = " <<
- _resolveIncludeQualifiers(opts, false)
+ << ", includeQualifiers = " << _toString(opts.includeQualifiers)
<< ", includeClassOrigin = " << _toString(opts.includeClassOrigin)
<< ", PropertyList = " << _toString(opts.propertyList)
<< endl;
*/
int testInstance(Options& opts)
{
+ // Resolve the IncludeQualifiers -iq vs -niq qualifiers default is true.
+ _resolveIncludeQualifiers(opts, false);
+
if (opts.verboseTest)
{
cout << "testInstance "
<< "Namespace = " << opts.nameSpace
<< ", InstanceName/ClassName = " << opts.getTargetObjectNameStr()
- << ", includeQualifiers = " <<
- _resolveIncludeQualifiers(opts,false)
+ << ", includeQualifiers = " << _toString(opts.includeQualifiers)
<< ", includeClassOrigin = " << _toString(opts.includeClassOrigin)
<< ", PropertyList = " << _toString(opts.propertyList)
<< endl;
*/
int enumerateClasses(Options& opts)
{
+ // Resolve the IncludeQualifiers -iq vs -niq qualifiers default is true.
+ _resolveIncludeQualifiers(opts, true);
if (opts.verboseTest)
{
cout << "EnumerateClasses "
<< ", Class= " << opts.className.getString()
<< ", deepInheritance= " << _toString(opts.deepInheritance)
<< ", localOnly= " << _toString(opts.localOnly)
- << ", includeQualifiers= " <<
- _resolveIncludeQualifiers(opts, true)
+ << ", includeQualifiers= " << _toString(opts.includeQualifiers)
<< ", includeClassOrigin= " << _toString(opts.includeClassOrigin)
<< endl;
}
*/
int getClass(Options& opts)
{
+ // Resolve the IncludeQualifiers -iq vs -niq qualifiers default is true.
+ _resolveIncludeQualifiers(opts, true);
+
if (opts.verboseTest)
{
cout << "getClass "
<< ", Class= " << opts.className.getString()
<< ", deepInheritance= " << _toString(opts.deepInheritance)
<< ", localOnly= " << _toString(opts.localOnly)
- << ", includeQualifiers= " <<
- _resolveIncludeQualifiers(opts, true)
+ << ", includeQualifiers= " << _toString(opts.includeQualifiers)
<< ", includeClassOrigin= " << _toString(opts.includeClassOrigin)
<< ", PropertyList= " << _toString(opts.propertyList)
<< endl;
*/
int references(Options& opts)
{
+ // Resolve the IncludeQualifiers -iq vs -niq qualifiers default is true.
+ _resolveIncludeQualifiers(opts, false);
if (opts.verboseTest)
{
cout << "References "
<< ", ObjectName = " << opts.getTargetObjectNameStr()
<< ", resultClass= " << opts.resultClass.getString()
<< ", role= " << opts.role
- << ", includeQualifiers= " <<
- _resolveIncludeQualifiers(opts, false)
+ << ", includeQualifiers= " << _toString(opts.includeQualifiers)
<< ", includeClassOrigin= " << _toString(opts.includeClassOrigin)
<< ", CIMPropertyList= " << _toString(opts.propertyList)
<< endl;
*/
int associators(Options& opts)
{
+ // Resolve the IncludeQualifiers -iq vs -niq qualifiers default is true.
+ _resolveIncludeQualifiers(opts, false);
+
if (opts.verboseTest)
{
cout << "Associators "
<< ", resultClass= " << opts.resultClass.getString()
<< ", role= " << opts.role
<< ", resultRole= " << opts.resultRole
- << ", includeQualifiers= " <<
- _resolveIncludeQualifiers(opts, false)
+ << ", includeQualifiers= " << _toString(opts.includeQualifiers)
<< ", includeClassOrigin= " << _toString(opts.includeClassOrigin)
<< ", propertyList= " << _toString(opts.propertyList)
<< endl;
{"Clients.cimcli.CIMCLIClient.EI_COMMAND_EXAMPLE",
"cimcli ei PG_ComputerSystem -- Enumerate Instances of class\n",
"Clients.cimcli.CIMCLIClient.EI_COMMAND_OPTIONS",
- " -n, -di, -nlo, -iq, -pl\n"},
+ " -n, -di, -lo, -iq, -pl -ic\n"},
+
{"Clients.cimcli.CIMCLIClient.NC_COMMAND_EXAMPLE",
"cimcli nc -- Enumerate class names from root/cimv2.\n",
"cimcli ec -n root/cimv2\n"
" -- Enumerate classes from namespace root/cimv2.\n",
"Clients.cimcli.CIMCLIClient.EC_COMMAND_OPTIONS",
- " -n, -di, -nlo, -niq\n"},
+ " -n, -di, -lo, -niq -ic\n"},
+
{"Clients.cimcli.CIMCLIClient.GC_COMMAND_EXAMPLE",
"cimcli gc CIM_door -u guest -p guest\n"
" -- Get class user = guest and password = guest.\n",
"Clients.cimcli.CIMCLIClient.GC_COMMAND_OPTIONS",
- " -n, -nlo, -niq, -pl\n"},
+ " -n, -lo, -niq, -pl -ic\n"},
+
{"Clients.cimcli.CIMCLIClient.GI_COMMAND_EXAMPLE",
"cimcli gi -n test/TestProvider TST_Person\n"
" -- Get Instance of class\n",
"Clients.cimcli.CIMCLIClient.GI_COMMAND_OPTIONS",
- " -n, -nlo, -iq, -pl\n"},
+ " -n, -lo, -iq, -pl -ic\n"},
+
{"Clients.cimcli.CIMCLIClient.CI_COMMAND_EXAMPLE",
"cimcli ci -n test/TestProvider TST_Person Name=Mike SSN=333\n"
" classes associated with class TST_person and with\n"
" association class TST_Lineage\n",
"Clients.cimcli.CIMCLIClient.A_COMMAND_OPTIONS",
- " -n, -ac, -rc, -r, -rr, -iq, -pl, includeClassOrigin, -i\n"},
+ " -n, -ac, -rc, -r, -rr, -iq, -pl, -ic, -i\n"},
{"Clients.cimcli.CIMCLIClient.AN_COMMAND_EXAMPLE",
"cimcli an TST_Person.name=\\\\\"Mike\\\\\" -n test/TestProvider "
" -- get reference classes for TST_Lineage association class and\n"
" subclasses in namespace test/TestProvider\n",
"Clients.cimcli.CIMCLIClient.R_COMMAND_OPTIONS",
- " -n, -rc, -r, -iq, -pl, -i\n"},
+ " -n, -rc, -r, -iq, -pl, -i -ic\n"},
{"Clients.cimcli.CIMCLIClient.RN_COMMAND_EXAMPLE",
"cimcli rn TST_Person.name=\\\\\"Mike\\\\\" -n test/TestProvider "
"Clients.cimcli.CIMCLIClient.NAMESPACE_OPTION_HELP",
"Specifies namespace to use for operation" },
+ {"includeClassOrigin", "false", false, Option::BOOLEAN, 0, 0, "ic",
+ "Clients.cimcli.CIMCLIClient.INCLUDECLASSORIGIN_OPTION_HELP",
+ "If set includeClassOrigin parameter\n"
+ " set true on requests that honor this parameter"},
+
{"deepInheritance", "false", false, Option::BOOLEAN, 0, 0, "di",
"Clients.cimcli.CIMCLIClient.DEEPINHERITANCE_OPTION_HELP",
"If set deepInheritance parameter\n"
// to specifically request qualifiers with instances.
lookupBooleanOption(opts, om, "includeQualifiers",
- opts.includeQualifiersRequested);
+ opts.includeQualifiersRequested);
lookupBooleanOption(opts, om, "notIncludeQualifiers",
- opts.notIncludeQualifiersRequested);
+ opts.notIncludeQualifiersRequested);
+
- // Temporary hide for bug 8677 because not in table.
- // Bug 8690 fixes when installed
- //lookupBooleanOption(opts, om,"includeClassOrigin",
- // opts.includeClassOrigin );
+ lookupBooleanOption(opts, om,"includeClassOrigin",
+ opts.includeClassOrigin );
lookupBooleanOption(opts, om,"time", opts.time);
Boolean that defines whether properties from superclasses
are included in the response. the -nlo option turns this parameter off
<P>
-<B>-cl </B>
+<B>-ic</B>
-Boolean parameter sets the operation parameter classOrigin in the
-operation request. The CIMServer is expected to return classOrigin
+Boolean parameter sets the operation parameter includeClassOrigin in the
+operation request. the CIMServer is expected to return classOrigin
+<P>
information as part of the response.
<P>
<B>-pl [propertyList]</B>
Issue getClass CIM Operation for the class CIM_Door.
</PRE>
+<P>
<DT><B>ni EnumerateInstanceNames</B>
<DD>
<DD>
When set, sets LocalOnly = false on the CIM operation . Default(false).
<P>
+<DT><B>-ic</B>
+
+<DD>
+Sets includeClassOrigin = true for operation that support this parameter
+(i.e. get and enumerate classes and instances, associators, and references
+operations). Note that the class origin information is only output for
+the -o xml output operation since class origin is not part of the MOF
+format.
<DT><B>-niq</B>
<DD>
This document was created by
<A HREF="/cgi-bin/man/man2html">man2html</A>,
using the manual pages.<BR>
-Time: 13:50:26 GMT, January 25, 2010
+Time: 14:15:33 GMT, January 25, 2010
</BODY>
</HTML>
.TP
.B [options...]
-Options are identified on the command line with the - or -- notation.
+Options are identified on the command line with the - or -- notation. They
+are identified in a cimcli config file with the form <name>=value where name
+is a long name for the option. Each cimcli option has both a short name
+for command line use and a long name for configuration file use.
There are several types of options:
.TP 8
options are requested, no operation is executed.
.TP
.B [value-parameters]
-Some of the operations allow or require extra parameters. these are
+Some of the operations allow or require extra parameters, for example
+to supply property value definitions for create and modify instance. These are
typically keywords or keyword/value pairs and are defined as part of
the particular operation that use them.
There is a set of options which are general to all of the CIM
Operations and most of the compound operations and which provide
parameters for the initiation or execution of the operations (ie. identify
-the target server and set connection security parameters..
+the target server and set connection security parameters.
These include:
.TP
.B \-n [namespace]
the SSLContext for the connect call is submitted with the Cert and key
marked NULL.
-NOTE: Since SSL is considerd a compilable option with cimcli, these
+NOTE: Since SSL is a compile cimcli compile option, the following
options may not even exist in a Pegasus environment that was compiled
with the SSL capabilities disabled.
is recorded upon completion of the operation. In addition, the client
infrastructure is queried to determine if the operation execution
times optionally measured in the infrastructure and at the server are
-available. If they are, they are displayed also. This would allow the
+available. If so, they are displayed also. This would allow the
user to see a) time spent in the server, b) round trip time for the
operation, c) application round trip time for the operation. Note that
when combined with the repeat option, the output includes maximum,
minimum, and average times for the operation. There are a specific
operations in cimcli to turn control statistics generation (See son
-and soff operations)
+and soff operations) at least for the Pegasus cimserver.
.TP
.B \--sort
Boolean that defines whether properties from superclasses
are included in the response. the -nlo option turns this parameter off
-.B \-cl
-Boolean parameter sets the operation parameter classOrigin in the
-operation request. The CIMServer is expected to return classOrigin
+.B \-ic
+Boolean parameter sets the operation parameter includeClassOrigin in the
+operation request. the CIMServer is expected to return classOrigin
+
information as part of the response.
.B \-pl [propertyList]
cimcli nc CIM_door
Issue getClass CIM Operation for the class CIM_Door.
.fi
+
.TP
.B ni EnumerateInstanceNames
Execute the enumerateInstanceNames CIM Operation. The syntax for this
.B \-nlo
When set, sets LocalOnly = false on the CIM operation . Default(false).
+.TP
+.B \-ic
+Sets includeClassOrigin = true for operation that support this parameter
+(i.e. get and enumerate classes and instances, associators, and references
+operations). Note that the class origin information is only output for
+the -o xml output operation since class origin is not part of the MOF
+format.
.TP
.B \-niq
Sets includeQualifiers = false on operations. Default(false).
.TP
.B \-trace [trace_level]
Set Pegasus Common Components Trace. Sets the Trace level. 0 is off.
-Default(0). The trace level can be set to 0 - 4.
+Default(0). The trace level can be set to 0 - 5. Note that since mose
+trace definitions have been removed from cimcli, this is of little value.
.TP
.B \--v
are included in the response. the -nlo option turns this parame
ter off
- -cl Boolean parameter sets the operation parameter classOrigin
- in the operation request. The CIMServer is expected to return
- classOrigin information as part of the response.
+ -ic Boolean parameter sets the operation parameter includeClas
+ sOrigin in the operation request. the CIMServer is expected to
+ return classOrigin
+
+ information as part of the response.
-pl [propertyList] Optional property list for the operation.
cimcli nc CIM_door
Issue getClass CIM Operation for the class CIM_Door.
+
ni EnumerateInstanceNames
Execute the enumerateInstanceNames CIM Operation. The syntax for
this operation is:
Default(false).
+ -ic Sets includeClassOrigin = true for operation that support this
+ parameter (i.e. get and enumerate classes and instances, associ
+ ators, and references operations). Note that the class origin
+ information is only output for the -o xml output operation since
+ class origin is not part of the MOF format.
+
-niq Sets includeQualifiers = false on operations. Default(false).
"cimcli ei PG_ComputerSystem -- Enumerate Instances of class\n"}
Clients.cimcli.CIMCLIClient.EI_COMMAND_OPTIONS:string {
- " -n, -di, -nlo, -iq, -pl, classname, includeClassOrigin\n"}
+ " -n, -di, -lo, -iq, -pl, classname, -ic\n"}
+
Clients.cimcli.CIMCLIClient.NC_COMMAND_EXAMPLE:string {
"cimcli nc -- Enumerate class names from root/cimv2.\n"}
" -- Enumerate classes from namespace root/cimv2.\n"}
Clients.cimcli.CIMCLIClient.EC_COMMAND_OPTIONS:string {
- " -n, -di, -nlo, -niq, includeClassOrigin\n"}
+ " -n, -di, -lo, -inq, -ic\n"}
+
Clients.cimcli.CIMCLIClient.GC_COMMAND_EXAMPLE:string {
"cimcli gc CIM_door -u guest -p guest\n"
" -- Get class user = guest and password = guest.\n"}
Clients.cimcli.CIMCLIClient.GC_COMMAND_OPTIONS:string {
- " -n, -nlo, -niq, -pl, className, includeClassOrigin\n"}
+ " -n, -lo, -inq, -pl, className, -ic\n"}
+
Clients.cimcli.CIMCLIClient.GI_COMMAND_EXAMPLE:string {
"cimcli gi -n test/TestProvider TEST_Person\n"
" -- Get Instance of class\n"}
Clients.cimcli.CIMCLIClient.GI_COMMAND_OPTIONS:string {
- " -n, -nlo, -iq, -pl, includeClassOrigin\n"}
+ " -n, -lo, -iq, -pl, -ic\n"}
Clients.cimcli.CIMCLIClient.CI_COMMAND_EXAMPLE:string {
"cimcli ci -n test/TestProvider TST_Person Name=Michael SSN=333\n"
" instance built from input\n"}
Clients.cimcli.CIMCLIClient.TI_COMMAND_OPTIONS:string {
- " -n, -nlo, -iq, -pl, includeClassOrigin\n"}
+ " -n, -lo, -iq, -pl, -ic\n"}
Clients.cimcli.CIMCLIClient.DI_COMMAND_EXAMPLE:string {
"cimcli di -n test/TestProvider TST_Person\n"
"cimcli a TST_Person -n test/TestProvider -ac TST_Lineage\n"}
Clients.cimcli.CIMCLIClient.A_COMMAND_OPTIONS:string {
- " -n, -ac, -rc, -r, -rr, -iq, -pl, includeClassOrigin, -i\n"}
+ " -n, -ac, -rc, -r, -rr, -iq, -pl, -ic, -i\n"}
Clients.cimcli.CIMCLIClient.AN_COMMAND_EXAMPLE:string {
"cimcli an TST_Person.name=\\\"Mike\\\" -n test/TestProvider\n"
"cimcli r TST_Person -n test/TestProvider -rc TST_Lineage\n"}
Clients.cimcli.CIMCLIClient.R_COMMAND_OPTIONS:string {
- " -n, -rc, -r, -iq, -pl, includeClassOrigin, -i\n"}
+ " -n, -rc, -r, -iq, -pl, -ic, -i\n"}
Clients.cimcli.CIMCLIClient.RN_COMMAND_EXAMPLE:string {
"cimcli rn TST_Person.name=\\\"Mike\\\" -n test/TestProvider\n"
Clients.cimcli.CIMCLIClient.NAMESPACE_OPTION_HELP:string {
"-n namespace. Specifies namespace to use for operation. Default(root/cimv2)\n"}
+ Clients.cimcli.CIMCLIClient.INCLUDECLASSORIGIN_OPTION_HELP:string{
+ "-ic includeClassOrigin. If set includeClassOrigin parameter\n"
+ " set true on operations that honor this parameter. Default(false)\n"}
+
Clients.cimcli.CIMCLIClient.DEEPINHERITANCE_OPTION_HELP:string{
"-di deepInheritance. If set deepInheritance parameter\n"
" set true. Default(false)\n"}
Test Provider for cimcli. This provider is intended to be used as a
test driver only for cimcli.
-This provider is based on the Test_CLITestProviderClass class. This class
+This provider is based on the Test_CLITestProviderClass class and the
+Test_CLITestProviderLinkClass. The Test_CLITestProviderClass class
includes all of the CIM Data types in both scalar and array form
and provides the following operations:
resetProviderParameters - resets all parameters set by the
setProviderParamters method.
+The Test_CLITestProviderLinkClassProvides a means to test the reference and
+associator operations. Note that the instances do not really represent
+understandable associations, simply syntatically correct associations.
+
LIMITATIONS: The provider is intended to be used in a single namespace and so
does not include the namespace in the instances placed in the array. Therefore
if it is enabled for multiple namespaces, a user from some other namespace could
It is intended to run a set of tests fairly rapidly so does not hold itself in
memory. Therefore, if instances are put into the array after the normal Pegasus
timeout of providers for unload, they will be discarded.
-
*/
+
#include "CLITestProvider.h"
#include <Pegasus/Common/PegasusAssert.h>
#include <Pegasus/Common/Tracer.h>
}
}
// NOTE: Add new parameters here with else if
-
- // Not a valid parameter. Return error
+ // not a valid parameter. Return error
else
{
rtnCode = 1;
try
{
CIMInstance temp = _instances[index].clone();
- temp.addProperty(CIMProperty("requestInputParameters", text));
+ // Required because not assured all instances will have this
+ // property
+ if (temp.findProperty("requestInputParameters") == PEG_NOT_FOUND)
+ {
+ CIMClass tmpClass = _getClass(CIMName(
+ "Test_CLITestProviderClass"),
+ instanceReference.getNameSpace());
+
+ Uint32 pos = tmpClass.findProperty("requestInputParameters");
+
+ temp.addProperty(tmpClass.getProperty(pos));
+ }
+
+ temp.getProperty(temp.findProperty("requestInputParameters"))
+ .setValue(text);
+
temp.filter(includeQualifiers,includeClassOrigin, propertyList);
handler.deliver(temp);
}
try
{
CIMInstance temp = _instances[i].clone();
- temp.addProperty(CIMProperty("requestInputParameters", text));
+ if (temp.findProperty(
+ "requestInputParameters") == PEG_NOT_FOUND)
+ {
+ CIMClass tmpClass = _getClass(CIMName(
+ "Test_CLITestProviderClass"),
+ ref.getNameSpace());
+
+ Uint32 pos = tmpClass.findProperty(
+ "requestInputParameters");
+
+ temp.addProperty(tmpClass.getProperty(pos));
+ }
+
+ temp.getProperty(
+ temp.findProperty("requestInputParameters"))
+ .setValue(text);
+
temp.filter(includeQualifiers,includeClassOrigin,
propertyList);
handler.deliver(temp);
try
{
CIMInstance temp = _instances[index].clone();
- temp.addProperty(CIMProperty("requestInputParameters", text));
+ if (temp.findProperty("requestInputParameters") == PEG_NOT_FOUND)
+ {
+ CIMClass tmpClass = _getClass(CIMName(
+ "Test_CLITestProviderClass"),
+ nameSpace);
+ Uint32 pos = tmpClass.findProperty("requestInputParameters");
+ temp.addProperty(tmpClass.getProperty(pos));
+ }
+
+ temp.getProperty(temp.findProperty("requestInputParameters"))
+ .setValue(text);
+
CIMObjectPath rtnObjectName = objectName;
if (_useSubstituteHostName)
{
String host = _getHostName();
handler.processing();
- // complete processing the request
// Return an instance of the associated class for every instance
// currently in the local list. Simple since we just return the
// cimcli client to test results. It also places the input parameters
// into the text result so that the client can confirm that the
// input parameters were passed to the provider.
+ // Create path for assoc instance.
- CIMInstance assocInstance("Test_CLITestProviderLinkClass");
+ CIMClass assocClass = _getClass(CIMName(
+ "Test_CLITestProviderLinkClass"),
+ nameSpace);
+
+ // Create a single instance with all properties and with path
+ // independent of namespace or hostname
+
+ CIMInstance assocInstance = assocClass.buildInstance(
+ true, true, CIMPropertyList());
CIMObjectPath rtnObjectName = objectName;
if (_useSubstituteHostName)
rtnObjectName.setHost(_getHostName());
}
- assocInstance.addProperty(CIMProperty(CIMName("parent"),
- rtnObjectName,
- 0,
- CIMName("Test_CLITestProviderClass")));
+ assocInstance.getProperty(
+ assocInstance.findProperty("parent"))
+ .setValue(rtnObjectName);
- assocInstance.addProperty(CIMProperty(CIMName("child"),
- rtnObjectName,
- 0,
- CIMName("Test_CLITestProviderClass")));
+ assocInstance.getProperty(
+ assocInstance.findProperty("child"))
+ .setValue(rtnObjectName);
// Put input parameters into the requestInputParameters property so
// they can be confirmed by the client.
_addParam(text, "includeClassOrigin", _toString(includeClassOrigin));
_addParam(text, "propertyList", _toString(propertyList));
- assocInstance.addProperty(CIMProperty("requestInputParameters",
- text));
- // Create path for assoc instance.
- CIMClass assocClass = _getClass(CIMName(
- "Test_CLITestProviderLinkClass"),
- nameSpace);
+ assocInstance.getProperty(
+ assocInstance.findProperty("requestInputParameters"))
+ .setValue(text);
CIMObjectPath objectPath =
assocInstance.buildPath(assocClass);
instance.getProperty(instance.findProperty("arrayDateTime")).setValue(
CIMValue(aCIMDateTime));
- instance.removeProperty(instance.findProperty("requestInputParameters"));
-
CIMObjectPath p("Test_CLITestProviderClass.Id=\"Mike\"");
instance.setPath(p);
>> $(RESULTFILE)
@cimcli gc -n "$(PROVIDERNS)" Test_CLITestProviderLinkClass \
>> $(RESULTFILE)
+ @cimcli gc -n "$(PROVIDERNS)" Test_CLITestProviderLinkClass -niq \
+ >> $(RESULTFILE)
+ ## output as xml and repeat with the -ic option set
+ cimcli gc -n "$(PROVIDERNS)" Test_CLITestProviderLinkClass -o xml \
+ >> $(RESULTFILE)
+ cimcli gc -n "$(PROVIDERNS)" Test_CLITestProviderLinkClass -o xml \
+ -ic >> $(RESULTFILE)
@$(ECHO) 0. +++++ Test getClass
### Test reference parameters
@$(ECHO) +++++ Test delete instance Passed.
-### Test invoke method with a variety of parameter data types
+### Test invoke method with a variety of parameter data types
testInvokeMethod:
@$(ECHO) 6. +++++ Test invokeMethod
@$(ECHO) 6. +++++ Test invokeMethod >> $(RESULTFILE)
Id=Norman Name=Susan
@cimcli ci -n "$(PROVIDERNS)" Test_CLITestProviderClass \
Id=Thomas Name=Peter
- cimcli ei -n "$(PROVIDERNS)" \
- -o table Test_CLITestProviderClass >> $(TABLEFORMATFILE)
+ @cimcli ei -n "$(PROVIDERNS)" Test_CLITestProviderClass \
+ -o table \
+ >> $(TABLEFORMATFILE)
+ @cimcli ei -n "$(PROVIDERNS)" Test_CLITestProviderClass \
+ -o table \
+ -pl Id,Name,scaleBool,scalUint8,arrayBool \
+ >> $(TABLEFORMATFILE)
@cimcli di -n "$(PROVIDERNS)" Test_CLITestProviderClass.Id=\"Norman\"
@cimcli di -n "$(PROVIDERNS)" Test_CLITestProviderClass.Id=\"Thomas\"
-@cimcli r -n "$(PROVIDERNS)" Test_CLITestProviderClass.Id=\"Mike\" \
--sum -count 10 >>$(RESULTFILE) 2>&1
-@cimcli an -n "$(PROVIDERNS)" Test_CLITestProviderClass.Id=\"Mike\" \
- --sum -count 10 >>$(RESULTFILE)
+ --sum -count 10 >>$(RESULTFILE) 2>&1
-@cimcli rn -n "$(PROVIDERNS)" Test_CLITestProviderClass.Id=\"Mike\" \
--sum -count 10 >>$(RESULTFILE) 2>&1
@cimcli im Test_CLITestProviderClass -n "$(PROVIDERNS)" \
@$(ECHO) +++++ Test objectcountertests Passed.
+## Test Enumerate Classes and Enumerate ClassNames
+enumerateClasses:
+ @$(ECHO) 21. +++++ Test For enumerateClasses
+ @$(ECHO) 21. +++++ Test For enumerateClasses >> $(RESULTFILE)
+
+ ## test enumerate classes with our known class to assure
+ ## defined output
+ @cimcli ec -n "$(PROVIDERNS)" Test_CLITestProviderClass \
+ >> $(RESULTFILE)
+ @cimcli ec -n "$(PROVIDERNS)" Test_CLITestProviderLinkClass \
+ >> $(RESULTFILE)
+ @cimcli ec -n "$(PROVIDERNS)" Test_CLITestProviderLinkClass -niq \
+ >> $(RESULTFILE)
+ ## output as xml and repeat with the -ic option set
+ cimcli ec -n "$(PROVIDERNS)" Test_CLITestProviderLinkClass -o xml \
+ >> $(RESULTFILE)
+ cimcli ec -n "$(PROVIDERNS)" Test_CLITestProviderLinkClass -o xml \
+ -ic >> $(RESULTFILE)
+
+ @cimcli nc -n "$(STATICNS)" >> $(RESULTFILE)
+
+ @$(ECHO) 21. +++++ Test enumerateClasses
+
### Execute the set of test targets defined below
poststarttests:
## Remove existing master files
$(MAKE) associationtests
$(MAKE) helpoutputtests
$(MAKE) nullvaluetests
+ ## see Bug 8690
####$(MAKE) namespacetests
$(MAKE) objectcountertests
+ $(MAKE) enumerateClasses
@$(ECHO) +++++ Compare Result files
## diffsort used because there is at least one instance where
resetProviderParameters
## Remove the result files
- @$(RM) $(RESULTFILE)
- @$(RM) $(TABLEFORMATFILE)
- @$(RM) $(HELPRESULTFILE)
- @$(RM) $(NSRESULTFILE)
+ -@$(RM) $(RESULTFILE)
+ -@$(RM) $(TABLEFORMATFILE)
+ -@$(RM) $(HELPRESULTFILE)
+ -@$(RM) $(NSRESULTFILE)
##################### Local targets useful for manual testing ############
cimcli im Test_CLITestProviderClass -n "$(PROVIDERNS)" \
resetProviderParameters
-a:
- cimcli r Test_CLITestProviderClass.Id=\"Mike\" -n "$(PROVIDERNS)" --setRtnHostNames "blah" -v
-
# END_OF_FILE
Port is optional. Default()
-u User. Defines User Name for authentication. Default()
-n namespace. Specifies namespace to use for operation. Default(root/cimv2)
+ -ic includeClassOrigin. If set includeClassOrigin parameter
+ set true on requests that honor this parameter. Default(false)
-di deepInheritance. If set deepInheritance parameter
set true. Default(false)
-lo localOnly. DEPRECATED. This was used to set LocalOnly.
Port is optional. Default()
-u User. Defines User Name for authentication. Default()
-n namespace. Specifies namespace to use for operation. Default(root/cimv2)
+ -ic includeClassOrigin. If set includeClassOrigin parameter
+ set true on requests that honor this parameter. Default(false)
-di deepInheritance. If set deepInheritance parameter
set true. Default(false)
-lo localOnly. DEPRECATED. This was used to set LocalOnly.
made over HTTPS using -s. Default()
-u User. Defines User Name for authentication. Default()
-n namespace. Specifies namespace to use for operation. Default(root/cimv2)
+ -ic includeClassOrigin. If set includeClassOrigin parameter
+ set true on requests that honor this parameter. Default(false)
-di deepInheritance. If set deepInheritance parameter
set true. Default(false)
-lo localOnly. DEPRECATED. This was used to set LocalOnly.
made over HTTPS using -s. Default()
-u User. Defines User Name for authentication. Default()
-n namespace. Specifies namespace to use for operation. Default(root/cimv2)
+ -ic includeClassOrigin. If set includeClassOrigin parameter
+ set true on requests that honor this parameter. Default(false)
-di deepInheritance. If set deepInheritance parameter
set true. Default(false)
-lo localOnly. DEPRECATED. This was used to set LocalOnly.
// Class Test_CLITestProviderClass
+ [Version ("2.5.0") : Restricted, Translatable,
+ Description ("Class to test input and output of all property types "
+ "that can be handled by cimcli.") : Translatable]
class Test_CLITestProviderClass
{
+ [key : DisableOverride]
string Id;
string Name;
+ [Description ("Return name value pair defining input parameters for "
+ "the operation received by the provider such as propertylist.")
+ : Translatable]
string requestInputParameters;
boolean scalBool;
uint8 scalUint8;
real64 arrayReal64[];
string arrayString[];
datetime arrayDateTime[];
-uint32 ReferenceParamTest(uint32 InParam1, uint32 OutParam2);
-uint32 InOutParamTest(boolean scalBool, uint8 scalUint8, sint8 scalSint8,
- uint16 scalUint16, sint16 scalSint16, uint32 scalUint32, sint32
- scalSint32, uint64 scalUint64, real32 scalReal32, real64 scalReal64,
- string scalString, datetime scalDateTime, boolean arrayBool[],
- uint8 arrayUint8[], sint8 arraySint8[], uint16 arrayUint16[], sint16
- arraySint16[], uint32 arrayUint32[], sint32 arraySint32[], uint64
- arrayUint64[], real32 arrayReal32[], real64 arrayReal64[], string
- arrayString[], datetime arrayDateTime[], uint32 returnValue);
-uint32 FullParamTest(boolean inScalBool, uint8 inScalUint8, sint8 inScalSint8,
- uint16 inScalUint16, sint16 inScalSint16, uint32 inScalUint32,
- sint32 inScalSint32, uint64 inScalUint64, real32 inScalReal32,
- real64 inScalReal64, string inScalString, datetime inScalDateTime,
- boolean outScalBool, uint8 outScalUint8, sint8 outScalSint8, uint16
- outScalUint16, sint16 outScalSint16, uint32 outScalUint32, sint32
- outScalSint32, uint64 outScalUint64, real32 outScalReal32, real64
- outScalReal64, string outScalString, datetime outScalDateTime);
-uint32 setProviderParameters(string substituteHostName);
+uint32 ReferenceParamTest([in : DisableOverride] uint32 InParam1, [out
+ : DisableOverride] uint32 OutParam2);
+ [Description ("Method to test input and output of all parameter types. "
+ "Provider is expected to return all parameters input.") : Translatable]
+uint32 InOutParamTest([in : DisableOverride,
+out : DisableOverride] boolean scalBool, [in : DisableOverride,
+out : DisableOverride] uint8 scalUint8, [in : DisableOverride,
+out : DisableOverride] sint8 scalSint8, [in : DisableOverride,
+out : DisableOverride] uint16 scalUint16, [in : DisableOverride,
+out : DisableOverride] sint16 scalSint16, [in : DisableOverride,
+out : DisableOverride] uint32 scalUint32, [in : DisableOverride,
+out : DisableOverride] sint32 scalSint32, [in : DisableOverride,
+out : DisableOverride] uint64 scalUint64, [in : DisableOverride,
+out : DisableOverride] real32 scalReal32, [in : DisableOverride,
+out : DisableOverride] real64 scalReal64, [in : DisableOverride,
+out : DisableOverride] string scalString, [in : DisableOverride,
+out : DisableOverride] datetime scalDateTime, [in : DisableOverride,
+
+out : DisableOverride] boolean arrayBool[], [in : DisableOverride,
+
+out : DisableOverride] uint8 arrayUint8[], [in : DisableOverride,
+out : DisableOverride] sint8 arraySint8[], [in : DisableOverride,
+out : DisableOverride] uint16 arrayUint16[], [in : DisableOverride,
+
+out : DisableOverride] sint16 arraySint16[], [in : DisableOverride,
+
+out : DisableOverride] uint32 arrayUint32[], [in : DisableOverride,
+
+out : DisableOverride] sint32 arraySint32[], [in : DisableOverride,
+
+out : DisableOverride] uint64 arrayUint64[], [in : DisableOverride,
+
+out : DisableOverride] real32 arrayReal32[], [in : DisableOverride,
+
+out : DisableOverride] real64 arrayReal64[], [in : DisableOverride,
+
+out : DisableOverride] string arrayString[], [in : DisableOverride,
+
+out : DisableOverride] datetime arrayDateTime[], [in : DisableOverride,
+
+out : DisableOverride] uint32 returnValue);
+uint32 FullParamTest([in : DisableOverride] boolean inScalBool, [in
+ : DisableOverride] uint8 inScalUint8, [in : DisableOverride] sint8
+ inScalSint8, [in : DisableOverride] uint16 inScalUint16, [in :
+ DisableOverride] sint16 inScalSint16, [in : DisableOverride] uint32
+ inScalUint32, [in : DisableOverride] sint32 inScalSint32, [in :
+ DisableOverride] uint64 inScalUint64, [in : DisableOverride] real32
+ inScalReal32, [in : DisableOverride] real64 inScalReal64, [in :
+ DisableOverride] string inScalString, [in : DisableOverride] datetime
+ inScalDateTime, [out : DisableOverride] boolean outScalBool, [out
+ : DisableOverride] uint8 outScalUint8, [out : DisableOverride]
+ sint8 outScalSint8, [out : DisableOverride] uint16 outScalUint16,
+ [out : DisableOverride] sint16 outScalSint16, [out : DisableOverride]
+ uint32 outScalUint32, [out : DisableOverride] sint32 outScalSint32,
+ [out : DisableOverride] uint64 outScalUint64, [out : DisableOverride]
+ real32 outScalReal32, [out : DisableOverride] real64 outScalReal64,
+ [out : DisableOverride] string outScalString, [out : DisableOverride]
+ datetime outScalDateTime);
+ [Description ("Method to set parameters to modify provider behavior")
+ : Translatable]
+uint32 setProviderParameters([in : DisableOverride,
+out : DisableOverride] string substituteHostName);
+ [Description ("Method to reset all parameters provider behavior parameters")
+ : Translatable]
uint32 resetProviderParameters();
};
// Class Test_CLITestProviderLinkClass
+ [ASSOCIATION : DisableOverride,
+ Version ("1.0.0") : Restricted, Translatable,
+ Description ("Defines the relationship between parents and children. "
+ "Test Ref/Assoc functions in cimli") : Translatable]
class Test_CLITestProviderLinkClass
{
+ [key : DisableOverride]
reference parent;
+ [key : DisableOverride]
reference child;
string requestInputParameters;
};
+
+// Class Test_CLITestProviderLinkClass
+
+class Test_CLITestProviderLinkClass
+{
+reference parent;
+reference child;
+string requestInputParameters;
+};
+<CLASS NAME="Test_CLITestProviderLinkClass">
+ <QUALIFIER NAME="ASSOCIATION" TYPE="boolean" OVERRIDABLE="false">
+ <VALUE>
+ TRUE
+ </VALUE>
+ </QUALIFIER>
+ <QUALIFIER NAME="Version" TYPE="string" TOSUBCLASS="false" TRANSLATABLE="true">
+ <VALUE>
+ 1.0.0
+ </VALUE>
+ </QUALIFIER>
+ <QUALIFIER NAME="Description" TYPE="string" TRANSLATABLE="true">
+ <VALUE>
+ Defines the relationship between parents and children. Test Ref/Assoc functions in cimli
+ </VALUE>
+ </QUALIFIER>
+ <PROPERTY.REFERENCE NAME="parent" REFERENCECLASS="Test_CLITestProviderClass">
+ <QUALIFIER NAME="key" TYPE="boolean" OVERRIDABLE="false">
+ <VALUE>
+ TRUE
+ </VALUE>
+ </QUALIFIER>
+ </PROPERTY.REFERENCE>
+ <PROPERTY.REFERENCE NAME="child" REFERENCECLASS="Test_CLITestProviderClass">
+ <QUALIFIER NAME="key" TYPE="boolean" OVERRIDABLE="false">
+ <VALUE>
+ TRUE
+ </VALUE>
+ </QUALIFIER>
+ </PROPERTY.REFERENCE>
+ <PROPERTY NAME="requestInputParameters" TYPE="string">
+ </PROPERTY>
+</CLASS>
+<CLASS NAME="Test_CLITestProviderLinkClass">
+ <QUALIFIER NAME="ASSOCIATION" TYPE="boolean" OVERRIDABLE="false">
+ <VALUE>
+ TRUE
+ </VALUE>
+ </QUALIFIER>
+ <QUALIFIER NAME="Version" TYPE="string" TOSUBCLASS="false" TRANSLATABLE="true">
+ <VALUE>
+ 1.0.0
+ </VALUE>
+ </QUALIFIER>
+ <QUALIFIER NAME="Description" TYPE="string" TRANSLATABLE="true">
+ <VALUE>
+ Defines the relationship between parents and children. Test Ref/Assoc functions in cimli
+ </VALUE>
+ </QUALIFIER>
+ <PROPERTY.REFERENCE NAME="parent" REFERENCECLASS="Test_CLITestProviderClass" CLASSORIGIN="Test_CLITestProviderLinkClass">
+ <QUALIFIER NAME="key" TYPE="boolean" OVERRIDABLE="false">
+ <VALUE>
+ TRUE
+ </VALUE>
+ </QUALIFIER>
+ </PROPERTY.REFERENCE>
+ <PROPERTY.REFERENCE NAME="child" REFERENCECLASS="Test_CLITestProviderClass" CLASSORIGIN="Test_CLITestProviderLinkClass">
+ <QUALIFIER NAME="key" TYPE="boolean" OVERRIDABLE="false">
+ <VALUE>
+ TRUE
+ </VALUE>
+ </QUALIFIER>
+ </PROPERTY.REFERENCE>
+ <PROPERTY NAME="requestInputParameters" CLASSORIGIN="Test_CLITestProviderLinkClass" TYPE="string">
+ </PROPERTY>
+</CLASS>
8. +++++ Test QualifierDecl Operations
Qualifier ASSOCIATION : boolean = FALSE, Scope(class association),
// Class CIM_ManagedElement
+ [Abstract : Restricted,
+ Version ("2.19.0") : Restricted, Translatable,
+ UMLPackagePath ("CIM::Core::CoreElements"),
+ Description ("ManagedElement is an abstract class that provides "
+ "a common superclass (or top of the inheritance tree) for the "
+ "non-association classes in the CIM Schema.") : Translatable]
class CIM_ManagedElement
{
+ [Description ("InstanceID is an optional property that may be used "
+ "to opaquely and uniquely identify an instance of this class "
+ "within the scope of the instantiating Namespace. Various subclasses "
+ "of this class may override this property to make it required, "
+ "or a key. Such subclasses may also modify the preferred algorithms "
+ "for ensuring uniqueness that are defined below.\nTo ensure "
+ "uniqueness within the NameSpace, the value of InstanceID should "
+ "be constructed using the following \"preferred\" algorithm: "
+ "\n<OrgID>:<LocalID> \nWhere <OrgID> and <LocalID> are separated "
+ "by a colon (:), and where <OrgID> must include a copyrighted, "
+ "trademarked, or otherwise unique name that is owned by the "
+ "business entity that is creating or defining the InstanceID "
+ "or that is a registered ID assigned to the business entity "
+ "by a recognized global authority. (This requirement is similar "
+ "to the <Schema Name>_<Class Name> structure of Schema class "
+ "names.) In addition, to ensure uniqueness, <OrgID> must not "
+ "contain a colon (:). When using this algorithm, the first colon "
+ "to appear in InstanceID must appear between <OrgID> and <LocalID>. "
+ "\n<LocalID> is chosen by the business entity and should not "
+ "be reused to identify different underlying (real-world) elements. "
+ "If not null and the above \"preferred\" algorithm is not used, "
+ "the defining entity must assure that the resulting InstanceID "
+ "is not reused across any InstanceIDs produced by this or other "
+ "providers for the NameSpace of this instance. \nIf not set "
+ "to null for DMTF-defined instances, the \"preferred\" algorithm "
+ "must be used with the <OrgID> set to CIM.") : Translatable]
string InstanceID;
+ [Description ("The Caption property is a short textual description "
+ "(one- line string) of the object.") : Translatable,
+ MaxLen (64)]
string Caption;
+ [Description ("The Description property provides a textual description "
+ "of the object.") : Translatable]
string Description;
+ [Description ("A user-friendly name for the object. This property allows "
+ "each instance to define a user-friendly name in addition to "
+ "its key properties, identity data, and description information. "
+ "\nNote that the Name property of ManagedSystemElement is also "
+ "defined as a user-friendly name. But, it is often subclassed "
+ "to be a Key. It is not reasonable that the same property can "
+ "convey both identity and a user-friendly name, without inconsistencies. "
+ "Where Name exists and is not a Key (such as for instances of "
+ "LogicalDevice), the same information can be present in both "
+ "the Name and ElementName properties. Note that if there is "
+ "an associated instance of CIM_EnabledLogicalElementCapabilities, "
+ "restrictions on this properties may exist as defined in ElementNameMask "
+ "and MaxElementNameLen properties defined in that class.") :
+ Translatable]
string ElementName;
};
<CLASS NAME="CIM_ManagedElement">
+ <QUALIFIER NAME="Abstract" TYPE="boolean" TOSUBCLASS="false">
+ <VALUE>
+ TRUE
+ </VALUE>
+ </QUALIFIER>
+ <QUALIFIER NAME="Version" TYPE="string" TOSUBCLASS="false" TRANSLATABLE="true">
+ <VALUE>
+ 2.19.0
+ </VALUE>
+ </QUALIFIER>
+ <QUALIFIER NAME="UMLPackagePath" TYPE="string">
+ <VALUE>
+ CIM::Core::CoreElements
+ </VALUE>
+ </QUALIFIER>
+ <QUALIFIER NAME="Description" TYPE="string" TRANSLATABLE="true">
+ <VALUE>
+ ManagedElement is an abstract class that provides a common superclass (or top of the inheritance tree) for the non-association classes in the CIM Schema.
+ </VALUE>
+ </QUALIFIER>
<PROPERTY NAME="InstanceID" TYPE="string">
+ <QUALIFIER NAME="Description" TYPE="string" TRANSLATABLE="true">
+ <VALUE>
+ InstanceID is an optional property that may be used to opaquely and uniquely identify an instance of this class within the scope of the instantiating Namespace. Various subclasses of this class may override this property to make it required, or a key. Such subclasses may also modify the preferred algorithms for ensuring uniqueness that are defined below. To ensure uniqueness within the NameSpace, the value of InstanceID should be constructed using the following "preferred" algorithm: <OrgID>:<LocalID> Where <OrgID> and <LocalID> are separated by a colon (:), and where <OrgID> must include a copyrighted, trademarked, or otherwise unique name that is owned by the business entity that is creating or defining the InstanceID or that is a registered ID assigned to the business entity by a recognized global authority. (This requirement is similar to the <Schema Name>_<Class Name> structure of Schema class names.) In addition, to ensure uniqueness, <OrgID> must not contain a colon (:). When using this algorithm, the first colon to appear in InstanceID must appear between <OrgID> and <LocalID>. <LocalID> is chosen by the business entity and should not be reused to identify different underlying (real-world) elements. If not null and the above "preferred" algorithm is not used, the defining entity must assure that the resulting InstanceID is not reused across any InstanceIDs produced by this or other providers for the NameSpace of this instance. If not set to null for DMTF-defined instances, the "preferred" algorithm must be used with the <OrgID> set to CIM.
+ </VALUE>
+ </QUALIFIER>
</PROPERTY>
<PROPERTY NAME="Caption" TYPE="string">
+ <QUALIFIER NAME="Description" TYPE="string" TRANSLATABLE="true">
+ <VALUE>
+ The Caption property is a short textual description (one- line string) of the object.
+ </VALUE>
+ </QUALIFIER>
+ <QUALIFIER NAME="MaxLen" TYPE="uint32">
+ <VALUE>
+ 64
+ </VALUE>
+ </QUALIFIER>
</PROPERTY>
<PROPERTY NAME="Description" TYPE="string">
+ <QUALIFIER NAME="Description" TYPE="string" TRANSLATABLE="true">
+ <VALUE>
+ The Description property provides a textual description of the object.
+ </VALUE>
+ </QUALIFIER>
</PROPERTY>
<PROPERTY NAME="ElementName" TYPE="string">
+ <QUALIFIER NAME="Description" TYPE="string" TRANSLATABLE="true">
+ <VALUE>
+ A user-friendly name for the object. This property allows each instance to define a user-friendly name in addition to its key properties, identity data, and description information. Note that the Name property of ManagedSystemElement is also defined as a user-friendly name. But, it is often subclassed to be a Key. It is not reasonable that the same property can convey both identity and a user-friendly name, without inconsistencies. Where Name exists and is not a Key (such as for instances of LogicalDevice), the same information can be present in both the Name and ElementName properties. Note that if there is an associated instance of CIM_EnabledLogicalElementCapabilities, restrictions on this properties may exist as defined in ElementNameMask and MaxElementNameLen properties defined in that class.
+ </VALUE>
+ </QUALIFIER>
</PROPERTY>
</CLASS>
1. +++++ Test For Reference params
{
Id = "Mike";
Name = "Bob";
+requestInputParameters = "propertyList=Id, Name, requestInputParameters, "
+ "scalBool, scalUint8, scalSint8, scalUint16, scalSint16, scalUint32, "
+ "scalSint32, scalUint64, scalSint64, scalReal32, scalReal64, scalString, "
+ "scalDateTime, defaultBool, defaultUint8, defaultSint8, defaultUint16, "
+ "defaultSint16, defaultUint32, defaultSint32, defaultUint64, defaultSint64, "
+ "defaultReal32, defaultReal64, defaultString, defaultDateTime, arrayBool, "
+ "arrayUint8, arraySint8, arrayUint16, arraySint16, arrayUint32, "
+ "arraySint32, arrayUint64, arraySint64, arrayReal32, arrayReal64, "
+ "arrayString, arrayDateTime; includeQualifiers=false; includeClassOrigin=false";
scalBool = TRUE;
scalUint8 = 220;
scalSint8 = 124;
arrayString = {"First", "Second", "Third"};
arrayDateTime = {"19991224120000.000000+360", "19991224120000.000000+360",
"19991224120000.000000+360"};
-requestInputParameters = "propertyList=Id, Name, requestInputParameters, "
- "scalBool, scalUint8, scalSint8, scalUint16, scalSint16, scalUint32, "
- "scalSint32, scalUint64, scalSint64, scalReal32, scalReal64, scalString, "
- "scalDateTime, defaultBool, defaultUint8, defaultSint8, defaultUint16, "
- "defaultSint16, defaultUint32, defaultSint32, defaultUint64, defaultSint64, "
- "defaultReal32, defaultReal64, defaultString, defaultDateTime, arrayBool, "
- "arrayUint8, arraySint8, arrayUint16, arraySint16, arrayUint32, "
- "arraySint32, arrayUint64, arraySint64, arrayReal32, arrayReal64, "
- "arrayString, arrayDateTime; includeQualifiers=false; includeClassOrigin=false";
};
3. +++++ Tests Instances create Instance
Returned Path Test_CLITestProviderClass.Id="ScalarTest"
{
Id = "Mike";
Name = "Bob";
+requestInputParameters = "propertyList=Id, Name, requestInputParameters, "
+ "scalBool, scalUint8, scalSint8, scalUint16, scalSint16, scalUint32, "
+ "scalSint32, scalUint64, scalSint64, scalReal32, scalReal64, scalString, "
+ "scalDateTime, defaultBool, defaultUint8, defaultSint8, defaultUint16, "
+ "defaultSint16, defaultUint32, defaultSint32, defaultUint64, defaultSint64, "
+ "defaultReal32, defaultReal64, defaultString, defaultDateTime, arrayBool, "
+ "arrayUint8, arraySint8, arrayUint16, arraySint16, arrayUint32, "
+ "arraySint32, arrayUint64, arraySint64, arrayReal32, arrayReal64, "
+ "arrayString, arrayDateTime; includeQualifiers=false; includeClassOrigin=false";
scalBool = TRUE;
scalUint8 = 220;
scalSint8 = 124;
arrayString = {"First", "Second", "Third"};
arrayDateTime = {"19991224120000.000000+360", "19991224120000.000000+360",
"19991224120000.000000+360"};
-requestInputParameters = "propertyList=Id, Name, requestInputParameters, "
- "scalBool, scalUint8, scalSint8, scalUint16, scalSint16, scalUint32, "
- "scalSint32, scalUint64, scalSint64, scalReal32, scalReal64, scalString, "
- "scalDateTime, defaultBool, defaultUint8, defaultSint8, defaultUint16, "
- "defaultSint16, defaultUint32, defaultSint32, defaultUint64, defaultSint64, "
- "defaultReal32, defaultReal64, defaultString, defaultDateTime, arrayBool, "
- "arrayUint8, arraySint8, arrayUint16, arraySint16, arrayUint32, "
- "arraySint32, arrayUint64, arraySint64, arrayReal32, arrayReal64, "
- "arrayString, arrayDateTime; includeQualifiers=false; includeClassOrigin=false";
};
path= Test_CLITestProviderClass.Id="ScalarTest"
// Class CIM_ManagedElement
+ [Abstract : Restricted,
+ Version ("2.19.0") : Restricted, Translatable,
+ UMLPackagePath ("CIM::Core::CoreElements"),
+ Description ("ManagedElement is an abstract class that provides "
+ "a common superclass (or top of the inheritance tree) for the "
+ "non-association classes in the CIM Schema.") : Translatable]
class CIM_ManagedElement
{
+ [Description ("The Caption property is a short textual description "
+ "(one- line string) of the object.") : Translatable,
+ MaxLen (64)]
string Caption;
};
// Class CIM_ManagedElement
+ [Abstract : Restricted,
+ Version ("2.19.0") : Restricted, Translatable,
+ UMLPackagePath ("CIM::Core::CoreElements"),
+ Description ("ManagedElement is an abstract class that provides "
+ "a common superclass (or top of the inheritance tree) for the "
+ "non-association classes in the CIM Schema.") : Translatable]
class CIM_ManagedElement
{
+ [Description ("The Caption property is a short textual description "
+ "(one- line string) of the object.") : Translatable,
+ MaxLen (64)]
string Caption;
+ [Description ("The Description property provides a textual description "
+ "of the object.") : Translatable]
string Description;
};
// Class CIM_ManagedElement
+ [Abstract : Restricted,
+ Version ("2.19.0") : Restricted, Translatable,
+ UMLPackagePath ("CIM::Core::CoreElements"),
+ Description ("ManagedElement is an abstract class that provides "
+ "a common superclass (or top of the inheritance tree) for the "
+ "non-association classes in the CIM Schema.") : Translatable]
class CIM_ManagedElement
{
+ [Description ("The Caption property is a short textual description "
+ "(one- line string) of the object.") : Translatable,
+ MaxLen (64)]
string Caption;
+ [Description ("The Description property provides a textual description "
+ "of the object.") : Translatable]
string Description;
+ [Description ("A user-friendly name for the object. This property allows "
+ "each instance to define a user-friendly name in addition to "
+ "its key properties, identity data, and description information. "
+ "\nNote that the Name property of ManagedSystemElement is also "
+ "defined as a user-friendly name. But, it is often subclassed "
+ "to be a Key. It is not reasonable that the same property can "
+ "convey both identity and a user-friendly name, without inconsistencies. "
+ "Where Name exists and is not a Key (such as for instances of "
+ "LogicalDevice), the same information can be present in both "
+ "the Name and ElementName properties. Note that if there is "
+ "an associated instance of CIM_EnabledLogicalElementCapabilities, "
+ "restrictions on this properties may exist as defined in ElementNameMask "
+ "and MaxElementNameLen properties defined in that class.") :
+ Translatable]
string ElementName;
};
// Class CIM_ManagedElement
+ [Abstract : Restricted,
+ Version ("2.19.0") : Restricted, Translatable,
+ UMLPackagePath ("CIM::Core::CoreElements"),
+ Description ("ManagedElement is an abstract class that provides "
+ "a common superclass (or top of the inheritance tree) for the "
+ "non-association classes in the CIM Schema.") : Translatable]
class CIM_ManagedElement
{
};
{
Id = "Mike";
Name = "Bob";
+requestInputParameters = "propertyList=NULL; includeQualifiers=false; "
+ "includeClassOrigin=false";
scalBool = TRUE;
scalUint8 = 220;
scalSint8 = 124;
arrayString = {"First", "Second", "Third"};
arrayDateTime = {"19991224120000.000000+360", "19991224120000.000000+360",
"19991224120000.000000+360"};
-requestInputParameters = "propertyList=NULL; includeQualifiers=false; "
- "includeClassOrigin=false";
};
path= Test_CLITestProviderClass
{
Id = "Mike";
Name = "Bob";
+requestInputParameters = "role=; resultRole=; associationClass=Test_CLITestProviderLinkClass; "
+ "resultClass=; includeQualifiers=false; includeClassOrigin=false; "
+ "propertyList=NULL";
scalBool = TRUE;
scalUint8 = 220;
scalSint8 = 124;
arrayString = {"First", "Second", "Third"};
arrayDateTime = {"19991224120000.000000+360", "19991224120000.000000+360",
"19991224120000.000000+360"};
-requestInputParameters = "role=; resultRole=; associationClass=Test_CLITestProviderLinkClass; "
- "resultClass=; includeQualifiers=false; includeClassOrigin=false; "
- "propertyList=NULL";
};
1 associator names
//localhost/test/TestProvider:Test_CLITestProviderClass.Id="Mike"
{
Id = "Mike";
Name = "Bob";
+requestInputParameters = "propertyList=Id, Name, requestInputParameters, "
+ "scalBool, scalUint8, scalSint8, scalUint16, scalSint16, scalUint32, "
+ "scalSint32, scalUint64, scalSint64, scalReal32, scalReal64, scalString, "
+ "scalDateTime, defaultBool, defaultUint8, defaultSint8, defaultUint16, "
+ "defaultSint16, defaultUint32, defaultSint32, defaultUint64, defaultSint64, "
+ "defaultReal32, defaultReal64, defaultString, defaultDateTime, arrayBool, "
+ "arrayUint8, arraySint8, arrayUint16, arraySint16, arrayUint32, "
+ "arraySint32, arrayUint64, arraySint64, arrayReal32, arrayReal64, "
+ "arrayString, arrayDateTime; includeQualifiers=false; includeClassOrigin=false";
scalBool = TRUE;
scalUint8 = 220;
scalSint8 = 124;
arrayString = {"First", "Second", "Third"};
arrayDateTime = {"19991224120000.000000+360", "19991224120000.000000+360",
"19991224120000.000000+360"};
-requestInputParameters = "propertyList=Id, Name, requestInputParameters, "
- "scalBool, scalUint8, scalSint8, scalUint16, scalSint16, scalUint32, "
- "scalSint32, scalUint64, scalSint64, scalReal32, scalReal64, scalString, "
- "scalDateTime, defaultBool, defaultUint8, defaultSint8, defaultUint16, "
- "defaultSint16, defaultUint32, defaultSint32, defaultUint64, defaultSint64, "
- "defaultReal32, defaultReal64, defaultString, defaultDateTime, arrayBool, "
- "arrayUint8, arraySint8, arrayUint16, arraySint16, arrayUint32, "
- "arraySint32, arrayUint64, arraySint64, arrayReal32, arrayReal64, "
- "arrayString, arrayDateTime; includeQualifiers=false; includeClassOrigin=false";
};
Test_CLITestProviderClass.Id="Mike"
1 instances of class Test_CLITestProviderClass returned.
1 references returned.
Failed references count test. Expected= 10 Received= 1
1 associator names Test_CLITestProviderClass returned.
+Failed associator names count test. Expected= 10 Received= 1
1 referenceNames Test_CLITestProviderClass returned.
Failed referenceNames count test. Expected= 10 Received= 1
Return Value= 0
+21. +++++ Test For enumerateClasses
+CIM_ReplaceableProductFRU
+CIM_ElementCapabilities
+WET_RelatedStatistics
+CIM_ElementProfile
+WET_SettingContext
+CIM_Error
+CIM_ProductFRU
+CIM_Statistics
+WET_ElementSetting
+WET_ProductSupport
+CIM_CollectionSetting
+CIM_CollectionConfiguration
+CIM_ProductParentChild
+WET_ProductParentChild
+CIM_ServiceAffectsElement
+CIM_FRUIncludesProduct
+CIM_OwningCollectionElement
+CIM_SystemSettingContext
+CIM_ElementLocation
+WET_FRUIncludesProduct
+CIM_ServiceAvailableToElement
+CIM_CompatibleProduct
+WET_CollectionConfiguration
+WET_CollectionSetting
+CIM_InstalledSoftwareIdentity
+WET_CollectedCollections
+CIM_CollectedCollections
+CIM_ElementConfiguration
+WET_ElementConfiguration
+WET_CompatibleProduct
+CIM_ElementSettingData
+CIM_SAPAvailableForElement
+CIM_Dependency
+WET_ManagedElement
+CIM_RelatedStatistics
+CIM_ActsAsSpare
+CIM_SettingContext
+CIM_FRUPhysicalElements
+WET_FRUPhysicalElements
+CIM_ElementStatisticalData
+WET_Component
+CIM_ElementSetting
+WET_LogicalIdentity
+CIM_DependencyContext
+WET_Dependency
+CIM_ProductSupport
+CIM_RelatedStatisticalData
+CIM_Synchronized
+WET_Synchronized
+CIM_ParameterValueSources
+CIM_ParametersForMethod
+WET_DependencyContext
+CIM_ProductPhysicalElements
+WET_ProductFRU
+WET_Statistics
+WET_ProductPhysicalElements
+CIM_ProductProductDependency
+WET_ConfigurationComponent
+CIM_SettingsDefineState
+PG_TestElement
+WET_ProductProductDependency
+CIM_LogicalIdentity
+CIM_ManagedElement
+CIM_ConfigurationComponent
+WET_MemberOfCollection
+CIM_Component
+CIM_MemberOfCollection
-Id Name scalBool scalUint8 scalSint8 scalUint16 scalSint16 scalUint32 scalSint32 scalUint64 scalSint64 scalReal32 scalReal64 scalString scalDateTime defaultBool defaultUint8 defaultSint8 defaultUint16 defaultSint16 defaultUint32 defaultSint32 defaultUint64 defaultSint64 defaultReal32 defaultReal64 defaultString defaultDateTime arrayBool arrayUint8 arraySint8 arrayUint16 arraySint16 arrayUint32 arraySint32 arrayUint64 arraySint64 arrayReal32 arrayReal64 arrayString arrayDateTime requestInputParameters
-Mike Bob TRUE 220 124 100 100 100 100 100 1.0000000000000000e+02 1.0000000000000000e+02 teststring 19991224120000.000000+360 TRUE 4 4 4 4 4 4 4 4 test"embedded"quote TRUE FALSE TRUE 4 128 240 4 126 -126 4 128 240 4 126 -126 4 128 240 4 126 -126 4 128 240 4.0000000000000000e+00 1.2800000000000000e+02 2.4000000000000000e+02 4.0000000000000000e+00 1.2800000000000000e+02 2.4000000000000000e+02 First Second Third 19991224120000.000000+360 19991224120000.000000+360 19991224120000.000000+360 propertyList=Id, Name, requestInputParameters, scalBool, scalUint8, scalSint8, scalUint16, scalSint16, scalUint32, scalSint32, scalUint64, scalSint64, scalReal32, scalReal64, scalString, scalDateTime, defaultBool, defaultUint8, defaultSint8, defaultUint16, defaultSint16, defaultUint32, defaultSint32, defaultUint64, defaultSint64, defaultReal32, defaultReal64, defaultString, defaultDateTime, arrayBool, arrayUint8, arraySint8, arrayUint16, arraySint16, arrayUint32, arraySint32, arrayUint64, arraySint64, arrayReal32, arrayReal64, arrayString, arrayDateTime; includeQualifiers=false; includeClassOrigin=false
-Norman Susan propertyList=Id, Name, requestInputParameters, scalBool, scalUint8, scalSint8, scalUint16, scalSint16, scalUint32, scalSint32, scalUint64, scalSint64, scalReal32, scalReal64, scalString, scalDateTime, defaultBool, defaultUint8, defaultSint8, defaultUint16, defaultSint16, defaultUint32, defaultSint32, defaultUint64, defaultSint64, defaultReal32, defaultReal64, defaultString, defaultDateTime, arrayBool, arrayUint8, arraySint8, arrayUint16, arraySint16, arrayUint32, arraySint32, arrayUint64, arraySint64, arrayReal32, arrayReal64, arrayString, arrayDateTime; includeQualifiers=false; includeClassOrigin=false
-Thomas Peter propertyList=Id, Name, requestInputParameters, scalBool, scalUint8, scalSint8, scalUint16, scalSint16, scalUint32, scalSint32, scalUint64, scalSint64, scalReal32, scalReal64, scalString, scalDateTime, defaultBool, defaultUint8, defaultSint8, defaultUint16, defaultSint16, defaultUint32, defaultSint32, defaultUint64, defaultSint64, defaultReal32, defaultReal64, defaultString, defaultDateTime, arrayBool, arrayUint8, arraySint8, arrayUint16, arraySint16, arrayUint32, arraySint32, arrayUint64, arraySint64, arrayReal32, arrayReal64, arrayString, arrayDateTime; includeQualifiers=false; includeClassOrigin=false
+Id Name requestInputParameters scalBool scalUint8 scalSint8 scalUint16 scalSint16 scalUint32 scalSint32 scalUint64 scalSint64 scalReal32 scalReal64 scalString scalDateTime defaultBool defaultUint8 defaultSint8 defaultUint16 defaultSint16 defaultUint32 defaultSint32 defaultUint64 defaultSint64 defaultReal32 defaultReal64 defaultString defaultDateTime arrayBool arrayUint8 arraySint8 arrayUint16 arraySint16 arrayUint32 arraySint32 arrayUint64 arraySint64 arrayReal32 arrayReal64 arrayString arrayDateTime
+Mike Bob propertyList=Id, Name, requestInputParameters, scalBool, scalUint8, scalSint8, scalUint16, scalSint16, scalUint32, scalSint32, scalUint64, scalSint64, scalReal32, scalReal64, scalString, scalDateTime, defaultBool, defaultUint8, defaultSint8, defaultUint16, defaultSint16, defaultUint32, defaultSint32, defaultUint64, defaultSint64, defaultReal32, defaultReal64, defaultString, defaultDateTime, arrayBool, arrayUint8, arraySint8, arrayUint16, arraySint16, arrayUint32, arraySint32, arrayUint64, arraySint64, arrayReal32, arrayReal64, arrayString, arrayDateTime; includeQualifiers=false; includeClassOrigin=false TRUE 220 124 100 100 100 100 100 1.0000000000000000e+02 1.0000000000000000e+02 teststring 19991224120000.000000+360 TRUE 4 4 4 4 4 4 4 4 test"embedded"quote TRUE FALSE TRUE 4 128 240 4 126 -126 4 128 240 4 126 -126 4 128 240 4 126 -126 4 128 240 4.0000000000000000e+00 1.2800000000000000e+02 2.4000000000000000e+02 4.0000000000000000e+00 1.2800000000000000e+02 2.4000000000000000e+02 First Second Third 19991224120000.000000+360 19991224120000.000000+360 19991224120000.000000+360
+Norman Susan propertyList=Id, Name, requestInputParameters, scalBool, scalUint8, scalSint8, scalUint16, scalSint16, scalUint32, scalSint32, scalUint64, scalSint64, scalReal32, scalReal64, scalString, scalDateTime, defaultBool, defaultUint8, defaultSint8, defaultUint16, defaultSint16, defaultUint32, defaultSint32, defaultUint64, defaultSint64, defaultReal32, defaultReal64, defaultString, defaultDateTime, arrayBool, arrayUint8, arraySint8, arrayUint16, arraySint16, arrayUint32, arraySint32, arrayUint64, arraySint64, arrayReal32, arrayReal64, arrayString, arrayDateTime; includeQualifiers=false; includeClassOrigin=false
+Thomas Peter propertyList=Id, Name, requestInputParameters, scalBool, scalUint8, scalSint8, scalUint16, scalSint16, scalUint32, scalSint32, scalUint64, scalSint64, scalReal32, scalReal64, scalString, scalDateTime, defaultBool, defaultUint8, defaultSint8, defaultUint16, defaultSint16, defaultUint32, defaultSint32, defaultUint64, defaultSint64, defaultReal32, defaultReal64, defaultString, defaultDateTime, arrayBool, arrayUint8, arraySint8, arrayUint16, arraySint16, arrayUint32, arraySint32, arrayUint64, arraySint64, arrayReal32, arrayReal64, arrayString, arrayDateTime; includeQualifiers=false; includeClassOrigin=false
+Id Name scalUint8 arrayBool
+Mike Bob 220 TRUE FALSE TRUE
+Norman Susan
+Thomas Peter