]> git.ipfire.org Git - pakfire.git/commitdiff
buildservice: Remove holding the base URL
authorMichael Tremer <michael.tremer@ipfire.org>
Sun, 15 Sep 2024 02:54:01 +0000 (02:54 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Sun, 15 Sep 2024 02:54:01 +0000 (02:54 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/buildservice.c

index fa52918974ad5bc236d4b5ad3b9eb0c90e153614..966551160722940729bab4098472726efa474ccf 100644 (file)
@@ -47,7 +47,6 @@ struct pakfire_buildservice {
        int nrefs;
 
        // Configuration
-       char url[PATH_MAX];
        char keytab[PATH_MAX];
 
        // A HTTP Client
@@ -97,8 +96,13 @@ static int pakfire_buildservice_setup(struct pakfire_buildservice* service, sd_e
                goto ERROR;
        }
 
-       // Store the URL
-       r = pakfire_string_set(service->url, url);
+       // Setup the HTTP client
+       r = pakfire_httpclient_create(&service->httpclient, service->ctx, loop);
+       if (r)
+               goto ERROR;
+
+       // Set the URL
+       r = pakfire_httpclient_set_baseurl(service->httpclient, url);
        if (r)
                goto ERROR;
 
@@ -110,11 +114,6 @@ static int pakfire_buildservice_setup(struct pakfire_buildservice* service, sd_e
        if (r)
                goto ERROR;
 
-       // Setup the HTTP client
-       r = pakfire_httpclient_create(&service->httpclient, service->ctx, loop);
-       if (r)
-               goto ERROR;
-
        // Setup authentication
        r = pakfire_buildservice_setup_auth(service);
        if (r)
@@ -159,7 +158,8 @@ PAKFIRE_EXPORT int pakfire_buildservice_create(
        if (r)
                goto ERROR;
 
-       CTX_DEBUG(s->ctx, "Pakfire Build Service initialized for %s\n", s->url);
+       CTX_DEBUG(s->ctx,
+               "Pakfire Build Service initialized for %s\n", pakfire_buildservice_get_url(s));
 
        // Return the pointer
        *service = s;
@@ -189,32 +189,7 @@ PAKFIRE_EXPORT struct pakfire_buildservice* pakfire_buildservice_unref(
 }
 
 PAKFIRE_EXPORT const char* pakfire_buildservice_get_url(struct pakfire_buildservice* service) {
-       return service->url;
-}
-
-static int pakfire_buildservice_create_xfer(struct pakfire_xfer** xfer,
-               struct pakfire_buildservice* service, const char* url) {
-       struct pakfire_xfer* t = NULL;
-       int r;
-
-       // Create a new xfer
-       r = pakfire_httpclient_create_xfer(&t, service->httpclient, url);
-       if (r)
-               goto ERROR;
-
-       // Set the base URL
-       r = pakfire_xfer_set_baseurl(t, service->url);
-       if (r)
-               goto ERROR;
-
-       // Return the new xfer
-       *xfer = pakfire_xfer_ref(t);
-
-ERROR:
-       if (t)
-               pakfire_xfer_unref(t);
-
-       return r;
+       return pakfire_httpclient_get_baseurl(service->httpclient);
 }
 
 // Build
@@ -225,7 +200,7 @@ int pakfire_buildservice_build(struct pakfire_buildservice* service, const char*
        int r;
 
        // Create a new xfer
-       r = pakfire_buildservice_create_xfer(&xfer, service, "/api/v1/builds");
+       r = pakfire_httpclient_create_xfer(&xfer, service->httpclient, "/api/v1/builds");
        if (r)
                goto ERROR;
 
@@ -308,7 +283,7 @@ static int pakfire_buildservice_create_upload(struct pakfire_buildservice* servi
                goto ERROR;
 
        // Create a new xfer
-       r = pakfire_buildservice_create_xfer(&xfer, service, "/api/v1/uploads");
+       r = pakfire_httpclient_create_xfer(&xfer, service->httpclient, "/api/v1/uploads");
        if (r)
                goto ERROR;
 
@@ -391,7 +366,7 @@ static int pakfire_buildservice_upload_payload(struct pakfire_buildservice* serv
                goto ERROR;
 
        // Create a new xfer
-       r = pakfire_buildservice_create_xfer(&xfer, service, url);
+       r = pakfire_httpclient_create_xfer(&xfer, service->httpclient, url);
        if (r)
                goto ERROR;
 
@@ -477,7 +452,7 @@ PAKFIRE_EXPORT int pakfire_buildservice_list_uploads(
        int r;
 
        // Create a new xfer
-       r = pakfire_buildservice_create_xfer(&xfer, service, "/api/v1/uploads");
+       r = pakfire_httpclient_create_xfer(&xfer, service->httpclient, "/api/v1/uploads");
        if (r)
                goto ERROR;
 
@@ -524,7 +499,7 @@ PAKFIRE_EXPORT int pakfire_buildservice_delete_upload(
                goto ERROR;
 
        // Create a new xfer
-       r = pakfire_buildservice_create_xfer(&xfer, service, url);
+       r = pakfire_httpclient_create_xfer(&xfer, service->httpclient, url);
        if (r)
                goto ERROR;
 
@@ -572,7 +547,7 @@ PAKFIRE_EXPORT int pakfire_buildservice_list_repos(struct pakfire_buildservice*
                goto ERROR;
 
        // Create a new xfer
-       r = pakfire_buildservice_create_xfer(&xfer, service, url);
+       r = pakfire_httpclient_create_xfer(&xfer, service->httpclient, url);
        if (r)
                goto ERROR;
 
@@ -622,7 +597,7 @@ PAKFIRE_EXPORT int pakfire_buildservice_get_repo(struct pakfire_buildservice* se
                goto ERROR;
 
        // Create a new xfer
-       r = pakfire_buildservice_create_xfer(&xfer, service, url);
+       r = pakfire_httpclient_create_xfer(&xfer, service->httpclient, url);
        if (r)
                goto ERROR;
 
@@ -665,7 +640,7 @@ PAKFIRE_EXPORT int pakfire_buildservice_create_repo(struct pakfire_buildservice*
                goto ERROR;
 
        // Create a new xfer
-       r = pakfire_buildservice_create_xfer(&xfer, service, url);
+       r = pakfire_httpclient_create_xfer(&xfer, service->httpclient, url);
        if (r)
                goto ERROR;
 
@@ -716,7 +691,7 @@ PAKFIRE_EXPORT int pakfire_buildservice_delete_repo(struct pakfire_buildservice*
                goto ERROR;
 
        // Create a new xfer
-       r = pakfire_buildservice_create_xfer(&xfer, service, url);
+       r = pakfire_httpclient_create_xfer(&xfer, service->httpclient, url);
        if (r)
                goto ERROR;
 
@@ -792,7 +767,7 @@ PAKFIRE_EXPORT int pakfire_buildservice_submit_stats(struct pakfire_buildservice
        }
 
        // Create a new xfer
-       r = pakfire_buildservice_create_xfer(&xfer, service, "/api/v1/builders/stats");
+       r = pakfire_httpclient_create_xfer(&xfer, service->httpclient, "/api/v1/builders/stats");
        if (r)
                goto ERROR;
 
@@ -981,7 +956,7 @@ PAKFIRE_EXPORT int pakfire_buildservice_job_finished(struct pakfire_buildservice
                goto ERROR;
 
        // Create a new xfer
-       r = pakfire_buildservice_create_xfer(&xfer, service, url);
+       r = pakfire_httpclient_create_xfer(&xfer, service->httpclient, url);
        if (r)
                goto ERROR;
 
@@ -1030,7 +1005,7 @@ int pakfire_buildservice_daemon(struct pakfire_buildservice* service, pakfire_xf
        int r;
 
        // Create a new xfer
-       r = pakfire_buildservice_create_xfer(&xfer, service, "/api/v1/builders/control");
+       r = pakfire_httpclient_create_xfer(&xfer, service->httpclient, "/api/v1/builders/control");
        if (r)
                goto ERROR;