ACE  6.3.3
Public Member Functions | Private Attributes | List of all members
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]

Public Member Functions

 ACE_Caching_Strategy_Adapter (IMPLEMENTATION *implementation=0, bool delete_implementation=false)
 Constructor. More...
 
 ~ACE_Caching_Strategy_Adapter (void)
 Destructor. More...
 
ATTRIBUTES attributes (void)
 Accessor method for the timer attributes. More...
 
double purge_percent (void)
 Get the percentage of entries to purge. More...
 
void purge_percent (double percentage)
 Set the percentage of entries to purge. More...
 
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. More...
 
CACHING_UTILITY & caching_utility (void)
 Purge the cache. More...
 
void dump (void) const
 Dumps the state of the object. More...
 
- Public Member Functions inherited from ACE_Caching_Strategy< ATTRIBUTES, CACHING_UTILITY >
virtual ~ACE_Caching_Strategy (void)
 Destructor. More...
 

Private Attributes

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

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  )
inlinevirtual

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  )
inlinevirtual
template<class ATTRIBUTES , class CACHING_UTILITY , class IMPLEMENTATION >
void ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::dump ( void  ) const
inlinevirtual

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 
)
inlinevirtual

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 
)
inlinevirtual

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 
)
inlinevirtual

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 
)
inlinevirtual

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 
)
inlinevirtual

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 >
double ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::purge_percent ( void  )
inlinevirtual

Get the percentage of entries to purge.

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)
inlinevirtual

Set 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: