(file) Return to BasicProviderManagerRouter.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / ProviderManager2 / Attic

Diff for /pegasus/src/Pegasus/ProviderManager2/Attic/BasicProviderManagerRouter.cpp between version 1.23 and 1.24

version 1.23, 2005/04/19 11:11:14 version 1.24, 2005/04/29 18:45:50
Line 44 
Line 44 
 #include <Pegasus/Common/OperationContextInternal.h> #include <Pegasus/Common/OperationContextInternal.h>
 #include <Pegasus/Common/CIMMessage.h> #include <Pegasus/Common/CIMMessage.h>
 #include <Pegasus/Common/Tracer.h> #include <Pegasus/Common/Tracer.h>
   #include <Pegasus/Common/Logger.h>
 #include <Pegasus/Common/FileSystem.h> #include <Pegasus/Common/FileSystem.h>
 #include <Pegasus/Config/ConfigManager.h> #include <Pegasus/Config/ConfigManager.h>
 #include <Pegasus/ProviderManager2/OperationResponseHandler.h> #include <Pegasus/ProviderManager2/OperationResponseHandler.h>
Line 99 
Line 100 
         _interfaceName = interfaceName;         _interfaceName = interfaceName;
  
         _module = ProviderManagerModule(_physicalName);         _module = ProviderManagerModule(_physicalName);
         _module.load();          Boolean moduleLoaded = _module.load();
  
           if (moduleLoaded)
           {
         _manager = _module.getProviderManager(_logicalName);         _manager = _module.getProviderManager(_logicalName);
         PEGASUS_ASSERT(_manager != 0);          }
           else
           {
               PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL2,
                   "ProviderManagerModule load failed.");
           }
   
           if (_manager == 0)
           {
               PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL2,
                   "Failed to load ProviderManager \"" + _physicalName + "\".");
   
               Logger::put_l(
                   Logger::ERROR_LOG, System::CIMSERVER, Logger::SEVERE,
                   "ProviderManager.BasicProviderManagerRouter."
                       "PROVIDERMANAGER_LOAD_FAILED",
                   "Failed to load the Provider Manager for interface type \"$0\""
                       " from library \"$1\".",
                   _interfaceName, _physicalName);
   
               throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED, MessageLoaderParms(
                   "ProviderManager.BasicProviderManagerRouter."
                       "PROVIDERMANAGER_LOAD_FAILED",
                   "Failed to load the Provider Manager for interface type \"$0\""
                       " from library \"$1\".",
                   _interfaceName, _physicalName));
           }
  
         _manager->setIndicationCallback(indicationCallback);         _manager->setIndicationCallback(indicationCallback);
  
Line 301 
Line 330 
             providerModule.findProperty("InterfaceType")).getValue();             providerModule.findProperty("InterfaceType")).getValue();
         itValue.get(interfaceType);         itValue.get(interfaceType);
  
           ProviderManager* pm = 0;
           Boolean gotError = false;
           try
           {
         // Look up the appropriate ProviderManager by InterfaceType         // Look up the appropriate ProviderManager by InterfaceType
         ProviderManager* pm = _lookupProviderManager(interfaceType);              pm = _lookupProviderManager(interfaceType);
         if (remoteNameSpaceRequest && !pm->supportsRemoteNameSpaces()) {          }
           catch (const CIMException& e)
           {
               CIMResponseMessage* cimResponse = request->buildResponse();
               cimResponse->cimException = e;
               response = cimResponse;
               gotError = true;
           }
   
           if (remoteNameSpaceRequest && !pm->supportsRemoteNameSpaces())
           {
            CIMResponseMessage* resp = request->buildResponse();            CIMResponseMessage* resp = request->buildResponse();
            resp->cimException = PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED,            resp->cimException = PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED,
                "Remote Namespace operations not supported for interface type "+interfaceType);                  "Remote Namespace operations not supported for interface type "
                       + interfaceType);
            response = resp;            response = resp;
               gotError = true;
           }
   
           if (!gotError)
           {
               response = pm->processMessage(request);
         }         }
         else response = pm->processMessage(request);  
     }     }
  
     // preserve message key     // preserve message key


Legend:
Removed from v.1.23  
changed lines
  Added in v.1.24

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2