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

Side by Side Diff: storage/browser/quota/quota_manager.h

Issue 2052663003: Move implementation of QuotaManager.getVolumeInfo to base::SysInfo. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Address review comments. Created 4 years, 6 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
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 #ifndef STORAGE_BROWSER_QUOTA_QUOTA_MANAGER_H_ 5 #ifndef STORAGE_BROWSER_QUOTA_QUOTA_MANAGER_H_
6 #define STORAGE_BROWSER_QUOTA_QUOTA_MANAGER_H_ 6 #define STORAGE_BROWSER_QUOTA_QUOTA_MANAGER_H_
7 7
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <deque> 10 #include <deque>
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
90 const GetOriginCallback& callback) = 0; 90 const GetOriginCallback& callback) = 0;
91 }; 91 };
92 92
93 // An interface called by QuotaTemporaryStorageEvictor. 93 // An interface called by QuotaTemporaryStorageEvictor.
94 class STORAGE_EXPORT QuotaEvictionHandler { 94 class STORAGE_EXPORT QuotaEvictionHandler {
95 public: 95 public:
96 using EvictOriginDataCallback = StatusCallback; 96 using EvictOriginDataCallback = StatusCallback;
97 using UsageAndQuotaCallback = base::Callback< 97 using UsageAndQuotaCallback = base::Callback<
98 void(QuotaStatusCode status, const UsageAndQuota& usage_and_quota)>; 98 void(QuotaStatusCode status, const UsageAndQuota& usage_and_quota)>;
99 using VolumeInfoCallback = base::Callback< 99 using VolumeInfoCallback = base::Callback<
100 void(bool success, uint64_t available_space, uint64_t total_space)>; 100 void(bool success, int64_t available_space, int64_t total_space)>;
101 101
102 // Returns next origin to evict. It might return an empty GURL when there are 102 // Returns next origin to evict. It might return an empty GURL when there are
103 // no evictable origins. 103 // no evictable origins.
104 virtual void GetEvictionOrigin(StorageType type, 104 virtual void GetEvictionOrigin(StorageType type,
105 const std::set<GURL>& extra_exceptions, 105 const std::set<GURL>& extra_exceptions,
106 int64_t global_quota, 106 int64_t global_quota,
107 const GetOriginCallback& callback) = 0; 107 const GetOriginCallback& callback) = 0;
108 108
109 virtual void EvictOriginData( 109 virtual void EvictOriginData(
110 const GURL& origin, 110 const GURL& origin,
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
314 class DumpOriginInfoTableHelper; 314 class DumpOriginInfoTableHelper;
315 315
316 typedef QuotaDatabase::QuotaTableEntry QuotaTableEntry; 316 typedef QuotaDatabase::QuotaTableEntry QuotaTableEntry;
317 typedef QuotaDatabase::OriginInfoTableEntry OriginInfoTableEntry; 317 typedef QuotaDatabase::OriginInfoTableEntry OriginInfoTableEntry;
318 typedef std::vector<QuotaTableEntry> QuotaTableEntries; 318 typedef std::vector<QuotaTableEntry> QuotaTableEntries;
319 typedef std::vector<OriginInfoTableEntry> OriginInfoTableEntries; 319 typedef std::vector<OriginInfoTableEntry> OriginInfoTableEntries;
320 320
321 // Function pointer type used to store the function which returns 321 // Function pointer type used to store the function which returns
322 // information about the volume containing the given FilePath. 322 // information about the volume containing the given FilePath.
323 using GetVolumeInfoFn = bool(*)(const base::FilePath&, 323 using GetVolumeInfoFn = bool(*)(const base::FilePath&,
324 uint64_t* available, uint64_t* total); 324 int64_t* available, int64_t* total);
325 325
326 typedef base::Callback<void(const QuotaTableEntries&)> 326 typedef base::Callback<void(const QuotaTableEntries&)>
327 DumpQuotaTableCallback; 327 DumpQuotaTableCallback;
328 typedef base::Callback<void(const OriginInfoTableEntries&)> 328 typedef base::Callback<void(const OriginInfoTableEntries&)>
329 DumpOriginInfoTableCallback; 329 DumpOriginInfoTableCallback;
330 330
331 typedef CallbackQueue<base::Closure> ClosureQueue; 331 typedef CallbackQueue<base::Closure> ClosureQueue;
332 typedef CallbackQueue<AvailableSpaceCallback, QuotaStatusCode, int64_t> 332 typedef CallbackQueue<AvailableSpaceCallback, QuotaStatusCode, int64_t>
333 AvailableSpaceCallbackQueue; 333 AvailableSpaceCallbackQueue;
334 typedef CallbackQueueMap<QuotaCallback, std::string, QuotaStatusCode, int64_t> 334 typedef CallbackQueueMap<QuotaCallback, std::string, QuotaStatusCode, int64_t>
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
412 const GetOriginCallback& callback) override; 412 const GetOriginCallback& callback) override;
413 void EvictOriginData(const GURL& origin, 413 void EvictOriginData(const GURL& origin,
414 StorageType type, 414 StorageType type,
415 const EvictOriginDataCallback& callback) override; 415 const EvictOriginDataCallback& callback) override;
416 void GetUsageAndQuotaForEviction( 416 void GetUsageAndQuotaForEviction(
417 const UsageAndQuotaCallback& callback) override; 417 const UsageAndQuotaCallback& callback) override;
418 void AsyncGetVolumeInfo(const VolumeInfoCallback& callback) override; 418 void AsyncGetVolumeInfo(const VolumeInfoCallback& callback) override;
419 419
420 void DidGetVolumeInfo( 420 void DidGetVolumeInfo(
421 const VolumeInfoCallback& callback, 421 const VolumeInfoCallback& callback,
422 uint64_t* available_space, uint64_t* total_space, bool success); 422 int64_t* available_space, int64_t* total_space, bool success);
423 423
424 void GetLRUOrigin(StorageType type, const GetOriginCallback& callback); 424 void GetLRUOrigin(StorageType type, const GetOriginCallback& callback);
425 425
426 void DidSetTemporaryGlobalOverrideQuota(const QuotaCallback& callback, 426 void DidSetTemporaryGlobalOverrideQuota(const QuotaCallback& callback,
427 const int64_t* new_quota, 427 const int64_t* new_quota,
428 bool success); 428 bool success);
429 void DidGetPersistentHostQuota(const std::string& host, 429 void DidGetPersistentHostQuota(const std::string& host,
430 const int64_t* quota, 430 const int64_t* quota,
431 bool success); 431 bool success);
432 void DidSetPersistentHostQuota(const std::string& host, 432 void DidSetPersistentHostQuota(const std::string& host,
(...skipping 15 matching lines...) Expand all
448 void DeleteOnCorrectThread() const; 448 void DeleteOnCorrectThread() const;
449 449
450 void PostTaskAndReplyWithResultForDBThread( 450 void PostTaskAndReplyWithResultForDBThread(
451 const tracked_objects::Location& from_here, 451 const tracked_objects::Location& from_here,
452 const base::Callback<bool(QuotaDatabase*)>& task, 452 const base::Callback<bool(QuotaDatabase*)>& task,
453 const base::Callback<void(bool)>& reply); 453 const base::Callback<void(bool)>& reply);
454 454
455 static int64_t CallGetAmountOfFreeDiskSpace( 455 static int64_t CallGetAmountOfFreeDiskSpace(
456 GetVolumeInfoFn get_vol_info_fn, 456 GetVolumeInfoFn get_vol_info_fn,
457 const base::FilePath& profile_path); 457 const base::FilePath& profile_path);
458 static bool GetVolumeInfo(const base::FilePath& path,
459 uint64_t* available_space,
460 uint64_t* total_size);
461 458
462 const bool is_incognito_; 459 const bool is_incognito_;
463 const base::FilePath profile_path_; 460 const base::FilePath profile_path_;
464 461
465 scoped_refptr<QuotaManagerProxy> proxy_; 462 scoped_refptr<QuotaManagerProxy> proxy_;
466 bool db_disabled_; 463 bool db_disabled_;
467 bool eviction_disabled_; 464 bool eviction_disabled_;
468 scoped_refptr<base::SingleThreadTaskRunner> io_thread_; 465 scoped_refptr<base::SingleThreadTaskRunner> io_thread_;
469 scoped_refptr<base::SequencedTaskRunner> db_thread_; 466 scoped_refptr<base::SequencedTaskRunner> db_thread_;
470 mutable std::unique_ptr<QuotaDatabase> database_; 467 mutable std::unique_ptr<QuotaDatabase> database_;
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
516 513
517 struct QuotaManagerDeleter { 514 struct QuotaManagerDeleter {
518 static void Destruct(const QuotaManager* manager) { 515 static void Destruct(const QuotaManager* manager) {
519 manager->DeleteOnCorrectThread(); 516 manager->DeleteOnCorrectThread();
520 } 517 }
521 }; 518 };
522 519
523 } // namespace storage 520 } // namespace storage
524 521
525 #endif // STORAGE_BROWSER_QUOTA_QUOTA_MANAGER_H_ 522 #endif // STORAGE_BROWSER_QUOTA_QUOTA_MANAGER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698