aboutsummaryrefslogtreecommitdiff
path: root/launcher/modplatform/helpers/NetworkModAPI.h
blob: 989bcec403f75eb02d9713cfa25344fc4562d57b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#pragma once

#include "modplatform/ModAPI.h"

class NetworkModAPI : public ModAPI {
   public:
    void searchMods(CallerType* caller, SearchArgs&& args) const override;
    void getModInfo(CallerType* caller, ModPlatform::IndexedPack& pack) override;
    void getVersions(CallerType* caller, VersionSearchArgs&& args) const override;

    auto getProject(QString addonId, QByteArray* response) const -> NetJob* override;

   protected:
    virtual auto getModSearchURL(SearchArgs& args) const -> QString = 0;
    virtual auto getModInfoURL(QString& id) const -> QString = 0;
    virtual auto getVersionsURL(VersionSearchArgs& args) const -> QString = 0;
};