Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

ACE_Handler_Cleanup_Strategy Class Template Reference

Defines a strategy to be followed for cleaning up entries which are svc_handlers from a container. More...

#include <Cleanup_Strategies_T.h>

Inheritance diagram for ACE_Handler_Cleanup_Strategy:

Inheritance graph
[legend]
Collaboration diagram for ACE_Handler_Cleanup_Strategy:

Collaboration graph
[legend]
List of all members.

Public Methods

virtual int cleanup (CONTAINER &container, KEY *key, VALUE *value)
 The method which will do the cleanup of the entry in the container. More...


Detailed Description

template<class KEY, class VALUE, class CONTAINER>
class ACE_Handler_Cleanup_Strategy< KEY, VALUE, CONTAINER >

Defines a strategy to be followed for cleaning up entries which are svc_handlers from a container.

The entry to be cleaned up is removed from the container. Here, since we are dealing with svc_handlers specifically, we perform a couple of extra operations. Note: This cleanup strategy should be used in the case when the handler has the caching attributes.

Definition at line 109 of file Cleanup_Strategies_T.h.


Member Function Documentation

template<class KEY, class VALUE, class CONTAINER>
int ACE_Handler_Cleanup_Strategy< KEY, VALUE, CONTAINER >::cleanup CONTAINER &    container,
KEY *    key,
VALUE *    value
[virtual]
 

The method which will do the cleanup of the entry in the container.

Reimplemented from ACE_Cleanup_Strategy.

Definition at line 58 of file Cleanup_Strategies_T.cpp.

00061 {
00062   // Remove the item from cache only if the handler isnt in use.
00063   if ((*value)->active () == 0)
00064     {
00065       (*value)->close ();
00066 
00067       if (container.unbind (*key) == -1)
00068         return -1;
00069 
00070     }
00071 
00072   return 0;
00073 }


The documentation for this class was generated from the following files:
Generated on Mon Jun 16 12:48:24 2003 for ACE by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002