netwerk/cache2/CacheIndexContextIterator.cpp

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:8c74fb90771c
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
4
5 #include "CacheLog.h"
6 #include "CacheIndexContextIterator.h"
7 #include "CacheIndex.h"
8 #include "nsString.h"
9
10
11 namespace mozilla {
12 namespace net {
13
14 CacheIndexContextIterator::CacheIndexContextIterator(CacheIndex *aIndex,
15 bool aAddNew,
16 nsILoadContextInfo *aInfo)
17 : CacheIndexIterator(aIndex, aAddNew)
18 , mInfo(aInfo)
19 {
20 }
21
22 CacheIndexContextIterator::~CacheIndexContextIterator()
23 {
24 }
25
26 void
27 CacheIndexContextIterator::AddRecord(CacheIndexRecord *aRecord)
28 {
29 if (CacheIndexEntry::RecordMatchesLoadContextInfo(aRecord, mInfo)) {
30 CacheIndexIterator::AddRecord(aRecord);
31 }
32 }
33
34 void
35 CacheIndexContextIterator::AddRecords(
36 const nsTArray<CacheIndexRecord *> &aRecords)
37 {
38 // We need to add one by one so that those with wrong context are ignored.
39 for (uint32_t i = 0; i < aRecords.Length(); ++i) {
40 AddRecord(aRecords[i]);
41 }
42 }
43
44 } // net
45 } // mozilla

mercurial