(file) Return to ModuleController.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

Diff for /pegasus/src/Pegasus/Common/ModuleController.h between version 1.32 and 1.36

version 1.32, 2002/07/26 20:01:19 version 1.36, 2003/10/22 14:26:03
Line 1 
Line 1 
 //%///////////-*-c++-*-/////////////////////////////////////////////////////////  //%2003////////////////////////////////////////////////////////////////////////
 // //
 // Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM,  // Copyright (c) 2000, 2001, 2002  BMC Software, Hewlett-Packard Development
 // 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.;
   // IBM Corp.; EMC 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 33 
Line 35 
 #include <Pegasus/Common/Config.h> #include <Pegasus/Common/Config.h>
 #include <Pegasus/Common/Constants.h> #include <Pegasus/Common/Constants.h>
 #include <Pegasus/Common/Message.h> #include <Pegasus/Common/Message.h>
 #include <Pegasus/Common/Exception.h>  #include <Pegasus/Common/InternalException.h>
 #include <Pegasus/Common/IPC.h> #include <Pegasus/Common/IPC.h>
 #include <Pegasus/Common/Thread.h> #include <Pegasus/Common/Thread.h>
 #include <Pegasus/Common/AsyncOpNode.h> #include <Pegasus/Common/AsyncOpNode.h>
Line 304 
Line 306 
                                                 void (*shutdown_notify)(Uint32, void *),                                                 void (*shutdown_notify)(Uint32, void *),
                                                 pegasus_module **instance = NULL)                                                 pegasus_module **instance = NULL)
  
          throw(AlreadyExists, IncompatibleTypes);           throw(AlreadyExistsException, IncompatibleTypesException);
  
       Boolean deregister_module(const String & module_name)       Boolean deregister_module(const String & module_name)
          throw(Permission);          throw(Permission);
Line 368 
Line 370 
  
       static ModuleController & get_client_handle(const pegasus_identity & id,       static ModuleController & get_client_handle(const pegasus_identity & id,
                                                   client_handle **handle)                                                   client_handle **handle)
          throw(IncompatibleTypes);           throw(IncompatibleTypesException);
  
       static ModuleController & get_client_handle(const char *controller,       static ModuleController & get_client_handle(const char *controller,
                                                   const pegasus_identity & id,                                                   const pegasus_identity & id,
                                                   client_handle **handle)                                                   client_handle **handle)
          throw(IncompatibleTypes);           throw(IncompatibleTypesException);
  
  
       void return_client_handle(client_handle *handle);       void return_client_handle(client_handle *handle);
Line 438 
Line 440 
       virtual void _handle_async_callback(AsyncOpNode *op);       virtual void _handle_async_callback(AsyncOpNode *op);
  
    private:    private:
   
   
         class _module_lock
         {
            public:
               _module_lock(DQueue<pegasus_module> * list)
                  :_list(list)
               {
                  _list->lock();
   
               }
               ~_module_lock(void)
               {
                  _list->unlock();
               }
   
   
            private:
               _module_lock();
               DQueue<pegasus_module> * _list;
         };
   
   
   
       static void _async_handleEnqueue(AsyncOpNode *h, MessageQueue *q, void *parm);       static void _async_handleEnqueue(AsyncOpNode *h, MessageQueue *q, void *parm);
       DQueue<pegasus_module> _modules;       DQueue<pegasus_module> _modules;
       pegasus_module _internal_module;       pegasus_module _internal_module;
Line 460 
Line 486 
  
  
  
   
   
 PEGASUS_NAMESPACE_END PEGASUS_NAMESPACE_END
  
  


Legend:
Removed from v.1.32  
changed lines
  Added in v.1.36

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2