| OLD | NEW | 
|---|
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 #include "mojo/system/data_pipe_producer_dispatcher.h" | 5 #include "mojo/system/data_pipe_producer_dispatcher.h" | 
| 6 | 6 | 
| 7 #include "base/logging.h" | 7 #include "base/logging.h" | 
| 8 #include "mojo/system/data_pipe.h" | 8 #include "mojo/system/data_pipe.h" | 
| 9 #include "mojo/system/memory.h" | 9 #include "mojo/system/memory.h" | 
| 10 | 10 | 
| 11 namespace mojo { | 11 namespace mojo { | 
| 12 namespace system { | 12 namespace system { | 
| 13 | 13 | 
| 14 DataPipeProducerDispatcher::DataPipeProducerDispatcher() { | 14 DataPipeProducerDispatcher::DataPipeProducerDispatcher() { | 
| 15 } | 15 } | 
| 16 | 16 | 
| 17 void DataPipeProducerDispatcher::Init(scoped_refptr<DataPipe> data_pipe) { | 17 void DataPipeProducerDispatcher::Init(scoped_refptr<DataPipe> data_pipe) { | 
| 18   DCHECK(data_pipe); | 18   DCHECK(data_pipe.get()); | 
| 19   data_pipe_ = data_pipe; | 19   data_pipe_ = data_pipe; | 
| 20 } | 20 } | 
| 21 | 21 | 
| 22 Dispatcher::Type DataPipeProducerDispatcher::GetType() const { | 22 Dispatcher::Type DataPipeProducerDispatcher::GetType() const { | 
| 23   return kTypeDataPipeProducer; | 23   return kTypeDataPipeProducer; | 
| 24 } | 24 } | 
| 25 | 25 | 
| 26 DataPipeProducerDispatcher::~DataPipeProducerDispatcher() { | 26 DataPipeProducerDispatcher::~DataPipeProducerDispatcher() { | 
| 27   // |Close()|/|CloseImplNoLock()| should have taken care of the pipe. | 27   // |Close()|/|CloseImplNoLock()| should have taken care of the pipe. | 
| 28   DCHECK(!data_pipe_); | 28   DCHECK(!data_pipe_.get()); | 
| 29 } | 29 } | 
| 30 | 30 | 
| 31 void DataPipeProducerDispatcher::CancelAllWaitersNoLock() { | 31 void DataPipeProducerDispatcher::CancelAllWaitersNoLock() { | 
| 32   lock().AssertAcquired(); | 32   lock().AssertAcquired(); | 
| 33   data_pipe_->ProducerCancelAllWaiters(); | 33   data_pipe_->ProducerCancelAllWaiters(); | 
| 34 } | 34 } | 
| 35 | 35 | 
| 36 void DataPipeProducerDispatcher::CloseImplNoLock() { | 36 void DataPipeProducerDispatcher::CloseImplNoLock() { | 
| 37   lock().AssertAcquired(); | 37   lock().AssertAcquired(); | 
| 38   data_pipe_->ProducerClose(); | 38   data_pipe_->ProducerClose(); | 
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 98   data_pipe_->ProducerRemoveWaiter(waiter, signals_state); | 98   data_pipe_->ProducerRemoveWaiter(waiter, signals_state); | 
| 99 } | 99 } | 
| 100 | 100 | 
| 101 bool DataPipeProducerDispatcher::IsBusyNoLock() const { | 101 bool DataPipeProducerDispatcher::IsBusyNoLock() const { | 
| 102   lock().AssertAcquired(); | 102   lock().AssertAcquired(); | 
| 103   return data_pipe_->ProducerIsBusy(); | 103   return data_pipe_->ProducerIsBusy(); | 
| 104 } | 104 } | 
| 105 | 105 | 
| 106 }  // namespace system | 106 }  // namespace system | 
| 107 }  // namespace mojo | 107 }  // namespace mojo | 
| OLD | NEW | 
|---|