BUG#: 8694
authorkarl <karl>
Tue, 2 Feb 2010 18:05:55 +0000 (18:05 +0000)
committerkarl <karl>
Tue, 2 Feb 2010 18:05:55 +0000 (18:05 +0000)
TITLE: -cl option dropped somewhere

DESCRIPTION: Added the option back and cleaned up the usage.  Updated
documentation. Also  extended tests.

13 files changed:
src/Clients/cimcli/CIMCLIClient.cpp
src/Clients/cimcli/CIMCLIOperations.cpp
src/Clients/cimcli/CIMCLIOptions.cpp
src/Clients/cimcli/doc/cimcli.html
src/Clients/cimcli/doc/cimcli.nroff
src/Clients/cimcli/doc/cimcli.txt
src/Pegasus/msg/CLI/pegasusCLI_en.txt
src/Providers/TestProviders/CLITestProvider/CLITestProvider.cpp
src/Providers/TestProviders/CLITestProvider/tests/Makefile
src/Providers/TestProviders/CLITestProvider/tests/helpresult.master
src/Providers/TestProviders/CLITestProvider/tests/helpresult.master.ssl
src/Providers/TestProviders/CLITestProvider/tests/result.master
src/Providers/TestProviders/CLITestProvider/tests/tableformat.master

index 6783dcf34321aec4d87e0b6af4700db04963072f..eec2e7fab7da44679d7f0aa2fd8c4fdf7a659f06 100644 (file)
@@ -547,7 +547,7 @@ Array<CIMNamespaceName> _getNameSpaceNames(Options& opts)
     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)
@@ -568,7 +568,7 @@ String _resolveIncludeQualifiers(Options& opts, Boolean defaultValue)
         opts.includeQualifiers = opts.includeQualifiersRequested ?
                                     true : false;
     }
-    return _toString(opts.includeQualifiers);
+    return;
 }
 
 /////////////////////////////////////////////////////////////////////////////
@@ -679,7 +679,7 @@ int enumerateAllInstanceNames(Options& opts)
             CIMCLIOutput::displayPaths(opts, instanceNames, s);
         }
 
-        cout << "total Instances in " << opts.nameSpace
+        cout << "Total Instances in " << opts.nameSpace
              << " = " << totalInstances
              << " which contains " << classNames.size() << " classes"
              << endl;
@@ -725,6 +725,9 @@ int enumerateInstanceNames(Options& opts)
 
 int enumerateInstances(Options& opts)
 {
+    // Resolve the IncludeQualifiers -iq vs -niq qualifiers default is true.
+    _resolveIncludeQualifiers(opts, false);
+
     if (opts.verboseTest)
     {
         cout << "EnumerateInstances "
@@ -732,8 +735,7 @@ int enumerateInstances(Options& opts)
             << ", 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;
@@ -897,14 +899,15 @@ int deleteInstance(Options& opts)
 */
 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;
@@ -1008,13 +1011,15 @@ int createInstance(Options& opts)
 */
 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;
@@ -1237,6 +1242,8 @@ int enumerateClassNames(Options& opts)
 */
 int enumerateClasses(Options& opts)
 {
+    // Resolve the IncludeQualifiers -iq vs -niq qualifiers default is true.
+    _resolveIncludeQualifiers(opts, true);
     if (opts.verboseTest)
     {
         cout << "EnumerateClasses "
@@ -1244,8 +1251,7 @@ int enumerateClasses(Options& opts)
             << ", 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;
     }
@@ -1298,6 +1304,9 @@ int deleteClass(Options& opts)
 */
 int getClass(Options& opts)
 {
+    // Resolve the IncludeQualifiers -iq vs -niq qualifiers default is true.
+    _resolveIncludeQualifiers(opts, true);
+
     if (opts.verboseTest)
     {
         cout << "getClass "
@@ -1305,8 +1314,7 @@ int getClass(Options& opts)
             << ", 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;
@@ -1580,6 +1588,8 @@ int referenceNames(Options& opts)
 */
 int references(Options& opts)
 {
+    // Resolve the IncludeQualifiers -iq vs -niq qualifiers default is true.
+    _resolveIncludeQualifiers(opts, false);
     if (opts.verboseTest)
     {
         cout << "References "
@@ -1587,8 +1597,7 @@ int references(Options& opts)
             << ", 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;
@@ -1701,6 +1710,9 @@ int associatorNames(Options& opts)
  */
 int associators(Options& opts)
 {
+    // Resolve the IncludeQualifiers -iq vs -niq qualifiers default is true.
+    _resolveIncludeQualifiers(opts, false);
+
     if (opts.verboseTest)
     {
         cout << "Associators "
@@ -1710,8 +1722,7 @@ int associators(Options& opts)
             << ", 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;
index dc6500bee12a5650997c0a5c34f938ab37b466a4..40a7fc12231ef59e8f989bd566a5bdbe0b843f49 100644 (file)
@@ -199,7 +199,8 @@ OperationExampleEntry OperationExamples[] = {
     {"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",
@@ -210,19 +211,22 @@ OperationExampleEntry OperationExamples[] = {
     "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"
@@ -337,7 +341,7 @@ OperationExampleEntry OperationExamples[] = {
         "       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 "
@@ -363,7 +367,7 @@ OperationExampleEntry OperationExamples[] = {
         "    -- 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 "
index 9b54fa9ee4417bfa3e839e253b90f98788d614bb..f763ae3888320e415f4a5c3d8902c722b5373d83 100644 (file)
@@ -139,6 +139,11 @@ void BuildOptionsTable(
         "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"
@@ -669,15 +674,14 @@ int CheckCommonOptionValues(OptionManager& om, char** argv, Options& opts)
     // 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);
 
index 95e98ca0cad92aa6def3850d5c0335ce5d00ed93..2dc912a1b74d5cd07805a7061ee5801bcfcb5c3e 100644 (file)
@@ -619,10 +619,11 @@ for include_qualifiers to false.
 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>
@@ -661,6 +662,7 @@ not localOnly
             Issue getClass CIM Operation for the class CIM_Door.
 </PRE>
 
+<P>
 <DT><B>ni     EnumerateInstanceNames</B>
 
 <DD>
@@ -1362,6 +1364,14 @@ See -nlo. Default(true).
 <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>
@@ -1625,6 +1635,6 @@ Karl Schopmeyer <A HREF="mailto:k.schopmeyer@opengroup.org">k.schopmeyer@opengro
 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>
index 257f9587c6b335b588c71b6ffcdf620ac359d868..6c09067318d832db4f0a4e31bd71aad54cc1daf0 100644 (file)
@@ -112,7 +112,10 @@ uses the input path directly without getting the class from the server.
 
 .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
@@ -142,7 +145,8 @@ list of all options, and -hc to get a list of all commands).  When these
 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.
 
@@ -169,7 +173,7 @@ the parameter.
 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]
@@ -205,7 +209,7 @@ this option is set but neither the --cert or --key options are included,
 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.
 
@@ -233,13 +237,13 @@ command completion. If this option is set, the time for the operation
 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
@@ -534,9 +538,10 @@ for include_qualifiers to false.
 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]
@@ -568,6 +573,7 @@ not localOnly
        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
@@ -1168,6 +1174,13 @@ See -nlo. Default(true).
 .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).
@@ -1225,7 +1238,8 @@ default Pegasus client timeout which for Pegasus is normally to about
 .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
index 20db6632646dc63f425c12442287f610ef69378c..dd0896765262e246fb92c5649c79c1ad7ca806a4 100644 (file)
@@ -539,9 +539,11 @@ OPERATIONS
              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.
 
@@ -569,6 +571,7 @@ OPERATIONS
                   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:
@@ -1138,6 +1141,12 @@ OPTIONS LIST
              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).
 
 
index 84ce4a93db283c8eba53f9a196711800d937cc7c..604dcf859bea686be420b57b908eb5a6509040d9 100755 (executable)
@@ -1089,7 +1089,8 @@ en:table {
         "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"}
@@ -1102,21 +1103,23 @@ en:table {
         "    -- 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"
@@ -1134,7 +1137,7 @@ en:table {
         "       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"
@@ -1199,7 +1202,7 @@ en:table {
         "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"
@@ -1217,7 +1220,7 @@ en:table {
         "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"
@@ -1293,6 +1296,10 @@ en:table {
         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"}
index 77052eefe5e46d31e140733858711fc9ef8c91be..966f9846cb420b23ac3613b6d3f66d2e8eb93793 100644 (file)
@@ -33,7 +33,8 @@
 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:
 
@@ -64,6 +65,10 @@ instances array.
    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
@@ -72,8 +77,8 @@ remove, get, or enumerate an instance created in another namespace.
 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>
@@ -319,8 +324,7 @@ void CLITestProvider::invokeMethod(
                         }
                     }
                     // NOTE: Add new parameters here with else if
-
-                    // Not a valid parameter. Return error
+                    // not a valid parameter. Return error
                     else
                     {
                         rtnCode = 1;
@@ -368,7 +372,22 @@ void CLITestProvider::getInstance(
         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);
         }
@@ -417,7 +436,23 @@ void CLITestProvider::enumerateInstances(
             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);
@@ -686,7 +721,18 @@ void CLITestProvider::associators(
         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)
             {
@@ -722,7 +768,6 @@ void CLITestProvider::associatorNames(
     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
@@ -782,8 +827,17 @@ void CLITestProvider::references(
         // 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)
@@ -791,15 +845,13 @@ void CLITestProvider::references(
             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.
@@ -810,12 +862,9 @@ void CLITestProvider::references(
         _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);
@@ -1055,8 +1104,6 @@ void CLITestProvider::createInstances(const CIMNamespaceName& ns)
     instance.getProperty(instance.findProperty("arrayDateTime")).setValue(
         CIMValue(aCIMDateTime));
 
-    instance.removeProperty(instance.findProperty("requestInputParameters"));
-
     CIMObjectPath p("Test_CLITestProviderClass.Id=\"Mike\"");
 
     instance.setPath(p);
index b2b053362b18c54945c04366c64223d526cfdd1e..9bd74368df515de976d784493f1570d9c5cbbfc6 100644 (file)
@@ -92,6 +92,13 @@ getclass:
            >> $(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
@@ -243,7 +250,7 @@ testDeleteInstanceOperation:
 
        @$(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)
@@ -274,8 +281,13 @@ testTableOutputFormat:
            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\"
@@ -606,7 +618,7 @@ objectcountertests:
        -@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)" \
@@ -614,6 +626,29 @@ objectcountertests:
 
        @$(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
@@ -641,8 +676,10 @@ poststarttests:
        $(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
@@ -691,10 +728,10 @@ clean:
                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 ############
 
@@ -727,8 +764,5 @@ rm:
        cimcli im Test_CLITestProviderClass -n "$(PROVIDERNS)" \
                resetProviderParameters
 
-a:
-       cimcli r Test_CLITestProviderClass.Id=\"Mike\" -n "$(PROVIDERNS)" --setRtnHostNames "blah" -v
-
 # END_OF_FILE
 
index 42c25e8369bdce872d474521755c7f1218841246..2476387ce3b06fdc142d856f3d8ea7c453802269 100644 (file)
@@ -20,6 +20,8 @@ This command executes single CIM Operations.
     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.
@@ -319,6 +321,8 @@ This command executes single CIM Operations.
     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.
index 46279c66aaab4a56a422f2cc59956c17f933870d..0b05203fac5d900e676b977dbb63c2be2fd7da4b 100644 (file)
@@ -27,6 +27,8 @@ This command executes single CIM Operations.
     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.
@@ -333,6 +335,8 @@ This command executes single CIM Operations.
     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.
index 406f1f7cc3d142772b23ac547a811801c3b80faa..e535a7fea929b05267c3036631d68d0c21b4f031 100644 (file)
@@ -2,10 +2,17 @@
 
 //    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;
@@ -46,35 +53,162 @@ real32 arrayReal32[];
 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), 
@@ -286,21 +420,117 @@ WET_Synchronized
 
 //    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.&#10;To ensure uniqueness within the NameSpace, the value of InstanceID should be constructed using the following &quot;preferred&quot; algorithm: &#10;&lt;OrgID&gt;:&lt;LocalID&gt; &#10;Where &lt;OrgID&gt; and &lt;LocalID&gt; are separated by a colon (:), and where &lt;OrgID&gt; 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 &lt;Schema Name&gt;_&lt;Class Name&gt; structure of Schema class names.) In addition, to ensure uniqueness, &lt;OrgID&gt; must not contain a colon (:). When using this algorithm, the first colon to appear in InstanceID must appear between &lt;OrgID&gt; and &lt;LocalID&gt;. &#10;&lt;LocalID&gt; is chosen by the business entity and should not be reused to identify different underlying (real-world) elements. If not null and the above &quot;preferred&quot; 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. &#10;If not set to null for DMTF-defined instances, the &quot;preferred&quot; algorithm must be used with the &lt;OrgID&gt; 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. &#10;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
@@ -314,6 +544,15 @@ instance of Test_CLITestProviderClass
 {
 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;
@@ -354,15 +593,6 @@ arrayReal64 = {4.0000000000000000e+00, 1.2800000000000000e+02, 2.400000000000000
 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"
@@ -379,6 +609,15 @@ instance of Test_CLITestProviderClass
 {
 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;
@@ -419,15 +658,6 @@ arrayReal64 = {4.0000000000000000e+00, 1.2800000000000000e+02, 2.400000000000000
 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"
 
@@ -494,30 +724,81 @@ Return Value= 0
 
 //    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
 {
 };
@@ -552,6 +833,8 @@ instance of Test_CLITestProviderClass
 {
 Id = "Mike";
 Name = "Bob";
+requestInputParameters = "propertyList=NULL; includeQualifiers=false; "
+    "includeClassOrigin=false";
 scalBool = TRUE;
 scalUint8 = 220;
 scalSint8 = 124;
@@ -592,8 +875,6 @@ arrayReal64 = {4.0000000000000000e+00, 1.2800000000000000e+02, 2.400000000000000
 arrayString = {"First", "Second", "Third"};
 arrayDateTime = {"19991224120000.000000+360", "19991224120000.000000+360", 
     "19991224120000.000000+360"};
-requestInputParameters = "propertyList=NULL; includeQualifiers=false; "
-    "includeClassOrigin=false";
 };
 path= Test_CLITestProviderClass
 
@@ -759,6 +1040,9 @@ instance of 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;
@@ -799,9 +1083,6 @@ arrayReal64 = {4.0000000000000000e+00, 1.2800000000000000e+02, 2.400000000000000
 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"
@@ -865,6 +1146,15 @@ instance of Test_CLITestProviderClass
 {
 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;
@@ -905,15 +1195,6 @@ arrayReal64 = {4.0000000000000000e+00, 1.2800000000000000e+02, 2.400000000000000
 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.
@@ -925,6 +1206,75 @@ Failed associators count test. Expected= 10 Received= 1
 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
index c5502159d28c507e5a0091f0bf36945547ec548a..4d162def22b84d69e863cf9f13c2b860321f29e2 100644 (file)
@@ -1,4 +1,8 @@
-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