void WQLFilterRep::enumInstances( const String& ns, const String& className, CIMInstanceResultHandlerIFC& result, EDeepFlag deep, ELocalOnlyFlag localOnly, EIncludeQualifiersFlag includeQualifiers, EIncludeClassOriginFlag includeClassOrigin, const StringArray* propertyList, EEnumSubclassesFlag enumSubclasses, OperationContext& context) { CIMName superClassName = m_inst.getClassName(); while (superClassName != CIMName()) { if (superClassName == className) { // Don't need to do correct localOnly & deep processing. //result.handleInstance(m_inst.clone(localOnly, includeQualifiers, // includeClassOrigin, propertyList)); // This is more efficient result.handle(m_inst); break; } superClassName = m_pCIMServer->getClass(ns, superClassName.toString(), E_NOT_LOCAL_ONLY, E_INCLUDE_QUALIFIERS, E_INCLUDE_CLASS_ORIGIN, NULL, context).getSuperClass(); } }