Return to TimingClient.cpp CVS log | Up to [Pegasus] / pegasus / test / TestProviders / TimingTests |
File: [Pegasus] / pegasus / test / TestProviders / TimingTests / TimingClient.cpp
(download)
Revision: 1.1, Tue Feb 17 15:20:02 2004 UTC (20 years, 4 months ago) by s.soni Branch: MAIN CVS Tags: pegasus25BeforeLicenseUpdate, SLPPERFINST-root, SLPPERFINST-branch, RELEASE_2_4_FC_CANDIDATE_1, RELEASE_2_4_3, RELEASE_2_4_2, RELEASE_2_4_1-BETA3, RELEASE_2_4_1-BETA2, RELEASE_2_4_1-BETA1, RELEASE_2_4_1, RELEASE_2_4_0-RC3, RELEASE_2_4_0-RC2, RELEASE_2_4_0, RELEASE_2_4-root, RELEASE_2_4-branch, RELEASE_2_3_2-branch-freeze, PEP213_SIZE_OPTIMIZATIONS, MONITOR_CONSOLIDATION_2_5_BRANCH, IBM_241_April1405, CQL_2_5_BRANCH, CHUNKTESTDONE_PEP140 Test Provider for pegasus as explained in PEP#121 |
#include <unistd.h> #include <sys/types.h> #include <cassert> #include <Pegasus/Common/Config.h> #include <Pegasus/Client/CIMClient.h> #include <Pegasus/Common/CIMName.h> #include <Pegasus/Common/XmlWriter.h> #include <Pegasus/Common/MofWriter.h> #include <Pegasus/Common/OptionManager.h> PEGASUS_USING_PEGASUS; PEGASUS_USING_STD; const CIMNamespaceName NAMESPACE = CIMNamespaceName ("root/SampleProvider"); const CIMNamespaceName NAMESPACE1 = CIMNamespaceName ("root/PG_InterOp"); const String CLASSONE = "TimeOne"; const String CLASSTWO = "TimeTwo"; static void EnumerateClassesTiming(CIMClient client, String BaseClassName) { try { Boolean deepInheritance = true; CIMName className; Array<CIMName> classNames = client.enumerateClassNames( NAMESPACE, CIMName(BaseClassName), false); cout << classNames.size() << " ClassNames" << endl; for (Uint32 i = 0, n = classNames.size(); i < n; i++) cout << classNames[i] << endl; } catch(Exception& e) { cout << "Error Classes Enumeration:" << endl; cout << e.getMessage() << endl; } } static void EnumerateInstancesTiming(CIMClient client, String ClassName) { Boolean localOnly = false; Boolean deepInheritance = false; Boolean includeQualifiers = false; Boolean includeClassOrigin = false; CIMClass c1=client.getClass(NAMESPACE,CIMName(ClassName), false); cout << "Class = " << c1.getClassName() << endl; cout << "Fetching Instances for" << c1.getClassName() << endl; Array<CIMInstance> instanceNames; instanceNames = client.enumerateInstances (NAMESPACE, ClassName, deepInheritance, localOnly, includeQualifiers, includeClassOrigin); cout << "instanceNames.size() = " << instanceNames.size() << endl; for (Uint32 i = 0; i < instanceNames.size(); i++) { CIMInstance inst1 = instanceNames[i]; XmlWriter::printInstanceElement(inst1, cout); } } int main(int argc, char** argv) { pid_t pid; try { CIMClient client; client.connect("localhost", 5988, "", ""); if ((pid = fork()) < 0) { cout << "Fork Error\n" << endl; exit(0); } else if (pid == 0) { // child sleep(10); EnumerateInstancesTiming(client, CLASSONE); _exit(0); } // parent sleep(10); EnumerateInstancesTiming(client, CLASSTWO); sleep(5); EnumerateClassesTiming(client, "TimingSampleClass"); } catch(Exception& e) { PEGASUS_STD(cerr) << "Error: " << e.getMessage() << PEGASUS_STD(endl); exit(1); } return 0; }
No CVS admin address has been configured |
Powered by ViewCVS 0.9.2 |