version 1.29, 2002/09/27 18:49:44
|
version 1.29.2.1, 2002/10/25 21:14:45
|
|
|
//%////-*-c++-*-//////////////////////////////////////////////////////////////// |
//%///////////////////////////////////////////////////////////////////////////// |
// | // |
// Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM, | // Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM, |
// The Open Group, Tivoli Systems | // The Open Group, Tivoli Systems |
|
|
// Yi Zhou, Hewlett-Packard Company(yi_zhou@hp.com) | // Yi Zhou, Hewlett-Packard Company(yi_zhou@hp.com) |
// Jenny Yu, Hewlett-Packard Company (jenny_yu@hp.com) | // Jenny Yu, Hewlett-Packard Company (jenny_yu@hp.com) |
// Nitin Upasani, Hewlett-Packard Company (Nitin_Upasani@hp.com) | // Nitin Upasani, Hewlett-Packard Company (Nitin_Upasani@hp.com) |
// Carol Ann Krug Graves, Hewlett-Packard Company |
|
// (carolann_graves@hp.com) |
|
// | // |
//%///////////////////////////////////////////////////////////////////////////// | //%///////////////////////////////////////////////////////////////////////////// |
| |
|
|
#include <Pegasus/Common/Pair.h> | #include <Pegasus/Common/Pair.h> |
#include <Pegasus/Common/Triad.h> | #include <Pegasus/Common/Triad.h> |
#include <Pegasus/Common/Thread.h> | #include <Pegasus/Common/Thread.h> |
|
|
#include <Pegasus/ProviderManager/SafeQueue.h> |
|
#include <Pegasus/Server/Linkage.h> |
|
#include <Pegasus/ProviderManager/OperationResponseHandler.h> |
|
#include <Pegasus/Common/HashTable.h> | #include <Pegasus/Common/HashTable.h> |
|
#include <Pegasus/ProviderManager/OperationResponseHandler.h> |
|
#include <Pegasus/ProviderManager/SafeQueue.h> |
#include <Pegasus/ProviderManager/Provider.h> | #include <Pegasus/ProviderManager/Provider.h> |
#include <Pegasus/Common/Constants.h> |
|
PEGASUS_NAMESPACE_BEGIN | PEGASUS_NAMESPACE_BEGIN |
| |
|
|
|
|
typedef HashTable<String, | typedef HashTable<String, |
EnableIndicationsResponseHandler *, |
OperationResponseHandler<CIMIndication> *, |
EqualFunc<String>, | EqualFunc<String>, |
HashFunc<String> > IndicationResponseTable; | HashFunc<String> > IndicationResponseTable; |
| |
|
|
public: | public: |
ProviderManagerService(ProviderRegistrationManager * providerRegistrationManager); | ProviderManagerService(ProviderRegistrationManager * providerRegistrationManager); |
virtual ~ProviderManagerService(void); | virtual ~ProviderManagerService(void); |
|
static ProviderManager *getProviderManager(void); |
|
|
| |
protected: | protected: |
virtual Boolean messageOK(const Message * message); | virtual Boolean messageOK(const Message * message); |
|
|
| |
virtual Triad<String, String, String> _lookupMethodProviderForClass( | virtual Triad<String, String, String> _lookupMethodProviderForClass( |
const CIMObjectPath & objectPath, | const CIMObjectPath & objectPath, |
const CIMName & methodName); |
const String & methodName); |
| |
virtual void _lookupProviderForAssocClass( | virtual void _lookupProviderForAssocClass( |
const CIMObjectPath & objectPath, const String& assocClassName, | const CIMObjectPath & objectPath, const String& assocClassName, |
|
|
*/ | */ |
| |
| |
EnableIndicationsResponseHandler * _removeEntry( |
OperationResponseHandler<CIMIndication> * _removeEntry( |
const String & key); | const String & key); |
| |
| |
|
|
//SafeQueue<Message *> _outgoingQueue; | //SafeQueue<Message *> _outgoingQueue; |
| |
ProviderRegistrationManager * _providerRegistrationManager; | ProviderRegistrationManager * _providerRegistrationManager; |
|
|
/** Table holding indication response handlers, one for each provider | /** Table holding indication response handlers, one for each provider |
that has indications enabled. | that has indications enabled. |
*/ | */ |
|
|
IndicationResponseTable _responseTable; | IndicationResponseTable _responseTable; |
|
|
}; | }; |
| |
PEGASUS_NAMESPACE_END | PEGASUS_NAMESPACE_END |