OW_NAMESPACE::PollingManagerThread::TriggerRunner Class Reference

Inheritance diagram for OW_NAMESPACE::PollingManagerThread::TriggerRunner:

Inheritance graph
[legend]
Collaboration diagram for OW_NAMESPACE::PollingManagerThread::TriggerRunner:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TriggerRunner (PollingManagerThread *svr, ServiceEnvironmentIFCRef env)
virtual void run ()

Public Attributes

PolledProviderIFCRef m_itp
time_t m_nextPoll
bool m_isRunning
Int32 m_pollInterval
PollingManagerThreadm_pollMan
ServiceEnvironmentIFCRef m_env
LoggerRef m_logger

Private Member Functions

void doCooperativeCancel ()
 This function is available for subclasses to override if they wish to be notified when a cooperative cancel is being invoked on the thread.
void doDefinitiveCancel ()
 See the documentation for doCooperativeCancel().

Detailed Description

Definition at line 90 of file OW_PollingManager.hpp.


Constructor & Destructor Documentation

OW_NAMESPACE::PollingManagerThread::TriggerRunner::TriggerRunner PollingManagerThread svr,
ServiceEnvironmentIFCRef  env
 

Definition at line 413 of file OW_PollingManager.cpp.


Member Function Documentation

void OW_NAMESPACE::PollingManagerThread::TriggerRunner::doCooperativeCancel  )  [private, virtual]
 

This function is available for subclasses to override if they wish to be notified when a cooperative cancel is being invoked on the thread.

Note that this function will be invoked in a separate thread. For instance, a thread may use this function to write to a pipe or socket, if Thread::run() is blocked in select(), it can be unblocked and instructed to exit.

It is also possible for an individual thread to override the cancellation request, if it knows that cancellation at this time may crash the system or cause a deadlock. To do this, the thread should throw an CancellationDeniedException. Note that threads are usually only cancelled in the event of a system shutdown or restart, so a thread should make a best effort to actually shutdown.

Exceptions:
CancellationDeniedException 

Reimplemented from OW_NAMESPACE::Runnable.

Definition at line 469 of file OW_PollingManager.cpp.

References m_itp.

void OW_NAMESPACE::PollingManagerThread::TriggerRunner::doDefinitiveCancel  )  [private, virtual]
 

See the documentation for doCooperativeCancel().

When definitiveCancel() is called on a thread, first doCooperativeCancel() will be called, and then doDefinitiveCancel() will be called.

Exceptions:
CancellationDeniedException 

Reimplemented from OW_NAMESPACE::Runnable.

Definition at line 476 of file OW_PollingManager.cpp.

References m_itp.

void OW_NAMESPACE::PollingManagerThread::TriggerRunner::run  )  [virtual]
 

Implements OW_NAMESPACE::Runnable.

Definition at line 427 of file OW_PollingManager.cpp.

References OW_NAMESPACE::createProvEnvRef(), OW_NAMESPACE::DateTime::get(), m_env, m_isRunning, m_itp, m_logger, m_nextPoll, m_pollInterval, m_pollMan, OW_NAMESPACE::PollingManagerThread::m_triggerCondition, OW_NAMESPACE::PollingManagerThread::m_triggerGuard, OW_NAMESPACE::Condition::notifyOne(), OW_LOG_ERROR, safe_add(), and OW_NAMESPACE::DateTime::setToCurrent().


Member Data Documentation

ServiceEnvironmentIFCRef OW_NAMESPACE::PollingManagerThread::TriggerRunner::m_env
 

Definition at line 101 of file OW_PollingManager.hpp.

Referenced by run().

bool OW_NAMESPACE::PollingManagerThread::TriggerRunner::m_isRunning
 

Definition at line 98 of file OW_PollingManager.hpp.

Referenced by run().

PolledProviderIFCRef OW_NAMESPACE::PollingManagerThread::TriggerRunner::m_itp
 

Definition at line 96 of file OW_PollingManager.hpp.

Referenced by doCooperativeCancel(), doDefinitiveCancel(), and run().

LoggerRef OW_NAMESPACE::PollingManagerThread::TriggerRunner::m_logger
 

Definition at line 102 of file OW_PollingManager.hpp.

Referenced by run().

time_t OW_NAMESPACE::PollingManagerThread::TriggerRunner::m_nextPoll
 

Definition at line 97 of file OW_PollingManager.hpp.

Referenced by run().

Int32 OW_NAMESPACE::PollingManagerThread::TriggerRunner::m_pollInterval
 

Definition at line 99 of file OW_PollingManager.hpp.

Referenced by run().

PollingManagerThread* OW_NAMESPACE::PollingManagerThread::TriggerRunner::m_pollMan
 

Definition at line 100 of file OW_PollingManager.hpp.

Referenced by run().


The documentation for this class was generated from the following files:
Generated on Thu Feb 9 09:12:54 2006 for openwbem by  doxygen 1.4.6