| OLD | NEW | 
|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #ifndef MOJO_SERVICES_NETWORK_TCP_CONNECTED_SOCKET_H_ | 5 #ifndef MOJO_SERVICES_NETWORK_TCP_CONNECTED_SOCKET_H_ | 
| 6 #define MOJO_SERVICES_NETWORK_TCP_CONNECTED_SOCKET_H_ | 6 #define MOJO_SERVICES_NETWORK_TCP_CONNECTED_SOCKET_H_ | 
| 7 | 7 | 
| 8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" | 
| 9 #include "base/memory/weak_ptr.h" | 9 #include "base/memory/weak_ptr.h" | 
| 10 #include "mojo/common/handle_watcher.h" | 10 #include "mojo/common/handle_watcher.h" | 
| (...skipping 12 matching lines...) Expand all  Loading... | 
| 23                          ScopedDataPipeConsumerHandle send_stream, | 23                          ScopedDataPipeConsumerHandle send_stream, | 
| 24                          ScopedDataPipeProducerHandle receive_stream); | 24                          ScopedDataPipeProducerHandle receive_stream); | 
| 25   ~TCPConnectedSocketImpl() override; | 25   ~TCPConnectedSocketImpl() override; | 
| 26 | 26 | 
| 27  private: | 27  private: | 
| 28   // "Receiving" in this context means reading from TCPSocket and writing to | 28   // "Receiving" in this context means reading from TCPSocket and writing to | 
| 29   // the Mojo receive_stream. | 29   // the Mojo receive_stream. | 
| 30   void ReceiveMore(); | 30   void ReceiveMore(); | 
| 31   void OnReceiveStreamReady(MojoResult result); | 31   void OnReceiveStreamReady(MojoResult result); | 
| 32   void DidReceive(bool completed_synchronously, int result); | 32   void DidReceive(bool completed_synchronously, int result); | 
|  | 33   void ShutdownReceive(); | 
| 33 | 34 | 
| 34   // "Writing" is reading from the Mojo send_stream and writing to the | 35   // "Writing" is reading from the Mojo send_stream and writing to the | 
| 35   // TCPSocket. | 36   // TCPSocket. | 
| 36   void SendMore(); | 37   void SendMore(); | 
| 37   void OnSendStreamReady(MojoResult result); | 38   void OnSendStreamReady(MojoResult result); | 
| 38   void DidSend(bool completed_asynchronously, int result); | 39   void DidSend(bool completed_asynchronously, int result); | 
|  | 40   void ShutdownSend(); | 
| 39 | 41 | 
| 40   scoped_ptr<net::TCPSocket> socket_; | 42   scoped_ptr<net::TCPSocket> socket_; | 
| 41 | 43 | 
| 42   // The *stream handles will be null while there is an in-progress transation | 44   // The *stream handles will be null while there is an in-progress transation | 
| 43   // between net and mojo. During this time, the handle will be owned by the | 45   // between net and mojo. During this time, the handle will be owned by the | 
| 44   // *PendingBuffer. | 46   // *PendingBuffer. | 
| 45 | 47 | 
| 46   // For reading from the network and writing to Mojo pipe. | 48   // For reading from the network and writing to Mojo pipe. | 
| 47   ScopedDataPipeConsumerHandle send_stream_; | 49   ScopedDataPipeConsumerHandle send_stream_; | 
| 48   common::HandleWatcher receive_handle_watcher_; | 50   common::HandleWatcher receive_handle_watcher_; | 
| 49   scoped_refptr<NetToMojoPendingBuffer> pending_receive_; | 51   scoped_refptr<NetToMojoPendingBuffer> pending_receive_; | 
| 50 | 52 | 
| 51   // For reading from the Mojo pipe and writing to the network. | 53   // For reading from the Mojo pipe and writing to the network. | 
| 52   ScopedDataPipeProducerHandle receive_stream_; | 54   ScopedDataPipeProducerHandle receive_stream_; | 
| 53   common::HandleWatcher send_handle_watcher_; | 55   common::HandleWatcher send_handle_watcher_; | 
| 54   scoped_refptr<MojoToNetPendingBuffer> pending_send_; | 56   scoped_refptr<MojoToNetPendingBuffer> pending_send_; | 
| 55 | 57 | 
| 56   base::WeakPtrFactory<TCPConnectedSocketImpl> weak_ptr_factory_; | 58   base::WeakPtrFactory<TCPConnectedSocketImpl> weak_ptr_factory_; | 
| 57 }; | 59 }; | 
| 58 | 60 | 
| 59 }  // namespace mojo | 61 }  // namespace mojo | 
| 60 | 62 | 
| 61 #endif  // MOJO_SERVICES_NETWORK_TCP_CONNECTED_SOCKET_H_ | 63 #endif  // MOJO_SERVICES_NETWORK_TCP_CONNECTED_SOCKET_H_ | 
| OLD | NEW | 
|---|