version 1.22, 2007/09/10 08:56:32
|
version 1.22.4.2, 2008/12/04 10:29:11
|
|
|
| |
// typedef CMPIProviderFacade Base; | // typedef CMPIProviderFacade Base; |
| |
|
CMPIProvider( |
|
const String & name, |
|
CMPIProviderModule *module, |
|
ProviderVector *mv); |
|
|
virtual ~CMPIProvider(); | virtual ~CMPIProvider(); |
| |
virtual void initialize(CIMOMHandle & cimom); | virtual void initialize(CIMOMHandle & cimom); |
|
|
| |
Status getStatus(); | Status getStatus(); |
String getName() const; | String getName() const; |
|
String getNameWithType() const; |
| |
void reset(); | void reset(); |
| |
|
|
*/ | */ |
CIMInstance getProviderInstance (); | CIMInstance getProviderInstance (); |
| |
|
void incCurrentOperations(); |
|
void decCurrentOperations(); |
|
int getCurrentOperations(); |
|
|
|
CIMOMHandle *getCIMOMHandle(); |
|
CMPI_Broker *getBroker(); |
|
|
|
CMPIInstanceMI *getInstMI(); |
|
CMPIMethodMI *getMethMI(); |
|
CMPIAssociationMI *getAssocMI(); |
|
CMPIPropertyMI *getPropMI(); |
|
CMPIIndicationMI *getIndMI(); |
|
|
|
CMPIProviderModule *getModule(); |
|
Uint32 getQuantum(); |
|
void setQuantum(Uint32 quantum); |
|
Mutex &getStatusMutex(); |
|
|
|
void set( |
|
CMPIProviderModule *&module, |
|
ProviderVector base, |
|
CIMOMHandle *&cimomHandle); |
|
|
protected: | protected: |
String _location; | String _location; |
Status _status; | Status _status; |
CMPIProviderModule *_module; | CMPIProviderModule *_module; |
ProviderVector miVector; |
ProviderVector _miVector; |
CMPI_Broker broker; |
CMPI_Broker _broker; |
CMPIrc unloadStatus; | CMPIrc unloadStatus; |
| |
private: | private: |
virtual void _terminate(Boolean term); | virtual void _terminate(Boolean term); |
CMPIProvider( |
|
const String & name, |
|
CMPIProviderModule *module, |
|
ProviderVector *mv); |
|
| |
static void initialize( | static void initialize( |
CIMOMHandle & cimom, | CIMOMHandle & cimom, |
|
|
*/ | */ |
void waitUntilThreadsDone(); | void waitUntilThreadsDone(); |
| |
void set( |
|
CMPIProviderModule *&module, |
|
ProviderVector base, |
|
CIMOMHandle *&cimomHandle); |
|
|
|
friend class CMPILocalProviderManager; |
|
friend class CMPIProviderManager; |
|
class OpProviderHolder; | class OpProviderHolder; |
friend class OpProviderHolder; |
|
CIMOMHandle *_cimom_handle; | CIMOMHandle *_cimom_handle; |
String _name; | String _name; |
AtomicInt _no_unload; | AtomicInt _no_unload; |
Uint32 _quantum; | Uint32 _quantum; |
AtomicInt _current_operations; | AtomicInt _current_operations; |
Mutex _statusMutex; | Mutex _statusMutex; |
|
Mutex _removeThreadMutex; |
| |
struct timeval _idleTime; | struct timeval _idleTime; |
Mutex _idleTimeMutex; | Mutex _idleTimeMutex; |
|
|
generated the indication accepted a matching subscription. | generated the indication accepted a matching subscription. |
*/ | */ |
CIMInstance _providerInstance; | CIMInstance _providerInstance; |
//}; |
}; |
| |
| |
// | // |
|
|
{ | { |
return(*_provider); | return(*_provider); |
} | } |
|
|
OpProviderHolder& operator=( const OpProviderHolder& x ) | OpProviderHolder& operator=( const OpProviderHolder& x ) |
{ | { |
if (this == &x) | if (this == &x) |
|
{ |
return(*this); | return(*this); |
|
} |
SetProvider( x._provider ); | SetProvider( x._provider ); |
return(*this); | return(*this); |
} | } |
|
|
if (p) | if (p) |
{ | { |
_provider = p; | _provider = p; |
_provider->_current_operations++; |
_provider->incCurrentOperations(); |
} | } |
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
} | } |
|
|
"OpProviderHolder::UnSetProvider()"); | "OpProviderHolder::UnSetProvider()"); |
if (_provider) | if (_provider) |
{ | { |
_provider->_current_operations--; |
_provider->decCurrentOperations(); |
_provider = NULL; | _provider = NULL; |
} | } |
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
} | } |
}; | }; |
}; |
|
| |
PEGASUS_NAMESPACE_END | PEGASUS_NAMESPACE_END |
| |