(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.34

version 1.18, 2004/05/18 23:58:41 version 1.34, 2006/05/19 17:38:18
Line 1 
Line 1 
 //%2003////////////////////////////////////////////////////////////////////////  //%2006////////////////////////////////////////////////////////////////////////
 // //
 // 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.
   // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
   // EMC Corporation; VERITAS Software Corporation; The Open Group.
   // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
   // EMC Corporation; Symantec 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 66 
  
 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 responseChunkCallback(
           CIMRequestMessage* request, CIMResponseMessage* response);
   
       /**
           Callback function to be called upon detection of failure of a
           provider module.
        */
       static void providerModuleFailureCallback (const String & moduleName,
           const String & userName, Uint16);
  
     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,          const Array<Uint16>& removeStatus,
         Uint16 toStatus);          const Array<Uint16>& appendStatus);
   
       static ProviderManagerService* providerManagerService;
   
       CIMRepository* _repository;
  
 private:  
     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.34

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2