diff options
author | gbillock@chromium.org <gbillock@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-02-21 00:00:10 +0000 |
---|---|---|
committer | gbillock@chromium.org <gbillock@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-02-21 00:00:10 +0000 |
commit | f261762800a167f429ce0bf8a16ca3cee8d5b1c7 (patch) | |
tree | 8d3cf54b4951670a7d905712e28fb9faac6d52cb /chrome/browser/storage_monitor/transient_device_ids.cc | |
parent | efe80d214e26fe552853aaccee59b4881c4b6e24 (diff) | |
download | chromium_src-f261762800a167f429ce0bf8a16ca3cee8d5b1c7.zip chromium_src-f261762800a167f429ce0bf8a16ca3cee8d5b1c7.tar.gz chromium_src-f261762800a167f429ce0bf8a16ca3cee8d5b1c7.tar.bz2 |
Rename browser/system_monitor to browser/storage_monitor.
R=vandebo@chromium.org
BUG=None
Review URL: https://chromiumcodereview.appspot.com/12312002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@183664 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/storage_monitor/transient_device_ids.cc')
-rw-r--r-- | chrome/browser/storage_monitor/transient_device_ids.cc | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/chrome/browser/storage_monitor/transient_device_ids.cc b/chrome/browser/storage_monitor/transient_device_ids.cc new file mode 100644 index 0000000..c6231a5 --- /dev/null +++ b/chrome/browser/storage_monitor/transient_device_ids.cc @@ -0,0 +1,42 @@ +// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// TransientDeviceIds implementation. + +#include "chrome/browser/storage_monitor/transient_device_ids.h" + +#include "base/logging.h" +#include "chrome/browser/storage_monitor/media_storage_util.h" + +namespace chrome { + +TransientDeviceIds::TransientDeviceIds() : next_transient_id_(1) {} + +TransientDeviceIds::~TransientDeviceIds() {} + +uint64 TransientDeviceIds::GetTransientIdForDeviceId( + const std::string& device_id) { + DCHECK(thread_checker_.CalledOnValidThread()); + DCHECK(MediaStorageUtil::IsRemovableDevice(device_id)); + + bool inserted = + id_map_.insert(std::make_pair(device_id, next_transient_id_)).second; + if (inserted) { + // Inserted a device that has never been seen before. + ++next_transient_id_; + } + return id_map_[device_id]; +} + +const std::string TransientDeviceIds::DeviceIdFromTransientId( + uint64 transient_id) const { + for (DeviceIdToTransientIdMap::const_iterator iter = id_map_.begin(); + iter != id_map_.end(); ++iter) { + if (iter->second == transient_id) + return iter->first; + } + return std::string(); +} + +} // namespace chrome |