diff options
author | Steve Huston <shuston@riverace.com> | 2001-02-06 22:58:37 +0000 |
---|---|---|
committer | Steve Huston <shuston@riverace.com> | 2001-02-06 22:58:37 +0000 |
commit | e58da9076a696e5e1e97f70ca438bbb152c2cbb9 (patch) | |
tree | 93239f76e86baec95dcea185e7d61edc140a7e9d | |
parent | 91d0f1ce5753347099e3dd12812d41a82a683182 (diff) | |
download | ATCD-e58da9076a696e5e1e97f70ca438bbb152c2cbb9.tar.gz |
ChangeLogTag:Tue Feb 06 17:55:28 2001 Steve Huston <shuston@riverace.com>
-rw-r--r-- | ChangeLog | 14 | ||||
-rw-r--r-- | ChangeLogs/ChangeLog-02a | 14 | ||||
-rw-r--r-- | ChangeLogs/ChangeLog-03a | 14 | ||||
-rw-r--r-- | ace/Asynch_Acceptor.cpp | 3 | ||||
-rw-r--r-- | ace/Asynch_IO.cpp | 12 | ||||
-rw-r--r-- | ace/Asynch_IO.h | 6 | ||||
-rw-r--r-- | examples/Reactor/Proactor/post_completions.cpp | 4 |
7 files changed, 62 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog index 9d34a8b2d85..c2a545dd87b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,16 @@ +Tue Feb 06 17:55:28 2001 Steve Huston <shuston@riverace.com> + + * examples/Reactor/Proactor/post_completions.cpp: Allow this to + run with AIOCB_Proactor. + + * ace/Asynch_IO.{h cpp}: Added ACE_Handler::handle (ACE_HANDLE) + function to set the handle; changed ACE_HANDLE ACE_Handler::handle + to return the actual value. + + * ace/Asynch_Acceptor.cpp (handle_accept): Call ACE_Handler::handle + to set the handle value for the new handler before calling its + open() method. + Tue Feb 06 17:16:43 2001 Steve Huston <shuston@riverace.com> * tests/MEM_Stream_Test.cpp: @@ -11,6 +24,7 @@ Mon Feb 5 16:19:20 2001 Douglas C. Schmidt <schmidt@ace.cs.wustl.edu> macros to use the form 0x0123 rather than 0123X. Thanks to Craig Rodrigues <crodrigu@bbn.com> for helping find this problem. + Mon Feb 5 18:20:11 2001 Krishnakumar B <kitty@cs.wustl.edu> * ace/config-sunos5.5.h (ACE_USES_OLD_IOSTREAMS): diff --git a/ChangeLogs/ChangeLog-02a b/ChangeLogs/ChangeLog-02a index 9d34a8b2d85..c2a545dd87b 100644 --- a/ChangeLogs/ChangeLog-02a +++ b/ChangeLogs/ChangeLog-02a @@ -1,3 +1,16 @@ +Tue Feb 06 17:55:28 2001 Steve Huston <shuston@riverace.com> + + * examples/Reactor/Proactor/post_completions.cpp: Allow this to + run with AIOCB_Proactor. + + * ace/Asynch_IO.{h cpp}: Added ACE_Handler::handle (ACE_HANDLE) + function to set the handle; changed ACE_HANDLE ACE_Handler::handle + to return the actual value. + + * ace/Asynch_Acceptor.cpp (handle_accept): Call ACE_Handler::handle + to set the handle value for the new handler before calling its + open() method. + Tue Feb 06 17:16:43 2001 Steve Huston <shuston@riverace.com> * tests/MEM_Stream_Test.cpp: @@ -11,6 +24,7 @@ Mon Feb 5 16:19:20 2001 Douglas C. Schmidt <schmidt@ace.cs.wustl.edu> macros to use the form 0x0123 rather than 0123X. Thanks to Craig Rodrigues <crodrigu@bbn.com> for helping find this problem. + Mon Feb 5 18:20:11 2001 Krishnakumar B <kitty@cs.wustl.edu> * ace/config-sunos5.5.h (ACE_USES_OLD_IOSTREAMS): diff --git a/ChangeLogs/ChangeLog-03a b/ChangeLogs/ChangeLog-03a index 9d34a8b2d85..c2a545dd87b 100644 --- a/ChangeLogs/ChangeLog-03a +++ b/ChangeLogs/ChangeLog-03a @@ -1,3 +1,16 @@ +Tue Feb 06 17:55:28 2001 Steve Huston <shuston@riverace.com> + + * examples/Reactor/Proactor/post_completions.cpp: Allow this to + run with AIOCB_Proactor. + + * ace/Asynch_IO.{h cpp}: Added ACE_Handler::handle (ACE_HANDLE) + function to set the handle; changed ACE_HANDLE ACE_Handler::handle + to return the actual value. + + * ace/Asynch_Acceptor.cpp (handle_accept): Call ACE_Handler::handle + to set the handle value for the new handler before calling its + open() method. + Tue Feb 06 17:16:43 2001 Steve Huston <shuston@riverace.com> * tests/MEM_Stream_Test.cpp: @@ -11,6 +24,7 @@ Mon Feb 5 16:19:20 2001 Douglas C. Schmidt <schmidt@ace.cs.wustl.edu> macros to use the form 0x0123 rather than 0123X. Thanks to Craig Rodrigues <crodrigu@bbn.com> for helping find this problem. + Mon Feb 5 18:20:11 2001 Krishnakumar B <kitty@cs.wustl.edu> * ace/config-sunos5.5.h (ACE_USES_OLD_IOSTREAMS): diff --git a/ace/Asynch_Acceptor.cpp b/ace/Asynch_Acceptor.cpp index c32b8b330ed..2321302c331 100644 --- a/ace/Asynch_Acceptor.cpp +++ b/ace/Asynch_Acceptor.cpp @@ -263,6 +263,9 @@ ACE_Asynch_Acceptor<HANDLER>::handle_accept (const ACE_Asynch_Accept::Result &re if (result.act () != 0) new_handler->act (result.act ()); + // Set up the handler's new handle value + new_handler->handle (result.accept_handle ()); + // Initiate the handler new_handler->open (result.accept_handle (), result.message_block ()); diff --git a/ace/Asynch_IO.cpp b/ace/Asynch_IO.cpp index 0d2595f82b9..b7bd8edcc2b 100644 --- a/ace/Asynch_IO.cpp +++ b/ace/Asynch_IO.cpp @@ -911,12 +911,12 @@ ACE_Asynch_Transmit_File::Header_And_Trailer::transmit_buffers (void) // ********************************************************************* ACE_Handler::ACE_Handler (void) - : proactor_ (0) + : proactor_ (0), handle_ (ACE_INVALID_HANDLE) { } ACE_Handler::ACE_Handler (ACE_Proactor *d) - : proactor_ (d) + : proactor_ (d), handle_ (ACE_INVALID_HANDLE) { } @@ -980,7 +980,13 @@ ACE_Handler::proactor (ACE_Proactor *p) ACE_HANDLE ACE_Handler::handle (void) const { - return ACE_INVALID_HANDLE; + return this->handle_; +} + +void +ACE_Handler::handle (ACE_HANDLE h) +{ + this->handle_ = h; } // ************************************************************ diff --git a/ace/Asynch_IO.h b/ace/Asynch_IO.h index b2a67db6847..121e8c30eb5 100644 --- a/ace/Asynch_IO.h +++ b/ace/Asynch_IO.h @@ -1085,9 +1085,15 @@ public: */ virtual ACE_HANDLE handle (void) const; + /// Set the ACE_HANDLE value for this Handler. + virtual void handle (ACE_HANDLE); + protected: /// The proactor associated with this handler. ACE_Proactor *proactor_; + + /// The ACE_HANDLE in use with this handler. + ACE_HANDLE handle_; }; // Forward declarations diff --git a/examples/Reactor/Proactor/post_completions.cpp b/examples/Reactor/Proactor/post_completions.cpp index 2e94ba6f722..0f3ba203355 100644 --- a/examples/Reactor/Proactor/post_completions.cpp +++ b/examples/Reactor/Proactor/post_completions.cpp @@ -42,8 +42,8 @@ static ACE_Atomic_Op <ACE_Thread_Mutex, size_t> Completions_To_Go; -#if ((defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)) || \ - (defined (ACE_HAS_AIO_CALLS)) && !defined (ACE_POSIX_AIOCB_PROACTOR)) +#if (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)) || \ + defined (ACE_HAS_AIO_CALLS) // This only works on Win32 platforms and on Unix platforms supporting // POSIX aio calls. |