1 /* SPDX-FileCopyrightText: 2003-2010 Jesper K. Pedersen <blackie@kde.org>
2 
3    SPDX-License-Identifier: GPL-2.0-or-later
4 */
5 
6 #include "MD5Map.h"
7 
8 using namespace DB;
9 
insert(const MD5 & md5sum,const DB::FileName & fileName)10 void MD5Map::insert(const MD5 &md5sum, const DB::FileName &fileName)
11 {
12     m_map.insert(md5sum, fileName);
13     m_i_map.insert(fileName, md5sum);
14 }
15 
lookup(const MD5 & md5sum) const16 DB::FileName MD5Map::lookup(const MD5 &md5sum) const
17 {
18     return m_map[md5sum];
19 }
20 
lookupFile(const DB::FileName & fileName) const21 MD5 MD5Map::lookupFile(const DB::FileName &fileName) const
22 {
23     return m_i_map[fileName];
24 }
25 
contains(const MD5 & md5sum) const26 bool MD5Map::contains(const MD5 &md5sum) const
27 {
28     return m_map.contains(md5sum);
29 }
30 
containsFile(const DB::FileName & fileName) const31 bool MD5Map::containsFile(const DB::FileName &fileName) const
32 {
33     return m_i_map.contains(fileName);
34 }
35 
clear()36 void MD5Map::clear()
37 {
38     m_map.clear();
39     m_i_map.clear();
40 }
41 
diff(const MD5Map & other) const42 DB::FileNameSet DB::MD5Map::diff(const MD5Map &other) const
43 {
44     DB::FileNameSet res;
45 
46     for (MD5FileMap::ConstIterator it = m_map.begin(); it != m_map.end(); ++it) {
47         if (other.lookup(it.key()) != it.value())
48             res.insert(it.value());
49     }
50 
51     return res;
52 }
53 // vi:expandtab:tabstop=4 shiftwidth=4:
54