Home | History | Annotate | Download | only in system
      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
      3 // found in the LICENSE file.
      4 
      5 #include "mojo/system/message_in_transit_queue.h"
      6 
      7 #include "base/logging.h"
      8 #include "base/stl_util.h"
      9 
     10 namespace mojo {
     11 namespace system {
     12 
     13 MessageInTransitQueue::MessageInTransitQueue() {
     14 }
     15 
     16 MessageInTransitQueue::MessageInTransitQueue(PassContents,
     17                                              MessageInTransitQueue* other) {
     18   queue_.swap(other->queue_);
     19 }
     20 
     21 MessageInTransitQueue::~MessageInTransitQueue() {
     22   if (!IsEmpty()) {
     23     LOG(WARNING) << "Destroying nonempty message queue";
     24     Clear();
     25   }
     26 }
     27 
     28 void MessageInTransitQueue::Clear() {
     29   STLDeleteElements(&queue_);
     30 }
     31 
     32 }  // namespace system
     33 }  // namespace mojo
     34