ACE 8.0.5
Loading...
Searching...
No Matches
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 >:
Collaboration diagram for ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >:

Public Member Functions

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

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.

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

◆ ACE_Caching_Strategy_Adapter()

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.

◆ ~ACE_Caching_Strategy_Adapter()

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

Destructor.

Member Function Documentation

◆ attributes()

template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION>
ATTRIBUTES ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::attributes ( )
inlinevirtual

Accessor method for the timer attributes.

Implements ACE_Caching_Strategy< ATTRIBUTES, CACHING_UTILITY >.

◆ caching_utility()

template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION>
CACHING_UTILITY & ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::caching_utility ( )
inlinevirtual

◆ dump()

template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION>
void ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::dump ( ) const
inlinevirtual

Dumps the state of the object.

Implements ACE_Caching_Strategy< ATTRIBUTES, CACHING_UTILITY >.

◆ implementation()

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

Accessor to the implementation.

◆ notify_bind()

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 >.

◆ notify_find()

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 >.

◆ notify_rebind()

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 >.

◆ notify_trybind()

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 >.

◆ notify_unbind()

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 >.

◆ purge_percent() [1/2]

template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION>
double ACE_Caching_Strategy_Adapter< ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION >::purge_percent ( )
inlinevirtual

Get the percentage of entries to purge.

Implements ACE_Caching_Strategy< ATTRIBUTES, CACHING_UTILITY >.

◆ purge_percent() [2/2]

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

◆ ACE_ALLOC_HOOK_DECLARE

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

Declare the dynamic allocation hooks.

◆ delete_implementation_

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?

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