Move where we record the download start time.

git-svn-id: svn://10.0.0.236/trunk@133528 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
blakeross%telocity.com
2002-11-10 04:59:09 +00:00
parent 4d72fb518c
commit 0d1e224350

View File

@@ -186,8 +186,25 @@ nsresult
nsDownloadManager::DownloadStarted(const PRUnichar* aPath)
{
nsStringKey key(aPath);
if (mCurrDownloads.Exists(&key))
if (mCurrDownloads.Exists(&key)) {
// Assert the date and time that the download ended.
nsCOMPtr<nsIRDFDate> dateLiteral;
if (NS_SUCCEEDED(gRDFService->GetDateLiteral(PR_Now(), getter_AddRefs(dateLiteral)))) {
nsCOMPtr<nsIRDFResource> res;
nsCOMPtr<nsIRDFNode> node;
gRDFService->GetUnicodeResource(aPath, getter_AddRefs(res));
mDataSource->GetTarget(res, gNC_DateStarted, PR_TRUE, getter_AddRefs(node));
if (node)
mDataSource->Change(res, gNC_DateStarted, node, dateLiteral);
else
mDataSource->Assert(res, gNC_DateStarted, dateLiteral, PR_TRUE);
}
AssertProgressInfoFor(aPath);
}
return NS_OK;
}
@@ -477,21 +494,7 @@ nsDownloadManager::AddDownload(nsIURI* aSource,
downloads->RemoveElementAt(itemIndex, PR_TRUE, getter_AddRefs(node));
return rv;
}
nsCOMPtr<nsIRDFDate> dateLiteral;
rv = gRDFService->GetDateLiteral(PR_Now(), getter_AddRefs(dateLiteral));
if (NS_FAILED(rv)) return rv;
mDataSource->GetTarget(downloadRes, gNC_DateStarted, PR_TRUE, getter_AddRefs(node));
if (node)
rv = mDataSource->Change(downloadRes, gNC_DateStarted, node, dateLiteral);
else
rv = mDataSource->Assert(downloadRes, gNC_DateStarted, dateLiteral, PR_TRUE);
if (NS_FAILED(rv)) {
downloads->IndexOf(downloadRes, &itemIndex);
downloads->RemoveElementAt(itemIndex, PR_TRUE, getter_AddRefs(node));
return rv;
}
// Now flush all this to disk
nsCOMPtr<nsIRDFRemoteDataSource> remote(do_QueryInterface(mDataSource));
rv = remote->Flush();