Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(567)

Side by Side Diff: webkit/browser/fileapi/sandbox_prioritized_origin_database.cc

Issue 145693005: [FileAPI] Replace default leveldb::Env with leveldb::MemEnv in tests. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 "webkit/browser/fileapi/sandbox_prioritized_origin_database.h" 5 #include "webkit/browser/fileapi/sandbox_prioritized_origin_database.h"
6 6
7 #include "base/file_util.h" 7 #include "base/file_util.h"
8 #include "base/files/file_path.h" 8 #include "base/files/file_path.h"
9 #include "base/files/scoped_platform_file_closer.h" 9 #include "base/files/scoped_platform_file_closer.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 if (!base::ReadFileToString(path, &buffer)) 50 if (!base::ReadFileToString(path, &buffer))
51 return false; 51 return false;
52 Pickle pickle(buffer.data(), buffer.size()); 52 Pickle pickle(buffer.data(), buffer.size());
53 PickleIterator iter(pickle); 53 PickleIterator iter(pickle);
54 return pickle.ReadString(&iter, origin) && !origin->empty(); 54 return pickle.ReadString(&iter, origin) && !origin->empty();
55 } 55 }
56 56
57 } // namespace 57 } // namespace
58 58
59 SandboxPrioritizedOriginDatabase::SandboxPrioritizedOriginDatabase( 59 SandboxPrioritizedOriginDatabase::SandboxPrioritizedOriginDatabase(
60 const base::FilePath& file_system_directory) 60 const base::FilePath& file_system_directory,
61 leveldb::Env* env_override)
61 : file_system_directory_(file_system_directory), 62 : file_system_directory_(file_system_directory),
63 env_override_(env_override),
62 primary_origin_file_( 64 primary_origin_file_(
63 file_system_directory_.Append(kPrimaryOriginFile)) { 65 file_system_directory_.Append(kPrimaryOriginFile)) {
64 } 66 }
65 67
66 SandboxPrioritizedOriginDatabase::~SandboxPrioritizedOriginDatabase() { 68 SandboxPrioritizedOriginDatabase::~SandboxPrioritizedOriginDatabase() {
67 } 69 }
68 70
69 bool SandboxPrioritizedOriginDatabase::InitializePrimaryOrigin( 71 bool SandboxPrioritizedOriginDatabase::InitializePrimaryOrigin(
70 const std::string& origin) { 72 const std::string& origin) {
71 if (!primary_origin_database_) { 73 if (!primary_origin_database_) {
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
206 bool create) { 208 bool create) {
207 MaybeLoadPrimaryOrigin(); 209 MaybeLoadPrimaryOrigin();
208 MaybeInitializeNonPrimaryDatabase(create); 210 MaybeInitializeNonPrimaryDatabase(create);
209 } 211 }
210 212
211 void SandboxPrioritizedOriginDatabase::MaybeInitializeNonPrimaryDatabase( 213 void SandboxPrioritizedOriginDatabase::MaybeInitializeNonPrimaryDatabase(
212 bool create) { 214 bool create) {
213 if (origin_database_) 215 if (origin_database_)
214 return; 216 return;
215 217
216 origin_database_.reset(new SandboxOriginDatabase(file_system_directory_)); 218 origin_database_.reset(new SandboxOriginDatabase(file_system_directory_,
219 env_override_));
217 if (!create && !base::DirectoryExists(origin_database_->GetDatabasePath())) { 220 if (!create && !base::DirectoryExists(origin_database_->GetDatabasePath())) {
218 origin_database_.reset(); 221 origin_database_.reset();
219 return; 222 return;
220 } 223 }
221 } 224 }
222 225
223 SandboxOriginDatabase* 226 SandboxOriginDatabase*
224 SandboxPrioritizedOriginDatabase::GetSandboxOriginDatabase() { 227 SandboxPrioritizedOriginDatabase::GetSandboxOriginDatabase() {
225 MaybeInitializeNonPrimaryDatabase(true); 228 MaybeInitializeNonPrimaryDatabase(true);
226 return origin_database_.get(); 229 return origin_database_.get();
227 } 230 }
228 231
229 } // namespace fileapi 232 } // namespace fileapi
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698