createrepo_c library
0.1.17
C library for metadata manipulation
|
Datové struktry | |
struct | _cr_Metadata |
Definice maker | |
#define | cr_metadata_key(X) ((X)->key) |
#define | cr_metadata_hashtable(X) ((X)->ht) |
#define | cr_metadata_chunk(X) ((X)->chunk) |
#define | CR_LOAD_METADATA_OK 0 |
#define | CR_LOAD_METADATA_ERR 1 |
Definice typů | |
typedef struct _cr_Metadata * | cr_Metadata |
Výčty | |
enum | cr_HashTableKey { CR_HT_KEY_DEFAULT, CR_HT_KEY_HASH = CR_HT_KEY_DEFAULT, CR_HT_KEY_NAME, CR_HT_KEY_FILENAME } |
Funkce | |
cr_Metadata | cr_metadata_new (cr_HashTableKey key, int use_single_chunk, GSList *pkglist) |
void | cr_metadata_free (cr_Metadata md) |
int | cr_metadata_load_xml (cr_Metadata md, struct cr_MetadataLocation *ml) |
int | cr_metadata_locate_and_load_xml (cr_Metadata md, const char *repopath) |
Module for loading yum xml metadata.
Example:
#define CR_LOAD_METADATA_ERR 1 |
Error while loading metadata
Definice je uvedena na řádku 88 v souboru load_metadata.h.
#define CR_LOAD_METADATA_OK 0 |
Metadata loaded successfully
Definice je uvedena na řádku 87 v souboru load_metadata.h.
#define cr_metadata_chunk | ( | X | ) | ((X)->chunk) |
Return GStringChunk from a cr_Metadata
Definice je uvedena na řádku 72 v souboru load_metadata.h.
#define cr_metadata_hashtable | ( | X | ) | ((X)->ht) |
Return hashtable from a cr_Metadata
Definice je uvedena na řádku 70 v souboru load_metadata.h.
#define cr_metadata_key | ( | X | ) | ((X)->key) |
Return cr_HashTableKey from a cr_Metadata
Definice je uvedena na řádku 68 v souboru load_metadata.h.
typedef struct _cr_Metadata* cr_Metadata |
Pointer to structure with loaded metadata
Definice je uvedena na řádku 85 v souboru load_metadata.h.
enum cr_HashTableKey |
Package attribute used as key in the hashtable.
CR_HT_KEY_DEFAULT |
default = pkg hash |
CR_HT_KEY_HASH |
pkg hash (cr_Package ->pkgId) |
CR_HT_KEY_NAME |
pkg name (cr_Package ->name) |
CR_HT_KEY_FILENAME |
pkg filename (cr_Package ->location_href) |
Definice je uvedena na řádku 59 v souboru load_metadata.h.
void cr_metadata_free | ( | cr_Metadata | md | ) |
Destroy metadata.
md | cr_Metadata object |
int cr_metadata_load_xml | ( | cr_Metadata | md, |
struct cr_MetadataLocation * | ml | ||
) |
Load metadata from the specified location.
md | metadata object |
ml | metadata location |
int cr_metadata_locate_and_load_xml | ( | cr_Metadata | md, |
const char * | repopath | ||
) |
Locate and load metadata from the specified path.
md | metadata object |
repopath | path to repo (to directory with repodata/ subdir) |
cr_Metadata cr_metadata_new | ( | cr_HashTableKey | key, |
int | use_single_chunk, | ||
GSList * | pkglist | ||
) |
Create new (empty) metadata hashtable. It is NOT thread safe to load data into single cr_Metadata from multiple threads. But non modifying access to the loaded data in cr_Metadata is thread safe.
key | key specifies which value will be (is) used as key in hash table |
use_single_chunk | use only one string chunk (all loaded packages share one string chunk in the cr_Metadata object) Packages will not be standalone objects. This option leads to less memory consumption. |
pkglist | load only packages which base filename is in this list. If param is NULL all packages are loaded. |