return repo_lookup_num($self, entry, keyname, notfound);
}
void write(FILE *fp) {
- repo_write($self, fp, repo_write_stdkeyfilter, 0, 0);
+ repo_write($self, fp);
}
# HACK, remove if no longer needed!
bool write_first_repodata(FILE *fp) {
int oldnrepodata = $self->nrepodata;
$self->nrepodata = oldnrepodata > 2 ? 2 : oldnrepodata;
- repo_write($self, fp, repo_write_stdkeyfilter, 0, 0);
+ repo_write($self, fp);
$self->nrepodata = oldnrepodata;
return 1;
}
repodata_create_stubs(repo_id2repodata($self->repo, $self->id));
}
void write(FILE *fp) {
- repodata_write(repo_id2repodata($self->repo, $self->id), fp, repo_write_stdkeyfilter, 0);
+ repodata_write(repo_id2repodata($self->repo, $self->id), fp);
}
bool add_solv(FILE *fp, int flags = 0) {
Repodata *data = repo_id2repodata($self->repo, $self->id);
onepiece = 0;
if (!info)
- repo_write(repo, fp, repo_write_stdkeyfilter, 0, 0);
+ repo_write(repo, fp);
else if (repoext)
- repodata_write(info, fp, repo_write_stdkeyfilter, 0);
+ repodata_write(info, fp);
else
{
int oldnrepodata = repo->nrepodata;
repo->nrepodata = oldnrepodata > 2 ? 2 : oldnrepodata; /* XXX: do this right */
- repo_write(repo, fp, repo_write_stdkeyfilter, 0, 0);
+ repo_write(repo, fp);
repo->nrepodata = oldnrepodata;
onepiece = 0;
}
repo_set_str;
repo_sidedata_create;
repo_write;
+ repo_write_filtered;
repo_write_stdkeyfilter;
repodata_add_dirnumnum;
repodata_add_dirstr;
repodata_stringify;
repodata_swap_attrs;
repodata_write;
+ repodata_write_filtered;
repopagestore_compress_page;
solv_bin2hex;
solv_calloc;
* 5) write everything to disk
*/
int
-repo_write(Repo *repo, FILE *fp, int (*keyfilter)(Repo *repo, Repokey *key, void *kfdata), void *kfdata, Queue *keyq)
+repo_write_filtered(Repo *repo, FILE *fp, int (*keyfilter)(Repo *repo, Repokey *key, void *kfdata), void *kfdata, Queue *keyq)
{
Pool *pool = repo->pool;
int i, j, n;
}
int
-repodata_write(Repodata *data, FILE *fp, int (*keyfilter)(Repo *repo, Repokey *key, void *kfdata), void *kfdata)
+repodata_write_filtered(Repodata *data, FILE *fp, int (*keyfilter)(Repo *repo, Repokey *key, void *kfdata), void *kfdata, Queue *keyq)
{
struct repodata_write_data wd;
wd.keyfilter = keyfilter;
wd.kfdata = kfdata;
wd.repodataid = data->repodataid;
- return repo_write(data->repo, fp, repodata_write_keyfilter, &wd, 0);
+ return repo_write_filtered(data->repo, fp, repodata_write_keyfilter, &wd, keyq);
+}
+
+int
+repodata_write(Repodata *data, FILE *fp)
+{
+ return repodata_write_filtered(data, fp, repo_write_stdkeyfilter, 0, 0);
+}
+
+int
+repo_write(Repo *repo, FILE *fp)
+{
+ return repo_write_filtered(repo, fp, repo_write_stdkeyfilter, 0, 0);
}
#include "repo.h"
#include "queue.h"
-extern int repo_write(Repo *repo, FILE *fp, int (*keyfilter)(Repo *repo, Repokey *key, void *kfdata), void *kfdata, Queue *keyq);
-extern int repo_write_stdkeyfilter(Repo *repo, Repokey *key, void *kfdata);
+extern int repo_write(Repo *repo, FILE *fp);
+extern int repo_write_filtered(Repo *repo, FILE *fp, int (*keyfilter)(Repo *repo, Repokey *key, void *kfdata), void *kfdata, Queue *keyq);
+
+extern int repodata_write(Repodata *data , FILE *fp);
+extern int repodata_write_filtered(Repodata *data , FILE *fp, int (*keyfilter)(Repo *repo, Repokey *key, void *kfdata), void *kfdata, Queue *keyq);
-extern int repodata_write(Repodata *data , FILE *fp, int (*keyfilter)(Repo *repo, Repokey *key, void *kfdata), void *kfdata);
+extern int repo_write_stdkeyfilter(Repo *repo, Repokey *key, void *kfdata);
#endif
Queue keyq;
queue_init(&keyq);
- repo_write(repo, fp, keyfilter, kfdata, &keyq);
+ repo_write_filtered(repo, fp, keyfilter, kfdata, &keyq);
h = repodata_new_handle(info);
if (keyq.count)
repodata_set_idarray(info, h, REPOSITORY_KEYS, &keyq);
kd.languages = languages;
kd.nlanguages = nlanguages;
repodata_internalize(info);
- repo_write(repo, fp, keyfilter_other, &kd, 0);
+ repo_write_filtered(repo, fp, keyfilter_other, &kd, 0);
fclose(fp);
for (i = 0; i < nlanguages; i++)
free(languages[i]);
kd.haveexternal = 1;
}
repodata_internalize(info);
- repo_write(repo, stdout, keyfilter_solv, &kd, 0);
+ repo_write_filtered(repo, stdout, keyfilter_solv, &kd, 0);
repodata_free(info);
return 0;
}