createrepo_c library  0.3.0
C library for metadata manipulation
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
modifyrepo_shared.h
1 /* createrepo_c - Library of routines for manipulation with repodata
2  * Copyright (C) 2013 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_MODIFYREPO_SHARED_H__
21 #define __C_CREATEREPOLIB_MODIFYREPO_SHARED_H__
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
27 #include "checksum.h"
28 #include "compression_wrapper.h"
29 #include "package.h"
30 
39 typedef struct {
40 
41  gchar *path;
42  gchar *type;
43  gboolean remove;
44  gboolean compress;
45  cr_CompressionType compress_type;
46  gboolean unique_md_filenames;
47  cr_ChecksumType checksum_type;
48  gchar *new_name;
49 
50  // Internal use
51  gchar *repopath;
52  GStringChunk *chunk;
53 
55 
57 cr_modifyrepotask_new(void);
58 
59 void
60 cr_modifyrepotask_free(cr_ModifyRepoTask *task);
61 
62 gboolean
63 cr_modifyrepo(GSList *modifyrepotasks, gchar *repopath, GError **err);
64 
65 gboolean
66 cr_modifyrepo_parse_batchfile(const gchar *path,
67  GSList **modifyrepotasks,
68  GError **err);
69 
72 #ifdef __cplusplus
73 }
74 #endif
75 
76 #endif /* __C_CREATEREPOLIB_MODIFYREPO_SHARED__ */