summaryrefslogtreecommitdiff
path: root/ace/Strategies.h
diff options
context:
space:
mode:
Diffstat (limited to 'ace/Strategies.h')
-rw-r--r--ace/Strategies.h178
1 files changed, 0 insertions, 178 deletions
diff --git a/ace/Strategies.h b/ace/Strategies.h
deleted file mode 100644
index 03bd8d2d71d..00000000000
--- a/ace/Strategies.h
+++ /dev/null
@@ -1,178 +0,0 @@
-/* -*- C++ -*- */
-// $Id$
-
-// ============================================================================
-//
-// = LIBRARY
-// ace
-//
-// = FILENAME
-// Strategies.h
-//
-// = AUTHOR
-// Doug Schmidt
-//
-// ============================================================================
-
-#if !defined (ACE_STRATEGIES_H)
-#define ACE_STRATEGIES_H
-
-#include "ace/Event_Handler.h"
-
-// Forward decls.
-class ACE_Reactor;
-
-class ACE_Export ACE_Notification_Strategy
-{
- // = TITLE
- // Abstract class used for notifing an interested party
- //
- // = DESCRIPTION
- // A vehicle for extending the behavior of ACE_Message_Queue wrt
- // notification *without subclassing*. Thus, it's an example of
- // the Bridge/Strategy patterns.
-public:
- ACE_Notification_Strategy (ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask);
- virtual ~ACE_Notification_Strategy (void);
-
- virtual int notify (void) = 0;
- virtual int notify (ACE_Event_Handler *,
- ACE_Reactor_Mask mask) = 0;
-
- // Get/Set the event handler
- ACE_Event_Handler *event_handler (void);
- void event_handler (ACE_Event_Handler *eh);
-
- // Get/Set the reactor mask
- ACE_Reactor_Mask mask (void);
- void mask (ACE_Reactor_Mask m);
-
-protected:
- ACE_Event_Handler *eh_;
- ACE_Reactor_Mask mask_;
-};
-
-class ACE_Export ACE_Reactor_Notification_Strategy : public ACE_Notification_Strategy
-{
- // = TITLE
- // Used to notify an ACE_Reactor
- //
- // = DESCRIPTION
- // Integrates the ACE_Message_Queue notification into the
- // ACE_Reactor::notify() method.
-public:
- ACE_Reactor_Notification_Strategy (ACE_Reactor *reactor,
- ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask);
-
- ~ACE_Reactor_Notification_Strategy (void);
- // Default dtor.
-
- virtual int notify (void);
-
- virtual int notify (ACE_Event_Handler *,
- ACE_Reactor_Mask mask);
-
- // Get/Set the reactor
- ACE_Reactor *reactor (void);
- void reactor (ACE_Reactor *r);
-
-protected:
- ACE_Reactor *reactor_;
-};
-
-class ACE_Export ACE_Connection_Recycling_Strategy
-{
- // = TITLE
- // Defines the interface for a connection recycler.
-public:
- virtual ~ACE_Connection_Recycling_Strategy (void);
- // Virtual Destructor
-
- virtual int purge (const void *recycling_act) = 0;
- // Remove from cache.
-
- virtual int cache (const void *recycling_act) = 0;
- // Add to cache.
-
- virtual int mark_as_closed (const void *recycling_act) = 0;
- // Mark as closed.
-
- virtual int cleanup_hint (const void *recycling_act) = 0;
- // Cleanup as hint.
-
-protected:
- ACE_Connection_Recycling_Strategy (void);
- // Default ctor.
-};
-
-class ACE_Export ACE_Recyclable
-{
-public:
- enum State
- {
- IDLE,
- BUSY,
- CLOSED,
- UNKNOWN
- };
-
- virtual ~ACE_Recyclable (void);
- // Destructor.
-
- // = Set/Get the recyclable bit
- State state (void) const;
- void state (State new_state);
-
-protected:
- ACE_Recyclable (State initial_state);
- // Protected constructor.
-
- State state_;
- // Our state.
-};
-
-class ACE_Export ACE_Hashable
-{
-public:
- virtual ~ACE_Hashable (void);
- // Destructor.
-
- virtual u_long hash (void) const = 0;
- // Computes and returns hash value.
-
-protected:
- ACE_Hashable (void);
- // Protected constructor.
-};
-
-class ACE_Export ACE_Refcountable
-{
-public:
- virtual ~ACE_Refcountable (void);
- // Destructor.
-
- // = Increment/Decrement refcount
- int increment (void);
- int decrement (void);
-
- int refcount (void) const;
- // Returns the current refcount.
-
-protected:
- ACE_Refcountable (int refcount);
- // Protected constructor.
-
- int refcount_;
- // Current refcount.
-};
-
-// This needs to come here to avoid circular dependencies.
-#include "ace/Strategies_T.h"
-
-#if defined (__ACE_INLINE__)
-#include "ace/Strategies.i"
-#endif /* __ACE_INLINE __ */
-
-#endif /* ACE_STRATEGIES_H */