📄 cimsub.cpp
字号:
//void _createCimsubEmailTests(CIMClient & client, String& qlang){ CIMObjectPath path; String query; // // Create persistent email handler // String mailAddr1 = "foo@x.x.x"; // // Create filter that selects all properties from CIM_ProcessIndication // CIMInstance emailfilter01(PEGASUS_CLASSNAME_INDFILTER); query = "SELECT * FROM CIM_ProcessIndication"; _addStringProperty(emailfilter01, "SystemCreationClassName", System::getSystemCreationClassName()); _addStringProperty(emailfilter01, "SystemName", System::getFullyQualifiedHostName()); _addStringProperty(emailfilter01, PEGASUS_PROPERTYNAME_CREATIONCLASSNAME.getString(), PEGASUS_CLASSNAME_INDFILTER.getString()); _addStringProperty(emailfilter01, PEGASUS_PROPERTYNAME_NAME.getString(), "EmailFilter01"); _addStringProperty(emailfilter01, "SourceNamespace", SOURCENAMESPACE.getString()); _addStringProperty(emailfilter01, PEGASUS_PROPERTYNAME_QUERY.getString(), query); _addStringProperty(emailfilter01, "QueryLanguage", qlang); path = client.createInstance(NAMESPACE, emailfilter01); CIMInstance emailHandler01(PEGASUS_CLASSNAME_LSTNRDST_EMAIL); _addStringProperty(emailHandler01, "SystemCreationClassName", System::getSystemCreationClassName()); _addStringProperty(emailHandler01, "SystemName", System::getFullyQualifiedHostName()); _addStringProperty(emailHandler01, PEGASUS_PROPERTYNAME_CREATIONCLASSNAME.getString(), PEGASUS_CLASSNAME_LSTNRDST_EMAIL.getString()); _addStringProperty(emailHandler01, PEGASUS_PROPERTYNAME_NAME.getString(), "EmailHandler01"); _addUint16Property(emailHandler01, PEGASUS_PROPERTYNAME_PERSISTENCETYPE.getString(), PERSISTENCE_PERMANENT); _addStringProperty(emailHandler01, "OtherPersistenceType", String::EMPTY, true); _addStringProperty(emailHandler01, PEGASUS_PROPERTYNAME_LSTNRDST_MAILTO.getString(), mailAddr1, false, true ); _addStringProperty(emailHandler01, PEGASUS_PROPERTYNAME_LSTNRDST_MAILCC.getString(), "fooCC@x.x.x", false, true); _addStringProperty(emailHandler01, PEGASUS_PROPERTYNAME_LSTNRDST_MAILSUBJECT.getString(), "cimsub test"); path = client.createInstance(NAMESPACE, emailHandler01); CIMInstance emailHandler02(PEGASUS_CLASSNAME_LSTNRDST_EMAIL); _addStringProperty(emailHandler02, "SystemCreationClassName", System::getSystemCreationClassName()); _addStringProperty(emailHandler02, "SystemName", System::getFullyQualifiedHostName()); _addStringProperty(emailHandler02, PEGASUS_PROPERTYNAME_CREATIONCLASSNAME.getString(), PEGASUS_CLASSNAME_LSTNRDST_EMAIL.getString()); _addStringProperty(emailHandler02, PEGASUS_PROPERTYNAME_NAME.getString(), "EmailHandler02"); _addUint16Property(emailHandler02, PEGASUS_PROPERTYNAME_PERSISTENCETYPE.getString(), PERSISTENCE_PERMANENT); _addStringProperty(emailHandler02, "OtherPersistenceType", String::EMPTY, true); _addStringProperty(emailHandler02, PEGASUS_PROPERTYNAME_LSTNRDST_MAILTO.getString(), mailAddr1, false, true ); _addStringProperty(emailHandler02, "MailSubject", "cimsub test"); path = client.createInstance(NAMESPACE, emailHandler02); // // Create subscription with email handler // CIMInstance subscription_email1 = _buildSubscriptionInstance( _buildFilterOrHandlerPath(PEGASUS_CLASSNAME_INDFILTER, "EmailFilter01", String::EMPTY,NAMESPACE), PEGASUS_CLASSNAME_LSTNRDST_EMAIL, _buildFilterOrHandlerPath(PEGASUS_CLASSNAME_LSTNRDST_EMAIL, "EmailHandler01")); path = client.createInstance (NAMESPACE, subscription_email1); // // Create subscription with email handler // CIMInstance subscription_email2 = _buildSubscriptionInstance( _buildFilterOrHandlerPath(PEGASUS_CLASSNAME_INDFILTER, "EmailFilter01", String::EMPTY,NAMESPACE), PEGASUS_CLASSNAME_LSTNRDST_EMAIL, _buildFilterOrHandlerPath(PEGASUS_CLASSNAME_LSTNRDST_EMAIL, "EmailHandler02")); path = client.createInstance(NAMESPACE, subscription_email2);}void _testEmail(CIMClient & client){ try { String wql("WQL"); String cql("DMTF:CQL"); _createCimsubEmailTests(client, wql); // _delete(client);#ifndef PEGASUS_DISABLE_CQL // _createCimsubEmailTests(client, cql); // _delete(client);#endif } catch (Exception & e) { cerr << "setup failed: " << e.getMessage() << endl; exit (-1); } cout << "+++++ setup completed successfully" << endl;}#endif//// NOTE: the cleanup command line option is provided to clean up the// repository in case the test fails and not all objects created by// the test were deleted// This method attempts to delete each object that could have been created by// this test and that still exists in the repository// Since the repository could contain none, any or all of the objects, any// exceptions thrown are ignored and this method continues to attempt to// delete the objects//void _cleanup(CIMClient & client){ // // Delete subscription instances // IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter00", PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler00");) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter01", PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler01");) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter02", PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler01");) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter03", PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler01");) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter04", PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler01");) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter05", PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler01");) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter06", PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler01");) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter07", PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler00");) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter01", PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler02");) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter01", PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler02p");) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter01", PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler02t");) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter01", PEGASUS_CLASSNAME_INDHANDLER_SNMP, "Handler03");)#ifdef PEGASUS_ENABLE_EMAIL_HANDLER IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "EmailFilter01", PEGASUS_CLASSNAME_LSTNRDST_EMAIL, "EmailHandler01", String::EMPTY, String::EMPTY, NAMESPACE, CIMNamespaceName (), NAMESPACE);) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "EmailFilter01", PEGASUS_CLASSNAME_LSTNRDST_EMAIL, "EmailHandler02", String::EMPTY, String::EMPTY, NAMESPACE, CIMNamespaceName (), NAMESPACE);)#endif#ifdef PEGASUS_ENABLE_SYSTEM_LOG_HANDLER IGNORE_EXCEPTION( _deleteSubscriptionInstance (client, "SyslogFilter01", PEGASUS_CLASSNAME_LSTNRDST_SYSTEM_LOG, "SyslogHandler01", String::EMPTY, String::EMPTY, NAMESPACE, CIMNamespaceName (), NAMESPACE);)#endif IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter01", PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination01t");) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter01", PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination01");) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter08", PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination02", System::getFullyQualifiedHostName (), System::getFullyQualifiedHostName (), NAMESPACE, NAMESPACE, NAMESPACE);) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter09", PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination03", String::EMPTY, String::EMPTY, NAMESPACE, NAMESPACE, NAMESPACE);) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter10", PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination04", System::getFullyQualifiedHostName (), System::getFullyQualifiedHostName (), NAMESPACE, NAMESPACE, NAMESPACE);) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter11", PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination05", String::EMPTY, String::EMPTY, NAMESPACE1, NAMESPACE2, NAMESPACE3);) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter11", PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination07", String::EMPTY, String::EMPTY, NAMESPACE1, NAMESPACE2, NAMESPACE3);) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter12", PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination06", String::EMPTY, String::EMPTY, NAMESPACE1, NAMESPACE2, NAMESPACE3);) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter12", PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination08", String::EMPTY, String::EMPTY, NAMESPACE1, NAMESPACE2, NAMESPACE);) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter11", PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination05", String::EMPTY, String::EMPTY, NAMESPACE2, NAMESPACE1, NAMESPACE3);) IGNORE_EXCEPTION(_deleteSubscriptionInstance (client, "Filter15", PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "Handler15", String::EMPTY, String::EMPTY, NAMESPACE, NAMESPACE, NAMESPACE);) // // Delete handler instances // IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler00");) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler01");) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler02");) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler02t");) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_INDHANDLER_CIMXML, "Handler02p");) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_INDHANDLER_SNMP, "Handler03");) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination01");) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination01t");) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination02");) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination03");) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination04");) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination05", NAMESPACE1);) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination05", NAMESPACE2);) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination06", NAMESPACE2);) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination06", NAMESPACE3);) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination07", NAMESPACE2);) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "ListenerDestination08", NAMESPACE2);) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_CIMXML, "Handler15", NAMESPACE);) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_EMAIL, "EmailHandler01", NAMESPACE);) IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_EMAIL, "EmailHandler02", NAMESPACE);)#ifdef PEGASUS_ENABLE_SYSTEM_LOG_HANDLER IGNORE_EXCEPTION(_deleteHandlerInstance(client, PEGASUS_CLASSNAME_LSTNRDST_SYSTEM_LOG, "SyslogHandler01", NAMESPACE);)#endif // // Delete filter instances // IGNORE_EXCEPTION(_deleteFilterInstance(client, "Filter00");) IGNORE_EXCEPTION(_deleteFilterInstance(client, "Filter01");) IGNORE_EXCEPTION(_deleteFilterInstance(client, "EmailFilter01");) IGNORE_EXCEPTION(_deleteFilterInstance(client, "SyslogFilter01");) IGNORE_EXCEPTION(_deleteFilterInstance(client, "Filter02");) IGNORE_EXCEPTION(_deleteFilterInstance(client, "Filter03");) IGNORE_EXCEPTION(_deleteFilterInstance(client, "Filter
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -