]> git.ipfire.org Git - pakfire.git/commitdiff
repo: Add scaffolding for refreshing
authorMichael Tremer <michael.tremer@ipfire.org>
Thu, 11 Mar 2021 22:20:57 +0000 (22:20 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Thu, 11 Mar 2021 22:20:57 +0000 (22:20 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/include/pakfire/repo.h
src/libpakfire/libpakfire.sym
src/libpakfire/repo.c

index 73944ef94a7ef57eb418c5c3d5696bc547b9835c..5e28f5077628ba41fed65b1822779c49fb787ffd 100644 (file)
@@ -84,6 +84,10 @@ time_t pakfire_repo_cache_age(PakfireRepo repo, const char* path);
 
 int pakfire_repo_scan(PakfireRepo repo, int flags);
 
+// Refresh
+
+int pakfire_repo_refresh(PakfireRepo repo, int force);
+
 #ifdef PAKFIRE_PRIVATE
 
 #include <solv/repo.h>
index c82e3bd4e614da28db70b7c50167aadad6f9e63e..df61f5ebe8264ee36432a369403e42c9a0537e22 100644 (file)
@@ -316,6 +316,7 @@ global:
        pakfire_repo_read_solv;
        pakfire_repo_read_solv_fp;
        pakfire_repo_ref;
+       pakfire_repo_refresh;
        pakfire_repo_scan;
        pakfire_repo_set_baseurl;
        pakfire_repo_set_description;
index 66b1a288b8799424dfdf5d009811268af013adc9..933a755117eb2d4dbe4068845c2882d5c5033293 100644 (file)
@@ -698,3 +698,36 @@ ERROR:
 
        return r;
 }
+
+static int pakfire_repo_refresh_mirrorlist(PakfireRepo repo, int force) {
+       return 0;
+}
+
+static int pakfire_repo_refresh_metadata(PakfireRepo repo, int force) {
+       return 0;
+}
+
+static int pakfire_repo_refresh_database(PakfireRepo repo) {
+       return 0;
+}
+
+PAKFIRE_EXPORT int pakfire_repo_refresh(PakfireRepo repo, int force) {
+       int r;
+
+       // Refresh mirrorlist
+       r = pakfire_repo_refresh_mirrorlist(repo, force);
+       if (r)
+               return r;
+
+       // Refresh metadata
+       r = pakfire_repo_refresh_metadata(repo, force);
+       if (r)
+               return r;
+
+       // Refresh database
+       r = pakfire_repo_refresh_database(repo);
+       if (r)
+               return r;
+
+       return 0;
+}