xref: /haiku/src/apps/haikudepot/server/PopulatePkgChangelogFromServerProcess.h (revision 8266f4d7aa5610123b7f87887a59459381f29f92)
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