1*8266f4d7SAugustin Cavalier /* 2*8266f4d7SAugustin Cavalier * Copyright 2024, Andrew Lindesay <apl@lindesay.co.nz>. 3*8266f4d7SAugustin Cavalier * All rights reserved. Distributed under the terms of the MIT License. 4*8266f4d7SAugustin Cavalier 5*8266f4d7SAugustin Cavalier */ 6*8266f4d7SAugustin Cavalier #ifndef POPULATE_PKG_CHANGELOG_FROM_SERVER_PROCESS__H 7*8266f4d7SAugustin Cavalier #define POPULATE_PKG_CHANGELOG_FROM_SERVER_PROCESS__H 8*8266f4d7SAugustin Cavalier 9*8266f4d7SAugustin Cavalier 10*8266f4d7SAugustin Cavalier #include "AbstractProcess.h" 11*8266f4d7SAugustin Cavalier 12*8266f4d7SAugustin Cavalier #include "Model.h" 13*8266f4d7SAugustin Cavalier #include "PackageInfo.h" 14*8266f4d7SAugustin Cavalier 15*8266f4d7SAugustin Cavalier #include <File.h> 16*8266f4d7SAugustin Cavalier #include <Path.h> 17*8266f4d7SAugustin Cavalier #include <String.h> 18*8266f4d7SAugustin Cavalier #include <Url.h> 19*8266f4d7SAugustin Cavalier 20*8266f4d7SAugustin Cavalier #include <package/RepositoryCache.h> 21*8266f4d7SAugustin Cavalier 22*8266f4d7SAugustin Cavalier 23*8266f4d7SAugustin Cavalier class PkgDataLoadState; 24*8266f4d7SAugustin Cavalier 25*8266f4d7SAugustin Cavalier 26*8266f4d7SAugustin Cavalier /*! This process will take the data from the locally stored repositories (HPKR) 27*8266f4d7SAugustin Cavalier and will extract the packages. The packages are then loaded into the 28*8266f4d7SAugustin Cavalier HaikuDepot 'Model'. 29*8266f4d7SAugustin Cavalier */ 30*8266f4d7SAugustin Cavalier 31*8266f4d7SAugustin Cavalier class PopulatePkgChangelogFromServerProcess : public AbstractProcess 32*8266f4d7SAugustin Cavalier { 33*8266f4d7SAugustin Cavalier public: 34*8266f4d7SAugustin Cavalier PopulatePkgChangelogFromServerProcess(PackageInfoRef packageInfo, 35*8266f4d7SAugustin Cavalier Model *model); 36*8266f4d7SAugustin Cavalier virtual ~PopulatePkgChangelogFromServerProcess(); 37*8266f4d7SAugustin Cavalier 38*8266f4d7SAugustin Cavalier const char* Name() const; 39*8266f4d7SAugustin Cavalier const char* Description() const; 40*8266f4d7SAugustin Cavalier 41*8266f4d7SAugustin Cavalier protected: 42*8266f4d7SAugustin Cavalier virtual status_t RunInternal(); 43*8266f4d7SAugustin Cavalier 44*8266f4d7SAugustin Cavalier private: 45*8266f4d7SAugustin Cavalier Model* fModel; 46*8266f4d7SAugustin Cavalier PackageInfoRef fPackageInfo; 47*8266f4d7SAugustin Cavalier }; 48*8266f4d7SAugustin Cavalier 49*8266f4d7SAugustin Cavalier #endif // POPULATE_PKG_CHANGELOG_FROM_SERVER_PROCESS__H 50