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

Diff for /pegasus/src/Pegasus/ProviderManager2/Attic/ProviderManagerService.h between version 1.18 and 1.27

version 1.18, 2004/05/18 23:58:41 version 1.27, 2005/01/26 23:09:09
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 60 
Line 62 
  
 class PEGASUS_PPM_LINKAGE ProviderManagerService : public MessageQueueService class PEGASUS_PPM_LINKAGE ProviderManagerService : public MessageQueueService
 { {
    friend class CMPIProviderManager;  
 public: public:
     static ProviderManagerService* providerManagerService;      ProviderManagerService(
           ProviderRegistrationManager* providerRegistrationManager,
     ProviderManagerService(void);  
     ProviderManagerService(ProviderRegistrationManager * providerRegistrationManager,  
                            CIMRepository * repository);                            CIMRepository * repository);
  
       virtual ~ProviderManagerService();
  
     virtual ~ProviderManagerService(void);      void unloadIdleProviders();
  
     // temp      static void indicationCallback(CIMProcessIndicationRequestMessage* request);
     void unload_idle_providers(void);      static void handleCimResponse(
           CIMRequestMessage& request, CIMResponseMessage& response);
  
     static void indicationCallback(  private:
         CIMProcessIndicationRequestMessage* request);      ProviderManagerService();
  
 protected:  
     virtual Boolean messageOK(const Message * message);     virtual Boolean messageOK(const Message * message);
     virtual void handleEnqueue(void);      virtual void handleEnqueue();
     virtual void handleEnqueue(Message * message);     virtual void handleEnqueue(Message * message);
  
     virtual void _handle_async_request(AsyncRequest * request);     virtual void _handle_async_request(AsyncRequest * request);
  
     static CIMRepository* _repository;  
   
 private:  
     //static PEGASUS_THREAD_RETURN PEGASUS_THREAD_CDECL handleServiceOperation(void * arg) throw();  
   
     //void handleStartService() thorw();  
     //void handleStopService() thorw();  
     //void handlePauseService() thorw();  
     //void handleResumeService() thorw();  
   
     static PEGASUS_THREAD_RETURN PEGASUS_THREAD_CDECL handleCimOperation(     static PEGASUS_THREAD_RETURN PEGASUS_THREAD_CDECL handleCimOperation(
         void * arg) throw();          void* arg) ;
  
     void handleCimRequest(AsyncOpNode *op, Message* message);     void handleCimRequest(AsyncOpNode *op, Message* message);
  
     ProviderIdContainer _getProviderIdContainer(      Message* _processMessage(CIMRequestMessage* request);
         const CIMRequestMessage* message);  
       static PEGASUS_THREAD_RETURN PEGASUS_THREAD_CDECL
           _unloadIdleProvidersHandler(void* arg) throw();
  
     void _updateProviderModuleStatus(     void _updateProviderModuleStatus(
         CIMInstance& providerModule,         CIMInstance& providerModule,
         Uint16 fromStatus,         Uint16 fromStatus,
         Uint16 toStatus);         Uint16 toStatus);
  
 private:      static ProviderManagerService* providerManagerService;
   
       CIMRepository* _repository;
   
     SafeQueue<AsyncOpNode *> _incomingQueue;     SafeQueue<AsyncOpNode *> _incomingQueue;
     SafeQueue<AsyncOpNode *> _outgoingQueue;     SafeQueue<AsyncOpNode *> _outgoingQueue;
  
     ProviderManagerRouter* _providerManagerRouter;      ProviderManagerRouter* _basicProviderManagerRouter;
       ProviderManagerRouter* _oopProviderManagerRouter;
  
     ProviderRegistrationManager* _providerRegistrationManager;     ProviderRegistrationManager* _providerRegistrationManager;
  
     static Uint32 _indicationServiceQueueId;     static Uint32 _indicationServiceQueueId;
   
       /**
           Indicates the number of threads currently attempting to unload idle
           providers.  This value is used to prevent multiple threads from
           unloading idle providers at the same time.
        */
       AtomicInt _unloadIdleProvidersBusy;
 }; };
  
 PEGASUS_NAMESPACE_END PEGASUS_NAMESPACE_END


Legend:
Removed from v.1.18  
changed lines
  Added in v.1.27

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2