diff options
Diffstat (limited to 'TAO/tao/IIOP_Transport.h')
-rw-r--r-- | TAO/tao/IIOP_Transport.h | 51 |
1 files changed, 27 insertions, 24 deletions
diff --git a/TAO/tao/IIOP_Transport.h b/TAO/tao/IIOP_Transport.h index b8990bf2462..f882ef18ce2 100644 --- a/TAO/tao/IIOP_Transport.h +++ b/TAO/tao/IIOP_Transport.h @@ -61,25 +61,29 @@ public: /// Default destructor. ~TAO_IIOP_Transport (void); - /// Return the connection service handler - TAO_IIOP_SVC_HANDLER *service_handler (void); +protected: + /** @name Overridden Template Methods + * + * These are implementations of template methods declared by TAO_Transport. + */ + //@{ - /// The TAO_Transport methods, please check the documentation in - /// "tao/Pluggable.h" for more details. - virtual ACE_HANDLE handle (void); - - virtual ACE_Event_Handler *event_handler (void); + /// Access connection_handler_ as an <code>ACE_Event_Handler</code>. + /// Must be called with transport's lock held. + virtual ACE_Event_Handler *event_handler_i (void); /// Write the complete Message_Block chain to the connection. - virtual ssize_t send (const ACE_Message_Block *mblk, - const ACE_Time_Value *s = 0, - size_t *bytes_transferred = 0); + /// Must be called with transport's lock held. + virtual ssize_t send_i (const ACE_Message_Block *mblk, + const ACE_Time_Value *s = 0, + size_t *bytes_transferred = 0); /// Read len bytes from into buf. - virtual ssize_t recv (char *buf, - size_t len, - const ACE_Time_Value *s = 0); + /// Must be called with transport's lock held. + virtual ssize_t recv_i (char *buf, + size_t len, + const ACE_Time_Value *s = 0); /// Read and process the message from the connection. The processing /// of the message is done by delegating the work to the underlying @@ -87,8 +91,13 @@ public: virtual int read_process_message (ACE_Time_Value *max_time_value = 0, int block =0); - virtual int register_handler (void); + virtual int register_handler_i (void); + + /// Method to do whatever it needs to do when the connection + /// handler is being closed and destroyed. + virtual void transition_handler_state_i (void); +public: /// @@TODO: These methods IMHO should have more meaningful /// names. The names seem to indicate nothing. virtual int send_request (TAO_Stub *stub, @@ -116,10 +125,9 @@ public: ACE_THROW_SPEC ((CORBA::SystemException)); - virtual CORBA::Boolean - send_request_header (TAO_Operation_Details &opdetails, - TAO_Target_Specification &spec, - TAO_OutputCDR &msg); + virtual CORBA::Boolean send_request_header (TAO_Operation_Details &opdetails, + TAO_Target_Specification &spec, + TAO_OutputCDR &msg); /// Initialising the messaging object virtual int messaging_init (CORBA::Octet major, @@ -128,12 +136,7 @@ public: /// Open the service context list and process it. virtual int tear_listen_point_list (TAO_InputCDR &cdr); - /// Method to do whatever it needs to do when the connection - /// handler is being closed and destroyed. - virtual void transition_handler_state (void); - - // Access the connection handler - virtual TAO_Connection_Handler* connection_handler (void) const; + //@} private: |