ArchiveFileRow.cpp 2.44 KB
Newer Older
1
/*
2
 * @project        The CERN Tape Archive (CTA)
3
 * @copyright      Copyright(C) 2015-2021 CERN
4
5
6
7
 * @license        This program is free software: you can redistribute it and/or modify
 *                 it under the terms of the GNU General Public License as published by
 *                 the Free Software Foundation, either version 3 of the License, or
 *                 (at your option) any later version.
8
 *
9
10
11
12
 *                 This program is distributed in the hope that it will be useful,
 *                 but WITHOUT ANY WARRANTY; without even the implied warranty of
 *                 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *                 GNU General Public License for more details.
13
 *
14
15
 *                 You should have received a copy of the GNU General Public License
 *                 along with this program.  If not, see <http://www.gnu.org/licenses/>.
16
17
18
19
20
21
22
23
24
25
26
27
 */

#include "catalogue/ArchiveFileRow.hpp"

namespace cta {
namespace catalogue {

//------------------------------------------------------------------------------
// constructor
//------------------------------------------------------------------------------
ArchiveFileRow::ArchiveFileRow() :
  archiveFileId(0),
28
29
30
  size(0),
  creationTime(0),
  reconciliationTime(0) {
31
32
33
34
35
36
37
38
39
40
}

//------------------------------------------------------------------------------
// operator==
//------------------------------------------------------------------------------
bool ArchiveFileRow::operator==(const ArchiveFileRow &rhs) const {
  return
    archiveFileId == rhs.archiveFileId &&
    diskInstance == rhs.diskInstance &&
    diskFileId == rhs.diskFileId &&
41
42
    diskFileOwnerUid == rhs.diskFileOwnerUid &&
    diskFileGid == rhs.diskFileGid &&
43
    size == rhs.size &&
44
    checksumBlob == rhs.checksumBlob &&
45
46
47
48
49
50
51
52
53
54
55
56
    storageClassName == rhs.storageClassName;
}

//------------------------------------------------------------------------------
// operator<<
//------------------------------------------------------------------------------
std::ostream &operator<<(std::ostream &os, const ArchiveFileRow &obj) {
  os <<
  "{"
  "archiveFileId=" << obj.archiveFileId <<
  "diskInstance=" << obj.diskInstance <<
  "diskFileId=" << obj.diskFileId <<
57
58
  "diskFileOwnerUid=" << obj.diskFileOwnerUid <<
  "diskFileGid=" << obj.diskFileGid <<
59
  "size=" << obj.size <<
60
  "checksumBlob=" << obj.checksumBlob <<
61
62
63
64
65
66
67
  "storageClassName=" << obj.storageClassName <<
  "}";
  return os;
}

} // namespace catalogue
} // namespace cta