(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.6 and 1.14

version 1.6, 2004/06/16 17:18:21 version 1.14, 2004/10/17 20:40:00
Line 1 
Line 1 
 //%2003////////////////////////////////////////////////////////////////////////  //%2004////////////////////////////////////////////////////////////////////////
 // //
 // Copyright (c) 2000, 2001, 2002  BMC Software, Hewlett-Packard Development  // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
 // Company, L. P., IBM Corp., The Open Group, Tivoli Systems.  // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
 // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L. P.; // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L. P.;
 // IBM Corp.; EMC Corporation, The Open Group. // IBM Corp.; EMC Corporation, The Open Group.
   // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
   // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
 // //
 // Permission is hereby granted, free of charge, to any person obtaining a copy // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to // of this software and associated documentation files (the "Software"), to
Line 26 
Line 28 
 // Author: Chip Vincent (cvincent@us.ibm.com) // Author: Chip Vincent (cvincent@us.ibm.com)
 //         Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) //         Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)
 // //
 // Modified By:  // Modified By: Seema Gupta(gseema@in.ibm.com) for PEP135
 // //
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
  
 #include "BasicProviderManagerRouter.h" #include "BasicProviderManagerRouter.h"
  
 #include <Pegasus/Common/Config.h> #include <Pegasus/Common/Config.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/FileSystem.h>
   #include <Pegasus/Config/ConfigManager.h>
 #include <Pegasus/ProviderManager2/OperationResponseHandler.h> #include <Pegasus/ProviderManager2/OperationResponseHandler.h>
 #include <Pegasus/ProviderManager2/ProviderManagerModule.h> #include <Pegasus/ProviderManager2/ProviderManagerModule.h>
 #include <Pegasus/ProviderManager2/ProviderManager.h> #include <Pegasus/ProviderManager2/ProviderManager.h>
Line 74 
Line 79 
         PEGASUS_INDICATION_CALLBACK indicationCallback)         PEGASUS_INDICATION_CALLBACK indicationCallback)
     : _manager(0)     : _manager(0)
     {     {
         _physicalName = ProviderManager::_resolvePhysicalName(physicalName);          _physicalName = ConfigManager::getHomedPath(PEGASUS_DEST_LIB_DIR) +
               String("/") + FileSystem::buildLibraryFileName(physicalName);
  
         _logicalName = logicalName;         _logicalName = logicalName;
         _interfaceName = interfaceName;         _interfaceName = interfaceName;
Line 176 
Line 182 
     PEGASUS_ASSERT(request != 0);     PEGASUS_ASSERT(request != 0);
  
     Message* response = 0;     Message* response = 0;
       Boolean remoteNameSpaceRequest=false;
  
     //     //
     // Retrieve the ProviderManager routing information     // Retrieve the ProviderManager routing information
Line 191 
Line 198 
         ProviderIdContainer pidc = (ProviderIdContainer)         ProviderIdContainer pidc = (ProviderIdContainer)
             request->operationContext.get(ProviderIdContainer::NAME);             request->operationContext.get(ProviderIdContainer::NAME);
         providerModule = pidc.getModule();         providerModule = pidc.getModule();
           remoteNameSpaceRequest=pidc.isRemoteNameSpace();
     }     }
     else if (dynamic_cast<CIMIndicationRequestMessage*>(request) != 0)     else if (dynamic_cast<CIMIndicationRequestMessage*>(request) != 0)
     {     {
         // Provider information is in CIMIndicationRequestMessage         // Provider information is in CIMIndicationRequestMessage
         CIMIndicationRequestMessage* indReq =         CIMIndicationRequestMessage* indReq =
             dynamic_cast<CIMIndicationRequestMessage*>(request);             dynamic_cast<CIMIndicationRequestMessage*>(request);
         providerModule = indReq->providerModule;                  ProviderIdContainer pidc = indReq->operationContext.get(ProviderIdContainer::NAME);
           providerModule = pidc.getModule();
     }     }
     else if (request->getType() == CIM_ENABLE_MODULE_REQUEST_MESSAGE)     else if (request->getType() == CIM_ENABLE_MODULE_REQUEST_MESSAGE)
     {     {
Line 264 
Line 273 
  
         // Look up the appropriate ProviderManager by InterfaceType         // Look up the appropriate ProviderManager by InterfaceType
         ProviderManager* pm = _lookupProviderManager(interfaceType);         ProviderManager* pm = _lookupProviderManager(interfaceType);
         response = pm->processMessage(request);          if (remoteNameSpaceRequest && !pm->supportsRemoteNameSpaces()) {
              CIMResponseMessage* resp = request->buildResponse();
              resp->cimException = PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED,
                  "Remote Namespace operations not supported for interface type "+interfaceType);
              response = resp;
           }
           else response = pm->processMessage(request);
     }     }
  
     // preserve message key     // preserve message key
Line 313 
Line 328 
         // another temporary solution for converting a generic file name into         // another temporary solution for converting a generic file name into
         // a file name useable by each platform.         // a file name useable by each platform.
  
 #if defined(ENABLE_DEFAULT_PROVIDER_MANAGER)  #if defined(PEGASUS_ENABLE_DEFAULT_PROVIDER_MANAGER)
         if (interfaceType == "C++Default")         if (interfaceType == "C++Default")
         {         {
             ProviderManagerContainer* pmc = new ProviderManagerContainer(             ProviderManagerContainer* pmc = new ProviderManagerContainer(
Line 324 
Line 339 
         }         }
 #endif #endif
  
 #if defined(ENABLE_CMPI_PROVIDER_MANAGER)  #if defined(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER)
         if (interfaceType == "CMPI")         if (interfaceType == "CMPI")
         {         {
             ProviderManagerContainer* pmc = new ProviderManagerContainer(             ProviderManagerContainer* pmc = new ProviderManagerContainer(
Line 334 
Line 349 
         }         }
 #endif #endif
  
 #if defined(ENABLE_JMPI_PROVIDER_MANAGER)  #if defined(PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER)
         if (interfaceType == "JMPI")         if (interfaceType == "JMPI")
         {         {
             ProviderManagerContainer* pmc = new ProviderManagerContainer(             ProviderManagerContainer* pmc = new ProviderManagerContainer(


Legend:
Removed from v.1.6  
changed lines
  Added in v.1.14

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2