ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION > Class Template Reference

This class follows the Adaptor pattern and is used to provide External Polymorphism by deriving from ACE_Caching_Strategy. More...

#include <Caching_Strategies_T.h>

Inheritance diagram for ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >:
Inheritance graph
[legend]
Collaboration diagram for ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 ACE_Caching_Strategy_Adapter (IMPLEMENTATION *implementation=0, bool delete_implementation=false)
 Constructor.
 ~ACE_Caching_Strategy_Adapter (void)
 Destructor.
ATTRIBUTES attributes (void)
 Accessor method for the timer attributes.
double purge_percent (void)
 Get the percentage of entries to purge.
void purge_percent (double percentage)
 Set the percentage of entries to purge.
int notify_bind (int result, const ATTRIBUTES &attr)
int notify_find (int result, ATTRIBUTES &attr)
int notify_unbind (int result, const ATTRIBUTES &attr)
int notify_trybind (int result, ATTRIBUTES &attr)
int notify_rebind (int result, const ATTRIBUTES &attr)
IMPLEMENTATION & implementation (void)
 Accessor to the implementation.
CACHING_UTILITY & caching_utility (void)
 Purge the cache.
void dump (void) const
 Dumps the state of the object.

Private Attributes

IMPLEMENTATION * implementation_
 Implementation class.
bool delete_implementation_
 Do we need to delete the implementation?

Detailed Description

template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION>
class ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >

This class follows the Adaptor pattern and is used to provide External Polymorphism by deriving from ACE_Caching_Strategy.

This class simply delegates all requests to the IMPLEMNETATION object within. This class should be passed in place of the the abstract base ACE_Caching_Strategy class as part of the External Polymorphism pattern.


Constructor & Destructor Documentation

template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::ACE_Caching_Strategy_Adapter ( IMPLEMENTATION *  implementation = 0,
bool  delete_implementation = false 
) [inline]

Constructor.

template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::~ACE_Caching_Strategy_Adapter ( void   )  [inline]

Destructor.


Member Function Documentation

template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
ATTRIBUTES ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::attributes ( void   )  [inline, virtual]

Accessor method for the timer attributes.

Implements ACE_Caching_Strategy< ATTRIBUTES, CACHING_UTILITY >.

template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
CACHING_UTILITY & ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::caching_utility ( void   )  [inline, virtual]
template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
void ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::dump ( void   )  const [inline, virtual]

Dumps the state of the object.

Implements ACE_Caching_Strategy< ATTRIBUTES, CACHING_UTILITY >.

template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
IMPLEMENTATION & ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::implementation ( void   )  [inline]

Accessor to the implementation.

template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
int ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::notify_bind ( int  result,
const ATTRIBUTES &  attr 
) [inline, virtual]

This method acts as a notification about the CONTAINERs bind method call.

Implements ACE_Caching_Strategy< ATTRIBUTES, CACHING_UTILITY >.

template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
int ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::notify_find ( int  result,
ATTRIBUTES &  attr 
) [inline, virtual]

This method acts as a notification about the CONTAINERs find method call

Implements ACE_Caching_Strategy< ATTRIBUTES, CACHING_UTILITY >.

template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
int ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::notify_rebind ( int  result,
const ATTRIBUTES &  attr 
) [inline, virtual]

This method acts as a notification about the CONTAINERs rebind method call

Implements ACE_Caching_Strategy< ATTRIBUTES, CACHING_UTILITY >.

template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
int ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::notify_trybind ( int  result,
ATTRIBUTES &  attr 
) [inline, virtual]

This method acts as a notification about the CONTAINERs trybind method call

Implements ACE_Caching_Strategy< ATTRIBUTES, CACHING_UTILITY >.

template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
int ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::notify_unbind ( int  result,
const ATTRIBUTES &  attr 
) [inline, virtual]

This method acts as a notification about the CONTAINERs unbind method call

Implements ACE_Caching_Strategy< ATTRIBUTES, CACHING_UTILITY >.

template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
void ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::purge_percent ( double  percentage  )  [inline, virtual]

Set the percentage of entries to purge.

Implements ACE_Caching_Strategy< ATTRIBUTES, CACHING_UTILITY >.

template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
double ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::purge_percent ( void   )  [inline, virtual]

Get the percentage of entries to purge.

Implements ACE_Caching_Strategy< ATTRIBUTES, CACHING_UTILITY >.


Member Data Documentation

template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
bool ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::delete_implementation_ [private]

Do we need to delete the implementation?

template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
IMPLEMENTATION* ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::implementation_ [private]

Implementation class.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated by  doxygen 1.6.2