createrepo_c library  0.17.7
C library for metadata manipulation
locate_metadata.h
1 /* createrepo_c - Library of routines for manipulation with repodata
2  * Copyright (C) 2012 Tomas Mlcoch
3  *
4  * This program is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU General Public License
6  * as published by the Free Software Foundation; either version 2
7  * of the License, or (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
17  * USA.
18  */
19 
20 #ifndef __C_CREATEREPOLIB_LOCATE_METADATA_H__
21 #define __C_CREATEREPOLIB_LOCATE_METADATA_H__
22 
23 #include <glib.h>
24 
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28 
37  char *pri_xml_href;
38  char *fil_xml_href;
39  char *oth_xml_href;
46  char *repomd;
47  char *original_url;
49  char *local_path;
50  int tmp;
53 };
54 
59 typedef struct {
60  gchar *name;
61  gchar *type;
62 } cr_Metadatum;
63 
64 struct cr_MetadataLocation *
65 cr_parse_repomd(const char *repomd_path, const char *repopath, int ignore_sqlite);
66 
76 GSList*
77 cr_insert_additional_metadatum(const gchar *path,
78  const gchar *type,
79  GSList *additional_metadata);
80 
89 gint cr_cmp_metadatum_type(gconstpointer metadatum, gconstpointer type);
90 
99 gint cr_cmp_repomd_record_type(gconstpointer repomd_record, gconstpointer type);
100 
110 struct cr_MetadataLocation *cr_locate_metadata(const char *repopath,
111  gboolean ignore_sqlite,
112  GError **err);
113 
119 
124 
136 gchar* cr_copy_metadatum(const gchar *src, const gchar *tmp_out_repo, GError **err);
137 
140 #ifdef __cplusplus
141 }
142 #endif
143 
144 #endif /* __C_CREATEREPOLIB_LOCATE_METADATA_H__ */
GSList * cr_insert_additional_metadatum(const gchar *path, const gchar *type, GSList *additional_metadata)
GSList * additional_metadata
gint cr_cmp_metadatum_type(gconstpointer metadatum, gconstpointer type)
gchar * cr_copy_metadatum(const gchar *src, const gchar *tmp_out_repo, GError **err)
gint cr_cmp_repomd_record_type(gconstpointer repomd_record, gconstpointer type)
void cr_metadatalocation_free(struct cr_MetadataLocation *ml)
struct cr_MetadataLocation * cr_locate_metadata(const char *repopath, gboolean ignore_sqlite, GError **err)
void cr_metadatum_free(cr_Metadatum *m)