зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1312954
- Part 1: Add the nsILoadContextInfo as one additional argument of nsILoadContextInfo.onCacheEntryInfo() and CacheStorageService::EntryInfoCallback.OnEntryInfo(). r=mayhemer
This commit is contained in:
Родитель
ed17f6c827
Коммит
f747db3bbd
|
@ -2020,7 +2020,7 @@ NS_IMETHODIMP
|
|||
Predictor::Resetter::OnCacheEntryInfo(nsIURI *uri, const nsACString &idEnhance,
|
||||
int64_t dataSize, int32_t fetchCount,
|
||||
uint32_t lastModifiedTime, uint32_t expirationTime,
|
||||
bool aPinned)
|
||||
bool aPinned, nsILoadContextInfo* aInfo)
|
||||
{
|
||||
MOZ_ASSERT(NS_IsMainThread());
|
||||
|
||||
|
|
|
@ -2467,7 +2467,8 @@ CacheFileIOManager::GetEntryInfo(const SHA1Sum::Hash *aHash,
|
|||
|
||||
// Call directly on the callback.
|
||||
aCallback->OnEntryInfo(uriSpec, enhanceId, dataSize, fetchCount,
|
||||
lastModified, expirationTime, metadata->Pinned());
|
||||
lastModified, expirationTime, metadata->Pinned(),
|
||||
info);
|
||||
|
||||
return NS_OK;
|
||||
}
|
||||
|
|
|
@ -325,7 +325,7 @@ private:
|
|||
virtual void OnEntryInfo(const nsACString & aURISpec, const nsACString & aIdEnhance,
|
||||
int64_t aDataSize, int32_t aFetchCount,
|
||||
uint32_t aLastModifiedTime, uint32_t aExpirationTime,
|
||||
bool aPinned) override
|
||||
bool aPinned, nsILoadContextInfo* aInfo) override
|
||||
{
|
||||
nsresult rv;
|
||||
|
||||
|
@ -336,7 +336,8 @@ private:
|
|||
}
|
||||
|
||||
rv = mCallback->OnCacheEntryInfo(uri, aIdEnhance, aDataSize, aFetchCount,
|
||||
aLastModifiedTime, aExpirationTime, aPinned);
|
||||
aLastModifiedTime, aExpirationTime,
|
||||
aPinned, aInfo);
|
||||
if (NS_FAILED(rv)) {
|
||||
LOG((" callback failed, canceling the walk"));
|
||||
mCancel = true;
|
||||
|
@ -403,7 +404,7 @@ private:
|
|||
|
||||
rv = mWalker->mCallback->OnCacheEntryInfo(
|
||||
uri, mIdEnhance, mDataSize, mFetchCount,
|
||||
mLastModifiedTime, mExpirationTime, mPinned);
|
||||
mLastModifiedTime, mExpirationTime, mPinned, mInfo);
|
||||
if (NS_FAILED(rv)) {
|
||||
mWalker->mCancel = true;
|
||||
}
|
||||
|
@ -420,6 +421,7 @@ private:
|
|||
uint32_t mLastModifiedTime;
|
||||
uint32_t mExpirationTime;
|
||||
bool mPinned;
|
||||
nsCOMPtr<nsILoadContextInfo> mInfo;
|
||||
};
|
||||
|
||||
NS_IMETHOD Run() override
|
||||
|
@ -500,7 +502,7 @@ private:
|
|||
virtual void OnEntryInfo(const nsACString & aURISpec, const nsACString & aIdEnhance,
|
||||
int64_t aDataSize, int32_t aFetchCount,
|
||||
uint32_t aLastModifiedTime, uint32_t aExpirationTime,
|
||||
bool aPinned) override
|
||||
bool aPinned, nsILoadContextInfo* aInfo) override
|
||||
{
|
||||
// Called directly from CacheFileIOManager::GetEntryInfo.
|
||||
|
||||
|
@ -513,6 +515,7 @@ private:
|
|||
info->mLastModifiedTime = aLastModifiedTime;
|
||||
info->mExpirationTime = aExpirationTime;
|
||||
info->mPinned = aPinned;
|
||||
info->mInfo = aInfo;
|
||||
|
||||
NS_DispatchToMainThread(info);
|
||||
}
|
||||
|
@ -1988,6 +1991,12 @@ CacheStorageService::GetCacheEntryInfo(CacheEntry* aEntry,
|
|||
nsCString const uriSpec = aEntry->GetURI();
|
||||
nsCString const enhanceId = aEntry->GetEnhanceID();
|
||||
|
||||
nsAutoCString entryKey;
|
||||
aEntry->HashingKeyWithStorage(entryKey);
|
||||
|
||||
nsCOMPtr<nsILoadContextInfo> info =
|
||||
CacheFileUtils::ParseKey(entryKey);
|
||||
|
||||
uint32_t dataSize;
|
||||
if (NS_FAILED(aEntry->GetStorageDataSize(&dataSize))) {
|
||||
dataSize = 0;
|
||||
|
@ -2007,7 +2016,7 @@ CacheStorageService::GetCacheEntryInfo(CacheEntry* aEntry,
|
|||
|
||||
aCallback->OnEntryInfo(uriSpec, enhanceId, dataSize,
|
||||
fetchCount, lastModified, expirationTime,
|
||||
aEntry->IsPinned());
|
||||
aEntry->IsPinned(), info);
|
||||
}
|
||||
|
||||
// static
|
||||
|
|
|
@ -105,7 +105,7 @@ public:
|
|||
virtual void OnEntryInfo(const nsACString & aURISpec, const nsACString & aIdEnhance,
|
||||
int64_t aDataSize, int32_t aFetchCount,
|
||||
uint32_t aLastModifiedTime, uint32_t aExpirationTime,
|
||||
bool aPinned) = 0;
|
||||
bool aPinned, nsILoadContextInfo* aInfo) = 0;
|
||||
};
|
||||
|
||||
// Invokes OnEntryInfo for the given aEntry, synchronously.
|
||||
|
|
|
@ -262,7 +262,8 @@ NS_IMETHODIMP _OldVisitCallbackWrapper::VisitEntry(const char * deviceID,
|
|||
|
||||
// Send them to the consumer.
|
||||
rv = mCB->OnCacheEntryInfo(
|
||||
uri, enhanceId, (int64_t)dataSize, fetchCount, lastModified, expirationTime, false);
|
||||
uri, enhanceId, (int64_t)dataSize, fetchCount, lastModified,
|
||||
expirationTime, false, mLoadInfo);
|
||||
|
||||
*_retval = NS_SUCCEEDED(rv);
|
||||
return NS_OK;
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
|
||||
interface nsIURI;
|
||||
interface nsIFile;
|
||||
interface nsILoadContextInfo;
|
||||
|
||||
[scriptable, uuid(6cc7c253-93b6-482b-8e9d-1e04d8e9d655)]
|
||||
interface nsICacheStorageVisitor : nsISupports
|
||||
|
@ -25,7 +26,8 @@ interface nsICacheStorageVisitor : nsISupports
|
|||
in long aFetchCount,
|
||||
in uint32_t aLastModifiedTime,
|
||||
in uint32_t aExpirationTime,
|
||||
in boolean aPinned);
|
||||
in boolean aPinned,
|
||||
in nsILoadContextInfo aInfo);
|
||||
|
||||
/**
|
||||
*/
|
||||
|
|
|
@ -396,7 +396,7 @@ NS_IMETHODIMP
|
|||
nsAboutCache::Channel::OnCacheEntryInfo(nsIURI *aURI, const nsACString & aIdEnhance,
|
||||
int64_t aDataSize, int32_t aFetchCount,
|
||||
uint32_t aLastModified, uint32_t aExpirationTime,
|
||||
bool aPinned)
|
||||
bool aPinned, nsILoadContextInfo* aInfo)
|
||||
{
|
||||
// We need mStream for this
|
||||
if (!mStream || mCancel) {
|
||||
|
|
Загрузка…
Ссылка в новой задаче