aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/run_queue.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/run_queue.c')
-rw-r--r--src/run_queue.c192
1 files changed, 96 insertions, 96 deletions
diff --git a/src/run_queue.c b/src/run_queue.c
index 652096a..b6093e4 100644
--- a/src/run_queue.c
+++ b/src/run_queue.c
@@ -17,13 +17,13 @@
#include <sys/queue.h>
struct run {
- int id;
- char* repo_url;
- char* repo_rev;
- int status;
- int exit_code;
+ int id;
+ char* repo_url;
+ char* repo_rev;
+ int status;
+ int exit_code;
- SIMPLEQ_ENTRY(run) entries;
+ SIMPLEQ_ENTRY(run) entries;
};
int run_new(struct run** _entry,
@@ -32,161 +32,161 @@ int run_new(struct run** _entry,
const char* _repo_rev,
enum run_status status,
int exit_code) {
- struct run* entry = malloc(sizeof(struct run));
- if (!entry) {
- log_errno("malloc");
- goto fail;
- }
+ struct run* entry = malloc(sizeof(struct run));
+ if (!entry) {
+ log_errno("malloc");
+ goto fail;
+ }
- char* repo_url = strdup(_repo_url);
- if (!repo_url) {
- log_errno("strdup");
- goto free_entry;
- }
+ char* repo_url = strdup(_repo_url);
+ if (!repo_url) {
+ log_errno("strdup");
+ goto free_entry;
+ }
- char* repo_rev = strdup(_repo_rev);
- if (!repo_rev) {
- log_errno("strdup");
- goto free_repo_url;
- }
+ char* repo_rev = strdup(_repo_rev);
+ if (!repo_rev) {
+ log_errno("strdup");
+ goto free_repo_url;
+ }
- entry->id = id;
- entry->repo_url = repo_url;
- entry->repo_rev = repo_rev;
- entry->status = status;
- entry->exit_code = exit_code;
+ entry->id = id;
+ entry->repo_url = repo_url;
+ entry->repo_rev = repo_rev;
+ entry->status = status;
+ entry->exit_code = exit_code;
- *_entry = entry;
- return 0;
+ *_entry = entry;
+ return 0;
free_repo_url:
- free(repo_url);
+ free(repo_url);
free_entry:
- free(entry);
+ free(entry);
fail:
- return -1;
+ return -1;
}
void run_destroy(struct run* entry) {
- free(entry->repo_rev);
- free(entry->repo_url);
- free(entry);
+ free(entry->repo_rev);
+ free(entry->repo_url);
+ free(entry);
}
int run_queued(struct run** entry, const char* repo_url, const char* repo_rev) {
- return run_new(entry, -1, repo_url, repo_rev, RUN_STATUS_CREATED, -1);
+ return run_new(entry, -1, repo_url, repo_rev, RUN_STATUS_CREATED, -1);
}
int run_created(struct run** entry, int id, const char* repo_url, const char* repo_rev) {
- return run_new(entry, id, repo_url, repo_rev, RUN_STATUS_CREATED, -1);
+ return run_new(entry, id, repo_url, repo_rev, RUN_STATUS_CREATED, -1);
}
int run_to_json(const struct run* entry, struct json_object** _json) {
- struct json_object* json = NULL;
- int ret = 0;
+ struct json_object* json = NULL;
+ int ret = 0;
- ret = libjson_new_object(&json);
- if (ret < 0)
- return -1;
- ret = libjson_set_int_const_key(json, "id", entry->id);
- if (ret < 0)
- goto free;
- ret = libjson_set_int_const_key(json, "exit_code", entry->exit_code);
- if (ret < 0)
- goto free;
- ret = libjson_set_string_const_key(json, "repo_url", entry->repo_url);
- if (ret < 0)
- goto free;
- ret = libjson_set_string_const_key(json, "repo_rev", entry->repo_rev);
- if (ret < 0)
- goto free;
+ ret = libjson_new_object(&json);
+ if (ret < 0)
+ return -1;
+ ret = libjson_set_int_const_key(json, "id", entry->id);
+ if (ret < 0)
+ goto free;
+ ret = libjson_set_int_const_key(json, "exit_code", entry->exit_code);
+ if (ret < 0)
+ goto free;
+ ret = libjson_set_string_const_key(json, "repo_url", entry->repo_url);
+ if (ret < 0)
+ goto free;
+ ret = libjson_set_string_const_key(json, "repo_rev", entry->repo_rev);
+ if (ret < 0)
+ goto free;
- *_json = json;
- return ret;
+ *_json = json;
+ return ret;
free:
- libjson_free(json);
+ libjson_free(json);
- return ret;
+ return ret;
}
int run_get_id(const struct run* entry) {
- return entry->id;
+ return entry->id;
}
const char* run_get_repo_url(const struct run* entry) {
- return entry->repo_url;
+ return entry->repo_url;
}
const char* run_get_repo_rev(const struct run* entry) {
- return entry->repo_rev;
+ return entry->repo_rev;
}
void run_set_id(struct run* entry, int id) {
- entry->id = id;
+ entry->id = id;
}
void run_queue_create(struct run_queue* queue) {
- SIMPLEQ_INIT(queue);
+ SIMPLEQ_INIT(queue);
}
void run_queue_destroy(struct run_queue* queue) {
- struct run* entry1 = SIMPLEQ_FIRST(queue);
- while (entry1) {
- struct run* entry2 = SIMPLEQ_NEXT(entry1, entries);
- run_destroy(entry1);
- entry1 = entry2;
- }
- SIMPLEQ_INIT(queue);
+ struct run* entry1 = SIMPLEQ_FIRST(queue);
+ while (entry1) {
+ struct run* entry2 = SIMPLEQ_NEXT(entry1, entries);
+ run_destroy(entry1);
+ entry1 = entry2;
+ }
+ SIMPLEQ_INIT(queue);
}
int run_queue_to_json(const struct run_queue* queue, struct json_object** _json) {
- struct json_object* json = NULL;
- int ret = 0;
+ struct json_object* json = NULL;
+ int ret = 0;
- ret = libjson_new_array(&json);
- if (ret < 0)
- return ret;
+ ret = libjson_new_array(&json);
+ if (ret < 0)
+ return ret;
- struct run* entry = NULL;
- SIMPLEQ_FOREACH(entry, queue, entries) {
- struct json_object* entry_json = NULL;
- ret = run_to_json(entry, &entry_json);
- if (ret < 0)
- goto free;
+ struct run* entry = NULL;
+ SIMPLEQ_FOREACH(entry, queue, entries) {
+ struct json_object* entry_json = NULL;
+ ret = run_to_json(entry, &entry_json);
+ if (ret < 0)
+ goto free;
- ret = libjson_append(json, entry_json);
- if (ret < 0) {
- libjson_free(entry_json);
- goto free;
- }
- }
+ ret = libjson_append(json, entry_json);
+ if (ret < 0) {
+ libjson_free(entry_json);
+ goto free;
+ }
+ }
- *_json = json;
- return ret;
+ *_json = json;
+ return ret;
free:
- libjson_free(json);
+ libjson_free(json);
- return ret;
+ return ret;
}
int run_queue_is_empty(const struct run_queue* queue) {
- return SIMPLEQ_EMPTY(queue);
+ return SIMPLEQ_EMPTY(queue);
}
void run_queue_add_first(struct run_queue* queue, struct run* entry) {
- SIMPLEQ_INSERT_HEAD(queue, entry, entries);
+ SIMPLEQ_INSERT_HEAD(queue, entry, entries);
}
void run_queue_add_last(struct run_queue* queue, struct run* entry) {
- SIMPLEQ_INSERT_TAIL(queue, entry, entries);
+ SIMPLEQ_INSERT_TAIL(queue, entry, entries);
}
struct run* run_queue_remove_first(struct run_queue* queue) {
- struct run* entry = SIMPLEQ_FIRST(queue);
- SIMPLEQ_REMOVE_HEAD(queue, entries);
- return entry;
+ struct run* entry = SIMPLEQ_FIRST(queue);
+ SIMPLEQ_REMOVE_HEAD(queue, entries);
+ return entry;
}