ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES > Class Template Reference

Defines a abstraction that will purge entries from a map. More...

#include <Cache_Map_Manager_T.h>

Collaboration diagram for ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef KEY key_type
typedef VALUE mapped_type
typedef CMAP_TYPE map_type
typedef CACHING_STRATEGY caching_strategy_type
typedef ITERATOR_IMPL ITERATOR_IMPLEMENTATION
typedef REVERSE_ITERATOR_IMPL REVERSE_ITERATOR_IMPLEMENTATION
typedef ACE_Cache_Map_Iterator<
KEY, VALUE, ITERATOR_IMPLEMENTATION,
CACHING_STRATEGY, ATTRIBUTES > 
ITERATOR
typedef ACE_Cache_Map_Reverse_Iterator<
KEY, VALUE, REVERSE_ITERATOR_IMPLEMENTATION,
CACHING_STRATEGY, ATTRIBUTES > 
REVERSE_ITERATOR
typedef ITERATOR iterator
typedef REVERSE_ITERATOR reverse_iterator
typedef ACE_Pair< VALUE, ATTRIBUTES > CACHE_VALUE

Public Member Functions

 ACE_Cache_Map_Manager (CACHING_STRATEGY &caching_strategy, size_t size=ACE_DEFAULT_MAP_SIZE, ACE_Allocator *alloc=0)
virtual ~ACE_Cache_Map_Manager (void)
int open (size_t length=ACE_DEFAULT_MAP_SIZE, ACE_Allocator *alloc=0)
 Initialize a cache with size .

int close (void)
 Close down a cache and release dynamically allocated resources.

int bind (const KEY &key, const VALUE &value)
int find (const KEY &key, VALUE &value)
int find (const KEY &key)
int rebind (const KEY &key, const VALUE &value)
int rebind (const KEY &key, const VALUE &value, VALUE &old_value)
int rebind (const KEY &key, const VALUE &value, KEY &old_key, VALUE &old_value)
int trybind (const KEY &key, VALUE &value)
int unbind (const KEY &key)
 Remove from the cache.

int unbind (const KEY &key, VALUE &value)
int purge (void)
 Remove entries from the cache depending upon the strategy.

size_t current_size (void) const
 Return the current size of the cache.

size_t total_size (void) const
 Return the total size of the cache.

void dump (void) const
 Dumps the state of the object.

ITERATOR begin (void)
 Return forward iterator.

ITERATOR end (void)
REVERSE_ITERATOR rbegin (void)
 Return reverse iterator.

REVERSE_ITERATOR rend (void)
CMAP_TYPE & map (void)
 The map managed by the Cache_Map_Manager.

CACHING_STRATEGY & caching_strategy (void)
 The caching strategy used on the cache.


Protected Attributes

CMAP_TYPE map_
 The underlying map which needs to be cached.

CACHING_STRATEGY & caching_strategy_
 The strategy to be followed for caching entries in the map.


Private Member Functions

void operator= (const ACMM< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES > &)
 ACMM (const ACMM< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES > &)

Friends

class ACE_Cache_Map_Iterator< KEY, VALUE, ITERATOR_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES >
class ACE_Cache_Map_Reverse_Iterator< KEY, VALUE, REVERSE_ITERATOR_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES >

Detailed Description

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
class ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >

Defines a abstraction that will purge entries from a map.

The will manage the map it contains and provide purging on demand from the map. The strategy for caching is decided by the user and provided to the Cache Manager. The Cache Manager acts as a agent and communicates between the Map and the Strategy for purging entries from the map. No locking mechanism provided since locking at this level isn't efficient. Locking has to be provided by the application.

Definition at line 61 of file Cache_Map_Manager_T.h.


Member Typedef Documentation

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
typedef ACE_Pair<VALUE, ATTRIBUTES> ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::CACHE_VALUE
 

The actual value mapped to the key in the map. The are used by the strategy and is transparent to the user of this class.

Definition at line 94 of file Cache_Map_Manager_T.h.

Referenced by ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::bind(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::find(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::rebind(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::trybind(), and ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::unbind().

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
typedef CACHING_STRATEGY ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy_type
 

Definition at line 69 of file Cache_Map_Manager_T.h.

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
typedef ITERATOR ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::iterator
 

Definition at line 85 of file Cache_Map_Manager_T.h.

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
typedef ACE_Cache_Map_Iterator<KEY, VALUE, ITERATOR_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::ITERATOR
 

Definition at line 79 of file Cache_Map_Manager_T.h.

Referenced by ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::begin(), and ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::end().

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
typedef ITERATOR_IMPL ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::ITERATOR_IMPLEMENTATION
 

Definition at line 71 of file Cache_Map_Manager_T.h.

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
typedef KEY ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::key_type
 

Definition at line 66 of file Cache_Map_Manager_T.h.

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
typedef CMAP_TYPE ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_type
 

Definition at line 68 of file Cache_Map_Manager_T.h.

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
typedef VALUE ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::mapped_type
 

Definition at line 67 of file Cache_Map_Manager_T.h.

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
typedef REVERSE_ITERATOR ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::reverse_iterator
 

Definition at line 87 of file Cache_Map_Manager_T.h.

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
typedef ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_ITERATOR_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::REVERSE_ITERATOR
 

Definition at line 81 of file Cache_Map_Manager_T.h.

Referenced by ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::rbegin(), and ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::rend().

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
typedef REVERSE_ITERATOR_IMPL ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::REVERSE_ITERATOR_IMPLEMENTATION
 

Definition at line 72 of file Cache_Map_Manager_T.h.


Constructor & Destructor Documentation

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::ACE_Cache_Map_Manager CACHING_STRATEGY &  caching_strategy,
size_t  size = ACE_DEFAULT_MAP_SIZE,
ACE_Allocator alloc = 0
 

Initialize a with and entries.

Definition at line 31 of file Cache_Map_Manager_T.cpp.

References ACE_Cache_Map_Manager, ACE_ERROR, ACE_LIB_TEXT, ACE_T2, LM_ERROR, and ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::open().

00034   : caching_strategy_ (caching_s)
00035 {
00036   if (this->open (size, alloc) == -1)
00037     ACE_ERROR ((LM_ERROR,
00038                 ACE_LIB_TEXT ("%p\n"),
00039                 ACE_LIB_TEXT ("ACE_Cache_Map_Manager::ACE_Cache_Map_Manager")));
00040 
00041 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::~ACE_Cache_Map_Manager void   )  [virtual]
 

Close down a and release dynamically allocated resources.

Definition at line 44 of file Cache_Map_Manager_T.cpp.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::close().

00045 {
00046   this->close ();
00047 }


Member Function Documentation

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::ACMM const ACMM< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES > &   )  [private]
 

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
ACE_INLINE ACE_Cache_Map_Iterator< KEY, VALUE, ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES > ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::begin void   ) 
 

Return forward iterator.

Definition at line 39 of file Cache_Map_Manager_T.inl.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::ITERATOR.

00040 {
00041   return ITERATOR (this->map_.begin ());
00042 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
int ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::bind const KEY &  key,
const VALUE &  value
 

Associate with . If is already in the CMAP_TYPE then the ENTRY is not changed. Returns 0 if a new entry is bound successfully, returns 1 if an attempt is made to bind an existing entry, and returns -1 if failures occur.

Definition at line 64 of file Cache_Map_Manager_T.cpp.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::CACHE_VALUE, ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy_, ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_, and ACE_Pair< T1, T2 >::second().

00066 {
00067   // Insert an entry which has the <key> and the <cache_value> which
00068   // is the combination of the <value> and the attributes of the
00069   // caching strategy.
00070   CACHE_VALUE cache_value (value,
00071                            this->caching_strategy_.attributes ());
00072 
00073   int bind_result = this->map_.bind (key,
00074                                      cache_value);
00075 
00076   if (bind_result != -1)
00077     {
00078 
00079       int result = this->caching_strategy_.notify_bind (bind_result,
00080                                                         cache_value.second ());
00081 
00082       if (result == -1)
00083         {
00084 
00085           this->map_.unbind (key);
00086 
00087           // Unless the notification goes thru the bind operation is
00088           // not complete.
00089           bind_result = -1;
00090 
00091         }
00092 
00093     }
00094 
00095   return bind_result;
00096 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
ACE_INLINE CACHING_STRATEGY & ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy void   ) 
 

The caching strategy used on the cache.

Definition at line 33 of file Cache_Map_Manager_T.inl.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy_.

Referenced by ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::purge().

00034 {
00035   return this->caching_strategy_;
00036 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
int ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::close void   ) 
 

Close down a cache and release dynamically allocated resources.

Definition at line 58 of file Cache_Map_Manager_T.cpp.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_.

Referenced by ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::~ACE_Cache_Map_Manager().

00059 {
00060   return this->map_.close ();
00061 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
ACE_INLINE size_t ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::current_size void   )  const
 

Return the current size of the cache.

Definition at line 15 of file Cache_Map_Manager_T.inl.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_.

00016 {
00017   return this->map_.current_size ();
00018 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
void ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::dump void   )  const
 

Dumps the state of the object.

Definition at line 401 of file Cache_Map_Manager_T.cpp.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy_, and ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_.

00402 {
00403 #if defined (ACE_HAS_DUMP)
00404   this->map_.dump ();
00405 
00406   this->caching_strategy_.dump ();
00407 #endif /* ACE_HAS_DUMP */
00408 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
ACE_INLINE ACE_Cache_Map_Iterator< KEY, VALUE, ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES > ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::end void   ) 
 

Definition at line 45 of file Cache_Map_Manager_T.inl.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::ITERATOR.

00046 {
00047   return ITERATOR (this->map_.end ());
00048 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
int ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::find const KEY &  key  ) 
 

Lookup entry<key,value> in the cache. If it is not found, returns -1. If the is located in the CMAP_TYPE object, the CACHING_STRATEGY is notified of it via notify_find (int result, ATTRIBUTES &attribute). If notify_find also returns 0 (success), then this function returns 0 (success).

Definition at line 314 of file Cache_Map_Manager_T.cpp.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::CACHE_VALUE, ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy_, ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_, and ACE_Pair< T1, T2 >::second().

00315 {
00316   // Lookup the key and populate the <value>.
00317   CACHE_VALUE cache_value;
00318 
00319   int find_result = this->map_.find (key,
00320                                      cache_value);
00321 
00322   if (find_result != -1)
00323     {
00324 
00325       int result = this->caching_strategy_.notify_find (find_result,
00326                                                         cache_value.second ());
00327 
00328       // Unless the find and notification operations go thru, this
00329       // method is not successful.
00330       if (result == -1)
00331         find_result = -1;
00332       else
00333         {
00334 
00335           // Since the <cache_value> has now changed after the
00336           // notification, we need to bind to the map again.
00337           int rebind_result = this->map_.rebind (key,
00338                                                  cache_value);
00339 
00340           if (rebind_result == -1)
00341             find_result = -1;
00342 
00343         }
00344 
00345     }
00346 
00347   return find_result;
00348 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
int ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::find const KEY &  key,
VALUE &  value
 

Lookup entry<key,value> in the cache. If it is not found, returns -1. If the is located in the CMAP_TYPE object, the CACHING_STRATEGY is notified of it via notify_find (int result, ATTRIBUTES &attribute). If notify_find also returns 0 (success), then this function returns 0 (success) and sets the cached value in .

Definition at line 275 of file Cache_Map_Manager_T.cpp.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::CACHE_VALUE, ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy_, ACE_Pair< T1, T2 >::first(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_, and ACE_Pair< T1, T2 >::second().

00277 {
00278   // Lookup the key and populate the <value>.
00279   CACHE_VALUE cache_value;
00280 
00281   int find_result = this->map_.find (key,
00282                                      cache_value);
00283 
00284   if (find_result != -1)
00285     {
00286 
00287       int result = this->caching_strategy_.notify_find (find_result,
00288                                                         cache_value.second ());
00289 
00290       // Unless the find and notification operations go thru, this
00291       // method is not successful.
00292       if (result == -1)
00293         find_result = -1;
00294       else
00295         {
00296 
00297           // Since the <cache_value> has now changed after the
00298           // notification, we need to bind to the map again.
00299           int rebind_result = this->map_.rebind (key,
00300                                                  cache_value);
00301           if (rebind_result == -1)
00302             find_result = -1;
00303           else
00304             value = cache_value.first ();
00305 
00306         }
00307 
00308     }
00309 
00310   return find_result;
00311 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
ACE_INLINE CMAP_TYPE & ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map void   ) 
 

The map managed by the Cache_Map_Manager.

Definition at line 27 of file Cache_Map_Manager_T.inl.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_.

00028 {
00029   return this->map_;
00030 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
int ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::open size_t  length = ACE_DEFAULT_MAP_SIZE,
ACE_Allocator alloc = 0
 

Initialize a cache with size .

Definition at line 50 of file Cache_Map_Manager_T.cpp.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_.

Referenced by ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::ACE_Cache_Map_Manager().

00052 {
00053   return this->map_.open (length,
00054                           alloc);
00055 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
void ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::operator= const ACMM< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES > &   )  [private]
 

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE int ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::purge void   ) 
 

Remove entries from the cache depending upon the strategy.

Definition at line 8 of file Cache_Map_Manager_T.inl.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy().

00009 {
00010   return this->caching_strategy ().caching_utility ().clear_cache (this->map_,
00011                                                                    this->caching_strategy ().purge_percent ());
00012 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
ACE_INLINE ACE_Cache_Map_Reverse_Iterator< KEY, VALUE, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES > ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::rbegin void   ) 
 

Return reverse iterator.

Definition at line 51 of file Cache_Map_Manager_T.inl.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::REVERSE_ITERATOR.

00052 {
00053   return REVERSE_ITERATOR (this->map_.rbegin ());
00054 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
int ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::rebind const KEY &  key,
const VALUE &  value,
KEY &  old_key,
VALUE &  old_value
 

Reassociate with , storing the old key and value into the "out" parameters and . The function fails if is not in the cache for caches that do not allow user specified keys. However, for caches that allow user specified keys, if the key is not in the cache, a new / association is created.

Definition at line 184 of file Cache_Map_Manager_T.cpp.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::CACHE_VALUE, ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy_, ACE_Pair< T1, T2 >::first(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_, and ACE_Pair< T1, T2 >::second().

00188 {
00189   CACHE_VALUE cache_value (value,
00190                            this->caching_strategy_.attributes ());
00191 
00192   CACHE_VALUE old_cache_value (old_value,
00193                                this->caching_strategy_.attributes ());
00194 
00195   int rebind_result = this->map_.rebind (key,
00196                                          cache_value,
00197                                          old_key,
00198                                          old_cache_value);
00199 
00200   if (rebind_result != -1)
00201     {
00202 
00203       int result = this->caching_strategy_.notify_rebind (rebind_result,
00204                                                           cache_value.second ());
00205 
00206       if (result == -1)
00207         {
00208 
00209           // Make sure the unbind operation is done only when the
00210           // notification fails after a bind which is denoted by
00211           // rebind_result = 0
00212           if (rebind_result == 0)
00213             this->map_.unbind (key);
00214 
00215           // Unless the notification goes thru the rebind operation is
00216           // not complete.
00217           rebind_result = -1;
00218 
00219         }
00220       else
00221         {
00222 
00223           old_value = old_cache_value.first ();
00224 
00225         }
00226 
00227     }
00228 
00229   return rebind_result;
00230 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
int ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::rebind const KEY &  key,
const VALUE &  value,
VALUE &  old_value
 

Reassociate with , storing the old value into the "out" parameter . The function fails if is not in the cache for caches that do not allow user specified keys. However, for caches that allow user specified keys, if the key is not in the cache, a new / association is created.

Definition at line 137 of file Cache_Map_Manager_T.cpp.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::CACHE_VALUE, ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy_, ACE_Pair< T1, T2 >::first(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_, and ACE_Pair< T1, T2 >::second().

00140 {
00141   CACHE_VALUE cache_value (value,
00142                            this->caching_strategy_.attributes ());
00143 
00144   CACHE_VALUE old_cache_value (old_value,
00145                                this->caching_strategy_.attributes ());
00146 
00147   int rebind_result = this->map_.rebind (key,
00148                                          cache_value,
00149                                          old_cache_value);
00150 
00151   if (rebind_result != -1)
00152     {
00153 
00154       int result = this->caching_strategy_.notify_rebind (rebind_result,
00155                                                           cache_value.second ());
00156 
00157       if (result == -1)
00158         {
00159 
00160           // Make sure the unbind operation is done only when the
00161           // notification fails after a bind which is denoted by
00162           // rebind_result = 0
00163           if (rebind_result == 0)
00164             this->map_.unbind (key);
00165 
00166           // Unless the notification goes thru the rebind operation is
00167           // not complete.
00168           rebind_result = -1;
00169 
00170         }
00171       else
00172         {
00173 
00174           old_value = old_cache_value.first ();
00175 
00176         }
00177 
00178     }
00179 
00180   return rebind_result;
00181 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
int ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::rebind const KEY &  key,
const VALUE &  value
 

Reassociate the with . If the already exists in the cache then returns 1, on a new bind returns 0 and returns -1 in case of any failures.

Definition at line 100 of file Cache_Map_Manager_T.cpp.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::CACHE_VALUE, ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy_, ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_, and ACE_Pair< T1, T2 >::second().

00102 {
00103   CACHE_VALUE cache_value (value,
00104                            this->caching_strategy_.attributes ());
00105 
00106   int rebind_result = this->map_.rebind (key,
00107                                          cache_value);
00108 
00109   if (rebind_result != -1)
00110     {
00111 
00112       int result = this->caching_strategy_.notify_rebind (rebind_result,
00113                                                           cache_value.second ());
00114 
00115       if (result == -1)
00116         {
00117 
00118           // Make sure the unbind operation is done only when the
00119           // notification fails after a bind which is denoted by
00120           // rebind_result = 0
00121           if (rebind_result == 0)
00122             this->map_.unbind (key);
00123 
00124           // Unless the notification goes thru the rebind operation is
00125           // not complete.
00126           rebind_result = -1;
00127 
00128         }
00129 
00130     }
00131 
00132   return rebind_result;
00133 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
ACE_INLINE ACE_Cache_Map_Reverse_Iterator< KEY, VALUE, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES > ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::rend void   ) 
 

Definition at line 56 of file Cache_Map_Manager_T.inl.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::REVERSE_ITERATOR.

00057 {
00058   return REVERSE_ITERATOR (this->map_.rend ());
00059 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
ACE_INLINE size_t ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::total_size void   )  const
 

Return the total size of the cache.

Definition at line 21 of file Cache_Map_Manager_T.inl.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_.

00022 {
00023   return this->map_.total_size ();
00024 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
int ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::trybind const KEY &  key,
VALUE &  value
 

Associate with if and only if is not in the cache. If is already in the cache, then the parameter is overwritten with the existing value in the cache. Returns 0 if a new / association is created. Returns 1 if an attempt is made to bind an existing entry. This function fails for maps that do not allow user specified keys.

Definition at line 233 of file Cache_Map_Manager_T.cpp.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::CACHE_VALUE, ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy_, ACE_Pair< T1, T2 >::first(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_, and ACE_Pair< T1, T2 >::second().

00235 {
00236   CACHE_VALUE cache_value (value,
00237                            this->caching_strategy_.attributes ());
00238 
00239   int trybind_result = this->map_.trybind (key,
00240                                            cache_value);
00241 
00242   if (trybind_result != -1)
00243     {
00244 
00245       int result = this->caching_strategy_.notify_trybind (trybind_result,
00246                                                            cache_value.second ());
00247 
00248       if (result == -1)
00249         {
00250 
00251           // If the entry has got inserted into the map, it is removed
00252           // due to failure.
00253           if (trybind_result == 0)
00254             this->map_.unbind (key);
00255 
00256           trybind_result = -1;
00257 
00258         }
00259       else
00260         {
00261 
00262           // If an attempt is made to bind an existing entry the value
00263           // is overwritten with the value from the map.
00264           if (trybind_result == 1)
00265             value = cache_value.first ();
00266 
00267         }
00268 
00269     }
00270 
00271   return trybind_result;
00272 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
int ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::unbind const KEY &  key,
VALUE &  value
 

Remove from the cache, and return the associated with .

Definition at line 375 of file Cache_Map_Manager_T.cpp.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::CACHE_VALUE, ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy_, ACE_Pair< T1, T2 >::first(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_, and ACE_Pair< T1, T2 >::second().

00377 {
00378   // Remove the entry from the cache.
00379   CACHE_VALUE cache_value;
00380 
00381   int unbind_result = this->map_.unbind (key,
00382                                          cache_value);
00383 
00384   if (unbind_result != -1)
00385     {
00386 
00387       int result = this->caching_strategy_.notify_unbind (unbind_result,
00388                                                           cache_value.second ());
00389 
00390       if (result == -1)
00391         unbind_result = -1;
00392       else
00393         value = cache_value.first ();
00394 
00395     }
00396 
00397   return unbind_result;
00398 }

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
int ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::unbind const KEY &  key  ) 
 

Remove from the cache.

Definition at line 352 of file Cache_Map_Manager_T.cpp.

References ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::CACHE_VALUE, ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy_, ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_, and ACE_Pair< T1, T2 >::second().

00353 {
00354   // Remove the entry from the cache.
00355   CACHE_VALUE cache_value;
00356 
00357   int unbind_result = this->map_.unbind (key,
00358                                          cache_value);
00359 
00360   if (unbind_result != -1)
00361     {
00362 
00363       int result = this->caching_strategy_.notify_unbind (unbind_result,
00364                                                           cache_value.second ());
00365 
00366       if (result == -1)
00367         unbind_result = -1;
00368 
00369     }
00370 
00371   return unbind_result;
00372 }


Friends And Related Function Documentation

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
friend class ACE_Cache_Map_Iterator< KEY, VALUE, ITERATOR_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES > [friend]
 

Definition at line 74 of file Cache_Map_Manager_T.h.

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
friend class ACE_Cache_Map_Reverse_Iterator< KEY, VALUE, REVERSE_ITERATOR_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES > [friend]
 

Definition at line 75 of file Cache_Map_Manager_T.h.


Member Data Documentation

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
CACHING_STRATEGY& ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy_ [protected]
 

The strategy to be followed for caching entries in the map.

Definition at line 228 of file Cache_Map_Manager_T.h.

Referenced by ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::bind(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::caching_strategy(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::dump(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::find(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::rebind(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::trybind(), and ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::unbind().

template<class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
CMAP_TYPE ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map_ [protected]
 

The underlying map which needs to be cached.

Definition at line 225 of file Cache_Map_Manager_T.h.

Referenced by ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::bind(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::close(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::current_size(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::dump(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::find(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::map(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::open(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::rebind(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::total_size(), ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::trybind(), and ACE_Cache_Map_Manager< KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES >::unbind().


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 11:20:27 2006 for ACE by doxygen 1.3.6