#include <POSIX_Asynch_IO.h>
Inheritance diagram for ACE_POSIX_Asynch_Write_File_Result:
Protected Member Functions | |
ACE_POSIX_Asynch_Write_File_Result (const ACE_Handler::Proxy_Ptr &handler_proxy, ACE_HANDLE handle, ACE_Message_Block &message_block, size_t bytes_to_write, const void *act, u_long offset, u_long offset_high, ACE_HANDLE event, int priority, int signal_number) | |
virtual void | complete (size_t bytes_transferred, int success, const void *completion_key, u_long error) |
ACE_Proactor will call this method when the write completes. | |
virtual | ~ACE_POSIX_Asynch_Write_File_Result (void) |
Destructor. | |
Friends | |
class | ACE_POSIX_Asynch_Write_File |
Factory classes will have special permissions. | |
class | ACE_POSIX_Proactor |
The Proactor constructs the Result class for faking results. |
This class has all the information necessary for the to uniquiely identify the completion of the asynchronous write.
This class differs slightly from <ACE_Asynch_Write_Stream::Result> as it calls back <ACE_Handler::handle_write_file> on the instead of <ACE_Handler::handle_write_stream>. No additional state is required by this class as can store the .
Definition at line 506 of file POSIX_Asynch_IO.h.
|
Constructor is protected since creation is limited to ACE_Asynch_Write_File factory. Definition at line 579 of file POSIX_Asynch_IO.cpp. References ACE_Handler::Proxy_Ptr.
00589 : ACE_POSIX_Asynch_Write_Stream_Result (handler_proxy, 00590 handle, 00591 message_block, 00592 bytes_to_write, 00593 act, 00594 event, 00595 priority, 00596 signal_number) 00597 { 00598 this->aio_offset = offset; 00599 // 00600 // @@ Support offset_high with aiocb64. 00601 // 00602 ACE_UNUSED_ARG (offset_high); 00603 } |
|
Destructor.
Definition at line 632 of file POSIX_Asynch_IO.cpp. References ~ACE_POSIX_Asynch_Write_File_Result(). Referenced by ~ACE_POSIX_Asynch_Write_File_Result().
00633 { 00634 } |
|
ACE_Proactor will call this method when the write completes.
Reimplemented from ACE_POSIX_Asynch_Write_Stream_Result. Definition at line 606 of file POSIX_Asynch_IO.cpp. References complete(), ACE_Refcounted_Auto_Ptr< X, ACE_LOCK >::get(), ACE_Handler::handle_write_file(), and ACE_Message_Block::rd_ptr(). Referenced by complete().
00610 { 00611 // Copy the data. 00612 this->bytes_transferred_ = bytes_transferred; 00613 this->success_ = success; 00614 this->completion_key_ = completion_key; 00615 this->error_ = error; 00616 00617 // <error> is available in <aio_resultp.aio_error> 00618 ACE_UNUSED_ARG (error); 00619 00620 // Appropriately move the pointers in the message block. 00621 this->message_block_.rd_ptr (bytes_transferred); 00622 00623 // Create the interface result class. 00624 ACE_Asynch_Write_File::Result result (this); 00625 00626 // Call the application handler. 00627 ACE_Handler *handler = this->handler_proxy_.get ()->handler (); 00628 if (handler != 0) 00629 handler->handle_write_file (result); 00630 } |
|
Factory classes will have special permissions.
Definition at line 510 of file POSIX_Asynch_IO.h. |
|
The Proactor constructs the Result class for faking results.
Reimplemented from ACE_POSIX_Asynch_Write_Stream_Result. Definition at line 513 of file POSIX_Asynch_IO.h. |