ACE  6.3.3
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ACE_Pair_Caching_Utility< KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES > Class Template Reference

Defines a helper class for the Caching Strategies. More...

#include <Caching_Utility_T.h>

Inheritance diagram for ACE_Pair_Caching_Utility< KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES >:
Inheritance graph
[legend]
Collaboration diagram for ACE_Pair_Caching_Utility< KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES >:
Collaboration graph
[legend]

Public Types

typedef ACE_Cleanup_Strategy< KEY, VALUE, CONTAINER > CLEANUP_STRATEGY
 

Public Member Functions

 ACE_Pair_Caching_Utility (ACE_Cleanup_Strategy< KEY, VALUE, CONTAINER > *cleanup_strategy=0, bool delete_cleanup_strategy=false)
 Constructor. More...
 
 ~ACE_Pair_Caching_Utility (void)
 Destructor. More...
 
int clear_cache (CONTAINER &container, double purge_percent)
 

Protected Member Functions

void minimum (CONTAINER &container, KEY *&key_to_remove, VALUE *&value_to_remove)
 Find the entry with minimum caching attributes. More...
 

Protected Attributes

CLEANUP_STRATEGYcleanup_strategy_
 
bool delete_cleanup_strategy_
 Whether the cleanup_strategy should be destroyed or not. More...
 

Additional Inherited Members

- Private Member Functions inherited from ACE_Copy_Disabled
 ACE_Copy_Disabled (void)
 Default constructor. More...
 

Detailed Description

template<class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
class ACE_Pair_Caching_Utility< KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES >

Defines a helper class for the Caching Strategies.

This class defines the methods commonly used by the different caching strategies. For instance: clear_cache() method which decides and purges the entry from the container.

Note
This class helps in the caching_strategies using a container containing entries of <KEY, ACE_Pair<VALUE, attributes>> kind. The attributes helps in deciding the entries to be purged. The Cleanup_Strategy is the callback class to which the entries to be cleaned up will be delegated.

Member Typedef Documentation

template<class KEY , class VALUE , class CONTAINER , class ITERATOR , class ATTRIBUTES >
typedef ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> ACE_Pair_Caching_Utility< KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES >::CLEANUP_STRATEGY

Constructor & Destructor Documentation

template<class KEY , class VALUE , class CONTAINER , class ITERATOR , class ATTRIBUTES >
ACE_Pair_Caching_Utility< KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES >::ACE_Pair_Caching_Utility ( ACE_Cleanup_Strategy< KEY, VALUE, CONTAINER > *  cleanup_strategy = 0,
bool  delete_cleanup_strategy = false 
)

Constructor.

template<class KEY , class VALUE , class CONTAINER , class ITERATOR , class ATTRIBUTES >
ACE_Pair_Caching_Utility< KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES >::~ACE_Pair_Caching_Utility ( void  )

Destructor.

Member Function Documentation

template<class KEY , class VALUE , class CONTAINER , class ITERATOR , class ATTRIBUTES >
int ACE_Pair_Caching_Utility< KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES >::clear_cache ( CONTAINER &  container,
double  purge_percent 
)

Purge entries from the container. The Cleanup_Strategy will do the actual job of cleanup once the entries to be cleaned up are decided.

template<class KEY , class VALUE , class CONTAINER , class ITERATOR , class ATTRIBUTES >
void ACE_Pair_Caching_Utility< KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES >::minimum ( CONTAINER &  container,
KEY *&  key_to_remove,
VALUE *&  value_to_remove 
)
protected

Find the entry with minimum caching attributes.

Member Data Documentation

template<class KEY , class VALUE , class CONTAINER , class ITERATOR , class ATTRIBUTES >
CLEANUP_STRATEGY* ACE_Pair_Caching_Utility< KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES >::cleanup_strategy_
protected

The cleanup strategy which can be used to destroy the entries of the container.

template<class KEY , class VALUE , class CONTAINER , class ITERATOR , class ATTRIBUTES >
bool ACE_Pair_Caching_Utility< KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES >::delete_cleanup_strategy_
protected

Whether the cleanup_strategy should be destroyed or not.


The documentation for this class was generated from the following files: