gecko-dev/dom/quota/QuotaResults.h
Jan Varga 9ab967ef1e Bug 1563023 - Part 2: Add support for getting origin usage from memory; r=asuth
This patch modifies getUsageForPrincipal to support getting origin usage from
memory. Support for getting group usage is factored out to a standalone method
called Estimate.
Operations based on NormalOriginOperationBase can now avoid directory locking
if they don't touch disk.

Differential Revision: https://phabricator.services.mozilla.com/D38087

--HG--
extra : moz-landing-system : lando
2019-08-22 20:51:09 +00:00

79 lines
1.7 KiB
C++

/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef mozilla_dom_quota_QuotaResults_h
#define mozilla_dom_quota_QuotaResults_h
#include "nsIQuotaResults.h"
namespace mozilla {
namespace dom {
namespace quota {
class UsageResult : public nsIQuotaUsageResult {
nsCString mOrigin;
uint64_t mUsage;
bool mPersisted;
uint64_t mLastAccessed;
public:
UsageResult(const nsACString& aOrigin, bool aPersisted, uint64_t aUsage,
uint64_t aLastAccessed);
private:
virtual ~UsageResult() {}
NS_DECL_ISUPPORTS
NS_DECL_NSIQUOTAUSAGERESULT
};
class OriginUsageResult : public nsIQuotaOriginUsageResult {
uint64_t mUsage;
uint64_t mFileUsage;
public:
OriginUsageResult(uint64_t aUsage, uint64_t aFileUsage);
private:
virtual ~OriginUsageResult() {}
NS_DECL_ISUPPORTS
NS_DECL_NSIQUOTAORIGINUSAGERESULT
};
class EstimateResult : public nsIQuotaEstimateResult {
uint64_t mUsage;
uint64_t mLimit;
public:
EstimateResult(uint64_t aUsage, uint64_t aLimit);
private:
virtual ~EstimateResult() {}
NS_DECL_ISUPPORTS
NS_DECL_NSIQUOTAESTIMATERESULT
};
class InitializedOriginsResult : public nsIQuotaInitializedOriginsResult {
nsCString mOrigin;
public:
explicit InitializedOriginsResult(const nsACString& aOrigin);
private:
virtual ~InitializedOriginsResult() = default;
NS_DECL_ISUPPORTS
NS_DECL_NSIQUOTAINITIALIZEDORIGINSRESULT
};
} // namespace quota
} // namespace dom
} // namespace mozilla
#endif // mozilla_dom_quota_QuotaResults_h