summaryrefslogtreecommitdiff
path: root/apps/Gateway/Gateway/Thr_Proxy_Handler.h
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>1996-12-30 06:50:29 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>1996-12-30 06:50:29 +0000
commita5c4d8047ab58df5c45092e18ae503ad40518f0e (patch)
treedaa1ac46caf738dfe049fd5ca5eafc0eb84a0eb0 /apps/Gateway/Gateway/Thr_Proxy_Handler.h
parent645a9c1a4457349320e62d85af49f62e80da53c0 (diff)
downloadATCD-a5c4d8047ab58df5c45092e18ae503ad40518f0e.tar.gz
foo
Diffstat (limited to 'apps/Gateway/Gateway/Thr_Proxy_Handler.h')
-rw-r--r--apps/Gateway/Gateway/Thr_Proxy_Handler.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/apps/Gateway/Gateway/Thr_Proxy_Handler.h b/apps/Gateway/Gateway/Thr_Proxy_Handler.h
new file mode 100644
index 00000000000..8ecced3805c
--- /dev/null
+++ b/apps/Gateway/Gateway/Thr_Proxy_Handler.h
@@ -0,0 +1,64 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// apps
+//
+// = FILENAME
+// Thr_Proxy_Handler.h
+//
+// = AUTHOR
+// Doug Schmidt
+//
+// ============================================================================
+
+#if !defined (_THR_IO_HANDLER)
+#define _THR_IO_HANDLER
+
+#include "Proxy_Handler.h"
+
+#if defined (ACE_HAS_THREADS)
+class Thr_Consumer_Proxy : public Consumer_Proxy
+ // = TITLE
+ // Runs each Output Proxy_Handler in a separate thread.
+{
+public:
+ Thr_Consumer_Proxy (Event_Forwarding_Discriminator *,
+ Proxy_Handler_Connector *,
+ ACE_Thread_Manager *,
+ int socket_queue_size);
+
+ virtual int open (void *);
+ // Initialize the threaded Consumer_Proxy object and spawn a new
+ // thread.
+
+ virtual int handle_input (ACE_HANDLE);
+ // Called when Peer shutdown unexpectedly.
+
+ virtual int put (ACE_Message_Block *, ACE_Time_Value * = 0);
+ // Send a message to a peer.
+
+ virtual int svc (void);
+ // Transmit peer messages.
+};
+
+class Thr_Supplier_Proxy : public Supplier_Proxy
+ // = TITLE
+ // Runs each Input Proxy_Handler in a separate thread.
+{
+public:
+ Thr_Supplier_Proxy (Event_Forwarding_Discriminator *,
+ Proxy_Handler_Connector *,
+ ACE_Thread_Manager *,
+ int socket_queue_size);
+
+ virtual int open (void *);
+ // Initialize the object and spawn a new thread.
+
+ virtual int svc (void);
+ // Transmit peer messages.
+};
+#endif /* ACE_HAS_THREADS */
+#endif /* _THR_IO_HANDLER */