diff rdf/PluginRDFDescription.h @ 1845:6f626cfdba51

Pull out Provider struct
author Chris Cannam
date Mon, 20 Apr 2020 18:45:47 +0100
parents 3ec563af0a4f
children
line wrap: on
line diff
--- a/rdf/PluginRDFDescription.h	Mon Apr 20 15:42:51 2020 +0100
+++ b/rdf/PluginRDFDescription.h	Mon Apr 20 18:45:47 2020 +0100
@@ -23,6 +23,8 @@
 
 #include "base/Debug.h"
 
+#include "plugin/Provider.h"
+
 class PluginRDFDescription
 {
 public:
@@ -30,8 +32,7 @@
     PluginRDFDescription(QString pluginId);
     ~PluginRDFDescription();
 
-    enum OutputDisposition
-    {
+    enum OutputDisposition {
         OutputDispositionUnknown,
         OutputSparse,
         OutputDense,
@@ -43,26 +44,7 @@
     QString getPluginName() const;
     QString getPluginDescription() const;
     QString getPluginMaker() const;
-    QString getPluginInfoURL() const;
-    QString getPluginDownloadURL() const;
-
-    enum DownloadType
-    {
-        DownloadSourceCode,
-        DownloadWindows,
-        DownloadMac,
-        DownloadLinux32,
-        DownloadLinux64,
-        DownloadOther
-    };
-    std::set<DownloadType> getPluginDownloadTypes() const;
-
-    struct Pack
-    {
-        QString name;
-        QString downloadURL;
-    };
-    std::map<QString, Pack> getPluginFoundInPacks() const; // uri -> pack
+    Provider getPluginProvider() const;
     
     QStringList getOutputIds() const;
     QString getOutputName(QString outputId) const;
@@ -83,10 +65,7 @@
     QString m_pluginName;
     QString m_pluginDescription;
     QString m_pluginMaker;
-    QString m_pluginInfoURL;
-    QString m_pluginDownloadURL;
-    std::set<DownloadType> m_pluginDownloadTypes;
-    std::map<QString, Pack> m_pluginFoundInPacks;
+    Provider m_provider;
     OutputStringMap m_outputNames;
     OutputDispositionMap m_outputDispositions;
     OutputStringMap m_outputEventTypeURIMap;