| Index: webkit/quota/quota_manager.h
|
| diff --git a/webkit/quota/quota_manager.h b/webkit/quota/quota_manager.h
|
| index 255c0e63426e24d29da9bcc4f7bdda2a2d3e4314..81d4b038371e55213d7c6d65e070c3c83155671d 100644
|
| --- a/webkit/quota/quota_manager.h
|
| +++ b/webkit/quota/quota_manager.h
|
| @@ -11,13 +11,14 @@
|
| #include <map>
|
| #include <set>
|
| #include <string>
|
| +#include <utility>
|
| #include <vector>
|
|
|
| #include "base/basictypes.h"
|
| #include "base/callback.h"
|
| #include "base/file_path.h"
|
| #include "base/memory/ref_counted.h"
|
| -#include "base/memory/scoped_callback_factory.h"
|
| +#include "base/memory/weak_ptr.h"
|
| #include "base/memory/scoped_ptr.h"
|
| #include "webkit/quota/quota_database.h"
|
| #include "webkit/quota/quota_client.h"
|
| @@ -50,28 +51,28 @@ class QuotaEvictionHandler {
|
| public:
|
| virtual ~QuotaEvictionHandler() {}
|
|
|
| - typedef Callback1<const GURL&>::Type GetLRUOriginCallback;
|
| + typedef base::Callback<void(const GURL&)> GetLRUOriginCallback;
|
| typedef StatusCallback EvictOriginDataCallback;
|
| - typedef Callback5<QuotaStatusCode,
|
| - int64 /* usage */,
|
| - int64 /* unlimited_usage */,
|
| - int64 /* quota */,
|
| - int64 /* physical_available */ >::Type
|
| + typedef base::Callback<void(QuotaStatusCode,
|
| + int64 /* usage */,
|
| + int64 /* unlimited_usage */,
|
| + int64 /* quota */,
|
| + int64 /* physical_available */)>
|
| GetUsageAndQuotaForEvictionCallback;
|
|
|
| // Returns the least recently used origin. It might return empty
|
| // GURL when there are no evictable origins.
|
| virtual void GetLRUOrigin(
|
| StorageType type,
|
| - GetLRUOriginCallback* callback) = 0;
|
| + const GetLRUOriginCallback& callback) = 0;
|
|
|
| virtual void EvictOriginData(
|
| const GURL& origin,
|
| StorageType type,
|
| - EvictOriginDataCallback* callback) = 0;
|
| + const EvictOriginDataCallback& callback) = 0;
|
|
|
| virtual void GetUsageAndQuotaForEviction(
|
| - GetUsageAndQuotaForEvictionCallback* callback) = 0;
|
| + const GetUsageAndQuotaForEvictionCallback& callback) = 0;
|
| };
|
|
|
| // The quota manager class. This class is instantiated per profile and
|
| @@ -82,9 +83,10 @@ class QuotaManager : public QuotaTaskObserver,
|
| public base::RefCountedThreadSafe<
|
| QuotaManager, QuotaManagerDeleter> {
|
| public:
|
| - typedef Callback3<QuotaStatusCode,
|
| - int64 /* usage */,
|
| - int64 /* quota */>::Type GetUsageAndQuotaCallback;
|
| + typedef base::Callback<void(QuotaStatusCode,
|
| + int64 /* usage */,
|
| + int64 /* quota */)>
|
| + GetUsageAndQuotaCallback;
|
|
|
| QuotaManager(bool is_incognito,
|
| const FilePath& profile_path,
|
| @@ -102,7 +104,7 @@ class QuotaManager : public QuotaTaskObserver,
|
| // note: returns host usage and quota
|
| virtual void GetUsageAndQuota(const GURL& origin,
|
| StorageType type,
|
| - GetUsageAndQuotaCallback* callback);
|
| + const GetUsageAndQuotaCallback& callback);
|
|
|
| // Called by clients via proxy.
|
| // Client storage should call this method when storage is accessed.
|
| @@ -131,20 +133,20 @@ class QuotaManager : public QuotaTaskObserver,
|
| // Called by UI.
|
| virtual void DeleteOriginData(const GURL& origin,
|
| StorageType type,
|
| - StatusCallback* callback);
|
| + const StatusCallback& callback);
|
|
|
| // Called by UI and internal modules.
|
| - void GetAvailableSpace(AvailableSpaceCallback* callback);
|
| - void GetTemporaryGlobalQuota(QuotaCallback* callback);
|
| - void SetTemporaryGlobalQuota(int64 new_quota, QuotaCallback* callback);
|
| + void GetAvailableSpace(const AvailableSpaceCallback& callback);
|
| + void GetTemporaryGlobalQuota(const QuotaCallback& callback);
|
| + void SetTemporaryGlobalQuota(int64 new_quota, const QuotaCallback& callback);
|
| void GetPersistentHostQuota(const std::string& host,
|
| - HostQuotaCallback* callback);
|
| + const HostQuotaCallback& callback);
|
| void SetPersistentHostQuota(const std::string& host,
|
| int64 new_quota,
|
| - HostQuotaCallback* callback);
|
| - void GetGlobalUsage(StorageType type, GlobalUsageCallback* callback);
|
| + const HostQuotaCallback& callback);
|
| + void GetGlobalUsage(StorageType type, const GlobalUsageCallback& callback);
|
| void GetHostUsage(const std::string& host, StorageType type,
|
| - HostUsageCallback* callback);
|
| + const HostUsageCallback& callback);
|
|
|
| void GetStatistics(std::map<std::string, std::string>* statistics);
|
|
|
| @@ -155,7 +157,7 @@ class QuotaManager : public QuotaTaskObserver,
|
|
|
| virtual void GetOriginsModifiedSince(StorageType type,
|
| base::Time modified_since,
|
| - GetOriginsCallback* callback);
|
| + const GetOriginsCallback& callback);
|
|
|
| bool ResetUsageTracker(StorageType type);
|
|
|
| @@ -203,8 +205,9 @@ class QuotaManager : public QuotaTaskObserver,
|
| typedef std::vector<QuotaTableEntry> QuotaTableEntries;
|
| typedef std::vector<OriginInfoTableEntry> OriginInfoTableEntries;
|
|
|
| - typedef Callback1<const QuotaTableEntries&>::Type DumpQuotaTableCallback;
|
| - typedef Callback1<const OriginInfoTableEntries&>::Type
|
| + typedef base::Callback<void(const QuotaTableEntries&)>
|
| + DumpQuotaTableCallback;
|
| + typedef base::Callback<void(const OriginInfoTableEntries&)>
|
| DumpOriginInfoTableCallback;
|
|
|
| struct EvictionContext {
|
| @@ -218,10 +221,9 @@ class QuotaManager : public QuotaTaskObserver,
|
| GURL evicted_origin;
|
| StorageType evicted_type;
|
|
|
| - scoped_ptr<EvictOriginDataCallback> evict_origin_data_callback;
|
| + EvictOriginDataCallback evict_origin_data_callback;
|
|
|
| - scoped_ptr<GetUsageAndQuotaForEvictionCallback>
|
| - get_usage_and_quota_callback;
|
| + GetUsageAndQuotaForEvictionCallback get_usage_and_quota_callback;
|
| int64 usage;
|
| int64 unlimited_usage;
|
| int64 quota;
|
| @@ -269,8 +271,8 @@ class QuotaManager : public QuotaTaskObserver,
|
| int64 delta,
|
| base::Time modified_time);
|
|
|
| - void DumpQuotaTable(DumpQuotaTableCallback* callback);
|
| - void DumpOriginInfoTable(DumpOriginInfoTableCallback* callback);
|
| + void DumpQuotaTable(const DumpQuotaTableCallback& callback);
|
| + void DumpOriginInfoTable(const DumpOriginInfoTableCallback& callback);
|
|
|
| // Methods for eviction logic.
|
| void StartEviction();
|
| @@ -299,13 +301,13 @@ class QuotaManager : public QuotaTaskObserver,
|
| // QuotaEvictionHandler.
|
| virtual void GetLRUOrigin(
|
| StorageType type,
|
| - GetLRUOriginCallback* callback) OVERRIDE;
|
| + const GetLRUOriginCallback& callback) OVERRIDE;
|
| virtual void EvictOriginData(
|
| const GURL& origin,
|
| StorageType type,
|
| - EvictOriginDataCallback* callback) OVERRIDE;
|
| + const EvictOriginDataCallback& callback) OVERRIDE;
|
| virtual void GetUsageAndQuotaForEviction(
|
| - GetUsageAndQuotaForEvictionCallback* callback) OVERRIDE;
|
| + const GetUsageAndQuotaForEvictionCallback& callback) OVERRIDE;
|
|
|
| void DidInitializeTemporaryGlobalQuota(int64 quota);
|
| void DidRunInitialGetTemporaryGlobalUsage(StorageType type, int64 usage,
|
| @@ -325,7 +327,7 @@ class QuotaManager : public QuotaTaskObserver,
|
| mutable scoped_ptr<QuotaDatabase> database_;
|
|
|
| bool need_initialize_origins_;
|
| - scoped_ptr<GetLRUOriginCallback> lru_origin_callback_;
|
| + GetLRUOriginCallback lru_origin_callback_;
|
| std::set<GURL> access_notified_origins_;
|
|
|
| QuotaClientList clients_;
|
| @@ -350,7 +352,7 @@ class QuotaManager : public QuotaTaskObserver,
|
|
|
| scoped_refptr<SpecialStoragePolicy> special_storage_policy_;
|
|
|
| - base::ScopedCallbackFactory<QuotaManager> callback_factory_;
|
| + base::WeakPtrFactory<QuotaManager> weak_factory_;
|
| base::RepeatingTimer<QuotaManager> histogram_timer_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(QuotaManager);
|
|
|