aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/android/sdkmanageroutputparser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/android/sdkmanageroutputparser.cpp')
-rw-r--r--src/plugins/android/sdkmanageroutputparser.cpp22
1 files changed, 16 insertions, 6 deletions
diff --git a/src/plugins/android/sdkmanageroutputparser.cpp b/src/plugins/android/sdkmanageroutputparser.cpp
index 96eb9e4b171..aaff0c486dd 100644
--- a/src/plugins/android/sdkmanageroutputparser.cpp
+++ b/src/plugins/android/sdkmanageroutputparser.cpp
@@ -19,8 +19,7 @@ const char revisionKey[] = "Version:";
const char descriptionKey[] = "Description:";
} // namespace
-using namespace Android;
-using namespace Android::Internal;
+namespace Android::Internal {
using MarkerTagsType = std::map<SdkManagerOutputParser::MarkerTag, const char *>;
Q_GLOBAL_STATIC_WITH_ARGS(MarkerTagsType, markerTags,
@@ -37,6 +36,17 @@ Q_GLOBAL_STATIC_WITH_ARGS(MarkerTagsType, markerTags,
{SdkManagerOutputParser::MarkerTag::NdkMarker, Constants::ndkPackageName},
{SdkManagerOutputParser::MarkerTag::ExtrasMarker, "extras"}}));
+class GenericPackageData
+{
+public:
+ bool isValid() const { return !revision.isNull() && !description.isNull(); }
+ QStringList headerParts;
+ QVersionNumber revision;
+ QString description;
+ Utils::FilePath installedLocation;
+ QMap<QString, QString> extraData;
+};
+
void SdkManagerOutputParser::parsePackageListing(const QString &output)
{
QStringList packageData;
@@ -238,10 +248,8 @@ static bool valueForKey(QString key, const QString &line, QString *value = nullp
return false;
}
-bool SdkManagerOutputParser::parseAbstractData(SdkManagerOutputParser::GenericPackageData &output,
- const QStringList &input, int minParts,
- const QString &logStrTag,
- const QStringList &extraKeys) const
+static bool parseAbstractData(GenericPackageData &output, const QStringList &input, int minParts,
+ const QString &logStrTag, const QStringList &extraKeys = {})
{
if (input.isEmpty()) {
qCDebug(sdkManagerLog) << logStrTag + ": Empty input";
@@ -448,3 +456,5 @@ SdkManagerOutputParser::MarkerTag SdkManagerOutputParser::parseMarkers(const QSt
return None;
}
+
+} // namespace Android::Internal