diff options
Diffstat (limited to 'TAO/tao/Transport.h')
-rw-r--r-- | TAO/tao/Transport.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/TAO/tao/Transport.h b/TAO/tao/Transport.h index 68f674088de..77f7c4b1c40 100644 --- a/TAO/tao/Transport.h +++ b/TAO/tao/Transport.h @@ -330,6 +330,20 @@ public: size_t len, const ACE_Time_Value *timeout = 0); + /// Read len bytes from into buf, by calling recv_n + /** + * This method serializes on handler_lock_, guaranteeing that only + * thread can execute it on the same instance concurrently. + * + * @param buffer ORB allocated buffer where the data should be + * @@ The ACE_Time_Value *s is just a place holder for now. It is + * not clear this this is the best place to specify this. The actual + * timeout values will be kept in the Policies. + */ + ssize_t recv_n (char *buffer, + size_t len, + const ACE_Time_Value *timeout = 0); + /// Return the identifier for this transport instance. /** @@ -420,6 +434,17 @@ protected: size_t len, const ACE_Time_Value *timeout = 0) = 0; + // Read len bytes from into buf, by calling recv_n () + /** + * @param buffer ORB allocated buffer where the data should be + * @@ The ACE_Time_Value *s is just a place holder for now. It is + * not clear this this is the best place to specify this. The actual + * timeout values will be kept in the Policies. + */ + virtual ssize_t recv_n_i (char *buffer, + size_t len, + const ACE_Time_Value *timeout = 0); + public: /// This is a request for the transport object to write a |