template class Poco::Expire
Overview
Decorator for AbstractDelegate adding automatic expiration of registrations to AbstractDelegate ‘s. More…
#include <Expire.h> template <class TArgs> class Expire: public Poco::AbstractDelegate { public: // construction Expire( const AbstractDelegate<TArgs>& p, Timestamp::TimeDiff expireMillisecs ); Expire(const Expire& expire); // methods Expire& operator=(const Expire& expire); virtual bool notify( const void* sender, TArgs& arguments ); virtual bool equals(const AbstractDelegate<TArgs>& other) const; virtual AbstractDelegate<TArgs>* clone() const; virtual void disable(); virtual const AbstractDelegate<TArgs>* unwrap() const; protected: // fields AbstractDelegate<TArgs>* _pDelegate; Timestamp::TimeDiff _expire; Timestamp _creationTime; // methods bool expired() const; };
Inherited Members
public: // methods virtual bool notify( const void* sender, TArgs& arguments ) = 0; virtual bool equals(const AbstractDelegate& other) const = 0; virtual AbstractDelegate* clone() const = 0; virtual void disable() = 0; virtual const AbstractDelegate* unwrap() const;
Detailed Documentation
Decorator for AbstractDelegate adding automatic expiration of registrations to AbstractDelegate ‘s.
Methods
virtual bool notify( const void* sender, TArgs& arguments )
Invokes the delegate’s callback function.
Returns true if successful, or false if the delegate has been disabled or has expired.
virtual bool equals(const AbstractDelegate<TArgs>& other) const
Compares the AbstractDelegate with the other one for equality.
virtual AbstractDelegate<TArgs>* clone() const
Returns a deep copy of the AbstractDelegate.
virtual void disable()
Disables the delegate, which is done prior to removal.
virtual const AbstractDelegate<TArgs>* unwrap() const
Returns the unwrapped delegate.
Must be overridden by decorators like Expire.