Revert "Minor modernization of DynamicAny code"
[ACE_TAO.git] / TAO / tao / Connection_Purging_Strategy.h
blob845b8222ffbc2b5d081a508d7ebf30e63fb793fc
1 // -*- C++ -*-
3 // ================================================================
4 /**
5 * @file Connection_Purging_Strategy.h
7 * @author Chad Elliott (elliott_c@ociweb.com)
8 */
9 // ================================================================
11 #ifndef TAO_PURGING_STRATEGY_H
12 #define TAO_PURGING_STRATEGY_H
14 #include /**/ "ace/pre.h"
16 #include /**/ "tao/TAO_Export.h"
18 #if !defined (ACE_LACKS_PRAGMA_ONCE)
19 # pragma once
20 #endif /* ACE_LACKS_PRAGMA_ONCE */
22 #include /**/ "tao/Versioned_Namespace.h"
24 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
26 class TAO_Transport;
28 // ****************************************************************
30 /**
31 * @class TAO_Connection_Purging_Strategy
33 * @brief The base class for all purging strategies
35 * This class is used by the Transport_Cache_Manager to maintain
36 * ordering information on each Transport that is created.
38 class TAO_Export TAO_Connection_Purging_Strategy
40 public:
41 /// The constructor
42 TAO_Connection_Purging_Strategy (int cache_maximum);
44 /// The destructor
45 virtual ~TAO_Connection_Purging_Strategy ();
47 /// Return the maximum number of cache entries
48 virtual int cache_maximum () const;
50 /// Sub-classes must implement these methods
51 virtual void update_item (TAO_Transport& transport) = 0;
53 private:
54 /// The maximum number of cache entries
55 int cache_maximum_;
58 TAO_END_VERSIONED_NAMESPACE_DECL
60 #if defined (__ACE_INLINE__)
61 # include "tao/Connection_Purging_Strategy.inl"
62 #endif /* __ACE_INLINE__ */
64 #include /**/ "ace/post.h"
65 #endif /* TAO_PURGING_STRATEGY_H */