summaryrefslogtreecommitdiff
path: root/ACE/examples/Reactor/Proactor/test_cancel.h
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/examples/Reactor/Proactor/test_cancel.h')
-rw-r--r--ACE/examples/Reactor/Proactor/test_cancel.h47
1 files changed, 47 insertions, 0 deletions
diff --git a/ACE/examples/Reactor/Proactor/test_cancel.h b/ACE/examples/Reactor/Proactor/test_cancel.h
new file mode 100644
index 00000000000..67f67ffc0da
--- /dev/null
+++ b/ACE/examples/Reactor/Proactor/test_cancel.h
@@ -0,0 +1,47 @@
+/*
+** $Id$
+*/
+
+#ifndef _TEST_CANCEL_H
+#define _TEST_CANCEL_H
+
+#include "ace/Asynch_IO.h"
+
+class Receiver : public ACE_Service_Handler
+{
+ // = TITLE
+ //
+ // Receiver
+ //
+ // = DESCRIPTION
+ //
+ // The class will be created by ACE_Asynch_Acceptor when new
+ // connections arrive. This class will then receive data from
+ // the network connection and dump it to a file.
+
+public:
+ Receiver (void);
+ ~Receiver (void);
+
+ virtual void open (ACE_HANDLE handle,
+ ACE_Message_Block &message_block);
+ // This is called after the new connection has been accepted.
+
+protected:
+ // These methods are called by the framework
+
+ virtual void handle_read_stream (const ACE_Asynch_Read_Stream::Result &result);
+ // This is called when asynchronous read from the socket complete
+
+private:
+ ACE_Asynch_Read_Stream rs_;
+ // rs (read stream): for reading from a socket
+
+ ACE_Message_Block mb_;
+ // Message block to read from the stream.
+
+ ACE_HANDLE handle_;
+ // Handle for IO to remote peer
+};
+
+#endif /* _TEST_CANCEL_H */