diff options
author | kkimlabs@chromium.org <kkimlabs@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-05-11 14:19:52 +0000 |
---|---|---|
committer | kkimlabs@chromium.org <kkimlabs@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-05-11 14:19:52 +0000 |
commit | 174a621f96913029748c965389706d2b32eb153b (patch) | |
tree | 53f6483025d2b4996abf854ec9fe776e6545e165 /components/enhanced_bookmarks/test_image_store.cc | |
parent | 41a7fd691f089cb0f40cb88c328b3ea8313fb644 (diff) | |
download | chromium_src-174a621f96913029748c965389706d2b32eb153b.zip chromium_src-174a621f96913029748c965389706d2b32eb153b.tar.gz chromium_src-174a621f96913029748c965389706d2b32eb153b.tar.bz2 |
Local salient image storage for enhanced bookmark experiment.
BUG=368034
Review URL: https://codereview.chromium.org/259863007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269703 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'components/enhanced_bookmarks/test_image_store.cc')
-rw-r--r-- | components/enhanced_bookmarks/test_image_store.cc | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/components/enhanced_bookmarks/test_image_store.cc b/components/enhanced_bookmarks/test_image_store.cc new file mode 100644 index 0000000..dacb7c9 --- /dev/null +++ b/components/enhanced_bookmarks/test_image_store.cc @@ -0,0 +1,73 @@ +// Copyright 2014 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. + +#include "components/enhanced_bookmarks/test_image_store.h" + +#include "ui/gfx/geometry/size.h" +#include "url/gurl.h" + +TestImageStore::TestImageStore() { +} + +bool TestImageStore::HasKey(const GURL& page_url) { + DCHECK(thread_checker_.CalledOnValidThread()); + + return store_.find(page_url) != store_.end(); +} + +void TestImageStore::Insert(const GURL& page_url, + const GURL& image_url, + const gfx::Image& image) { + DCHECK(thread_checker_.CalledOnValidThread()); + + Erase(page_url); + store_.insert(std::make_pair( + page_url, + std::make_pair(image, + image_url))); +} + +void TestImageStore::Erase(const GURL& page_url) { + DCHECK(thread_checker_.CalledOnValidThread()); + + store_.erase(page_url); +} + +std::pair<gfx::Image, GURL> TestImageStore::Get(const GURL& page_url) { + DCHECK(thread_checker_.CalledOnValidThread()); + + ImageMap::const_iterator pair_enumerator = store_.find(page_url); + if (pair_enumerator == store_.end()) + return std::make_pair(gfx::Image(), GURL()); + + return std::make_pair(store_[page_url].first, store_[page_url].second); +} + +gfx::Size TestImageStore::GetSize(const GURL& page_url) { + DCHECK(thread_checker_.CalledOnValidThread()); + + ImageMap::const_iterator pair_enumerator = store_.find(page_url); + if (pair_enumerator == store_.end()) + return gfx::Size(); + + return store_[page_url].first.Size(); +} + +void TestImageStore::GetAllPageUrls(std::set<GURL>* urls) { + DCHECK(thread_checker_.CalledOnValidThread()); + DCHECK(urls->empty()); + + for (ImageMap::const_iterator it = store_.begin(); it != store_.end(); ++it) + urls->insert(it->first); +} + +void TestImageStore::ClearAll() { + DCHECK(thread_checker_.CalledOnValidThread()); + + store_.clear(); +} + +TestImageStore::~TestImageStore() { + DCHECK(thread_checker_.CalledOnValidThread()); +} |