summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/Notify/Notify_Buffering_Strategy.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Notify/Notify_Buffering_Strategy.h')
-rw-r--r--TAO/orbsvcs/orbsvcs/Notify/Notify_Buffering_Strategy.h92
1 files changed, 0 insertions, 92 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Notify/Notify_Buffering_Strategy.h b/TAO/orbsvcs/orbsvcs/Notify/Notify_Buffering_Strategy.h
deleted file mode 100644
index 1d6fb5c048d..00000000000
--- a/TAO/orbsvcs/orbsvcs/Notify/Notify_Buffering_Strategy.h
+++ /dev/null
@@ -1,92 +0,0 @@
-/* -*- C++ -*- */
-//=============================================================================
-/**
- * @file Notify_Buffering_Strategy.h
- *
- * $Id$
- *
- * A Strategy class that buffers command objects in a message queue.
- *
- *
- * @author Pradeep Gore <pradeep@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef TAO_NOTIFY_BUFFERING_STRATEGY_H
-#define TAO_NOTIFY_BUFFERING_STRATEGY_H
-
-#include "ace/pre.h"
-#include "tao/corba.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "Notify_AdminProperties.h"
-#include "orbsvcs/TimeBaseC.h"
-
-#include "ace/Message_Queue.h"
-#include "ace/Synch.h"
-
-class TAO_Notify_Command;
-
-/**
- * @class TAO_Notify_Buffering_Strategy
- *
- * @brief TAO_Notify_Buffering_Strategy
- *
- * This buffering strategy buffers and discards events according to the
- * policies specified in the CosNotification.idl
- */
-class TAO_Notify_Export TAO_Notify_Buffering_Strategy
-{
-public:
- TAO_Notify_Buffering_Strategy (TAO_Notify_Signal_Property_Long* const queue_length);
-
- virtual ~TAO_Notify_Buffering_Strategy ();
-
- /// Execute this strategy.
- virtual void execute (ACE_Message_Queue<ACE_SYNCH>* msg_queue, TAO_Notify_Command *mb ACE_ENV_ARG_DECL, ACE_Time_Value *tv);
-
- /// Set the max. queue length.
- void max_queue_length (CORBA::Long max_queue_length);
-
- /// Set the max. events per consumer.
- void max_events_per_consumer (CORBA::Long max_events_per_consumer);
-
- /// Set the order policy.
- void order_policy (CORBA::Short order_policy);
-
- /// Set the discard policy.
- void discard_policy (CORBA::Short discard_policy);
-
- /// Set the blocking timeout.
- void blocking_timeout (TimeBase::TimeT timeout);
-
-protected:
- /// The overall queue length.
- TAO_Notify_Signal_Property_Long* const queue_length_;
-
- /// Discarding policies kicks in when the <queue_length_> exceeds <max_queue_length_>
- CORBA::Long max_queue_length_;
-
- /// Discarding policies kicks in when the <queue_length_> exceeds <max_events_per_consumer_>
- CORBA::Long max_events_per_consumer_;
-
- /// Order of events in internal buffers.
- CORBA::Short order_policy_;
-
- /// Policy to discard when buffers are full.
- CORBA::Short discard_policy_;
-
- /// Should we use the max queue or max events.
- CORBA::Boolean use_max_queue_;
-
- /// The blocking timeout will be used in place of discarding
- /// if use_blocking_timeout_ is set. This is a TAO specific extension.
- TimeBase::TimeT blocking_timeout_;
- CORBA::Boolean use_blocking_timeout_;
-};
-
-#include "ace/post.h"
-#endif /* TAO_NOTIFY_BUFFERING_STRATEGY_H */