Add ostree_repo_remote_list()
Lists available remote names.
This commit is contained in:
parent
fd07a6a862
commit
39be27fc93
|
|
@ -61,6 +61,7 @@ ostree_repo_get_mode
|
||||||
ostree_repo_mode_from_string
|
ostree_repo_mode_from_string
|
||||||
ostree_repo_get_config
|
ostree_repo_get_config
|
||||||
ostree_repo_copy_config
|
ostree_repo_copy_config
|
||||||
|
ostree_repo_remote_list
|
||||||
ostree_repo_get_parent
|
ostree_repo_get_parent
|
||||||
ostree_repo_write_config
|
ostree_repo_write_config
|
||||||
OstreeRepoTransactionStats
|
OstreeRepoTransactionStats
|
||||||
|
|
|
||||||
|
|
@ -880,6 +880,54 @@ ostree_repo_remote_change (OstreeRepo *self,
|
||||||
g_assert_not_reached ();
|
g_assert_not_reached ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ostree_repo_remote_list:
|
||||||
|
* @self: Repo
|
||||||
|
* @out_n_remotes: (out) (allow-none): Number of remotes available
|
||||||
|
*
|
||||||
|
* List available remote names in an #OstreeRepo. Remote names are sorted
|
||||||
|
* alphabetically. If no remotes are available the function returns %NULL.
|
||||||
|
*
|
||||||
|
* Returns: (array length=out_n_remotes) (transfer full): a %NULL-terminated
|
||||||
|
* array of remote names
|
||||||
|
**/
|
||||||
|
char **
|
||||||
|
ostree_repo_remote_list (OstreeRepo *self,
|
||||||
|
guint *out_n_remotes)
|
||||||
|
{
|
||||||
|
char **remotes = NULL;
|
||||||
|
guint n_remotes;
|
||||||
|
|
||||||
|
g_mutex_lock (&self->remotes_lock);
|
||||||
|
|
||||||
|
n_remotes = g_hash_table_size (self->remotes);
|
||||||
|
|
||||||
|
if (n_remotes > 0)
|
||||||
|
{
|
||||||
|
GList *list, *link;
|
||||||
|
guint ii = 0;
|
||||||
|
|
||||||
|
remotes = g_new (char *, n_remotes + 1);
|
||||||
|
|
||||||
|
list = g_hash_table_get_keys (self->remotes);
|
||||||
|
list = g_list_sort (list, (GCompareFunc) strcmp);
|
||||||
|
|
||||||
|
for (link = list; link != NULL; link = link->next)
|
||||||
|
remotes[ii++] = g_strdup (link->data);
|
||||||
|
|
||||||
|
g_list_free (list);
|
||||||
|
|
||||||
|
remotes[ii] = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
g_mutex_unlock (&self->remotes_lock);
|
||||||
|
|
||||||
|
if (out_n_remotes)
|
||||||
|
*out_n_remotes = n_remotes;
|
||||||
|
|
||||||
|
return remotes;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ostree_repo_remote_get_url:
|
* ostree_repo_remote_get_url:
|
||||||
* @self: Repo
|
* @self: Repo
|
||||||
|
|
|
||||||
|
|
@ -95,6 +95,9 @@ gboolean ostree_repo_remote_change (OstreeRepo *self,
|
||||||
GCancellable *cancellable,
|
GCancellable *cancellable,
|
||||||
GError **error);
|
GError **error);
|
||||||
|
|
||||||
|
char ** ostree_repo_remote_list (OstreeRepo *self,
|
||||||
|
guint *out_n_remotes);
|
||||||
|
|
||||||
gboolean ostree_repo_remote_get_url (OstreeRepo *self,
|
gboolean ostree_repo_remote_get_url (OstreeRepo *self,
|
||||||
const char *name,
|
const char *name,
|
||||||
char **out_url,
|
char **out_url,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue