QtPass 1.6.0
Multi-platform GUI for pass, the standard unix password manager.
Loading...
Searching...
No Matches
filecontent.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2018 Anne Jan Brouwer
2// SPDX-License-Identifier: GPL-3.0-or-later
3#ifndef SRC_FILECONTENT_H_
4#define SRC_FILECONTENT_H_
5
6#include <QList>
7#include <QString>
8#include <QStringList>
9
10struct NamedValue {
11 QString name;
12 QString value;
13};
14
15inline bool operator==(const NamedValue &a, const NamedValue &b) {
16 return a.name == b.name && a.value == b.value;
17}
18
23class NamedValues : public QList<NamedValue> {
24public:
26 NamedValues(std::initializer_list<NamedValue> values);
27
28 auto takeValue(const QString &name) -> QString;
29};
30
31class FileContent {
32public:
51 static auto parse(const QString &fileContent,
52 const QStringList &templateFields, bool allFields)
53 -> FileContent;
54
58 [[nodiscard]] auto getPassword() const -> QString;
59
64 [[nodiscard]] auto getNamedValues() const -> NamedValues;
65
69 [[nodiscard]] auto getRemainingData() const -> QString;
70
75 [[nodiscard]] auto getRemainingDataForDisplay() const -> QString;
76
77private:
78 FileContent(QString password, NamedValues namedValues, QString remainingData,
79 QString remainingDataDisplay);
80
81 QString password;
82 NamedValues namedValues;
83 QString remainingData, remainingDataDisplay;
84};
85
86#endif // SRC_FILECONTENT_H_
auto getRemainingData() const -> QString
Gets remaining data not in named values.
auto getNamedValues() const -> NamedValues
Gets named value pairs from the parsed file.
auto getRemainingDataForDisplay() const -> QString
Gets remaining data for display (excludes hidden fields like OTP).
auto getPassword() const -> QString
Gets the password from the parsed file.
static auto parse(const QString &fileContent, const QStringList &templateFields, bool allFields) -> FileContent
parse parses the given fileContent in a FileContent object. The password is accessible through getPas...
The NamedValues class is mostly a list of NamedValue but also has a method to take a specific NamedVa...
Definition filecontent.h:23
auto takeValue(const QString &name) -> QString
Finds and removes a named value by name.
NamedValues()
Default constructor for NamedValues.
bool operator==(const NamedValue &a, const NamedValue &b)
Definition filecontent.h:15
QString name
Definition filecontent.h:11
QString value
Definition filecontent.h:12