X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Fzebraapi.h;h=f7facec693f6f786a0d756fc0ed45ebe53d86383;hb=4a3a97df9d47b8d099e403308f8015f130366994;hp=64de9ebcc24cfc36cb0aa390ad1b405dcc993db7;hpb=58e3c5132f9fe86fefbf2e130275ab9980eeed1e;p=idzebra-moved-to-github.git diff --git a/include/zebraapi.h b/include/zebraapi.h index 64de9eb..f7facec 100644 --- a/include/zebraapi.h +++ b/include/zebraapi.h @@ -1,5 +1,5 @@ -/* $Id: zebraapi.h,v 1.7 2003-06-18 11:46:33 adam Exp $ - Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003 +/* $Id: zebraapi.h,v 1.13 2004-07-28 08:15:45 adam Exp $ + Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004 Index Data Aps This file is part of the Zebra server. @@ -20,12 +20,19 @@ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +/* Return codes: + * Most functions return an int. Unix-like, 0 means OK, + * non-zero means an error. The error info should be available + * via zebra_errCode and friends. + */ + #ifndef ZEBRAAPI_H #define ZEBRAAPI_H #include #include #include +#include #include /* Fixme! Compare string (ignore case) */ @@ -37,21 +44,6 @@ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA YAZ_BEGIN_CDECL -struct recordGroup { - char *groupName; - char *databaseName; - char *path; - char *recordId; - char *recordType; - int flagStoreData; - int flagStoreKeys; - int flagRw; - int fileVerboseLimit; - int databaseNamePath; - int explainDatabase; - int followLinks; -}; - typedef struct { int processed; int inserted; @@ -91,9 +83,11 @@ typedef struct zebra_service *ZebraService; /* Start Zebra using file 'configName' (usually zebra.cfg) */ /* There should be exactly one ZebraService */ YAZ_EXPORT ZebraService zebra_start (const char *configName); +YAZ_EXPORT ZebraService zebra_start_res (const char *configName, + Res def_res, Res over_res); /* Close the whole Zebra */ -YAZ_EXPORT void zebra_stop (ZebraService zs); +YAZ_EXPORT int zebra_stop (ZebraService zs); /* Open a ZebraHandle */ @@ -103,7 +97,7 @@ YAZ_EXPORT void zebra_stop (ZebraService zs); YAZ_EXPORT ZebraHandle zebra_open (ZebraService zs); /* Close handle */ -YAZ_EXPORT void zebra_close (ZebraHandle zh); +YAZ_EXPORT int zebra_close (ZebraHandle zh); /********* * Error handling @@ -119,9 +113,11 @@ YAZ_EXPORT const char *zebra_errString (ZebraHandle zh); YAZ_EXPORT char *zebra_errAdd (ZebraHandle zh); /* get the result code and addinfo from zh */ -YAZ_EXPORT void zebra_result (ZebraHandle zh, int *code, char **addinfo); +YAZ_EXPORT int zebra_result (ZebraHandle zh, int *code, char **addinfo); /* FIXME - why is this needed?? -H */ +/* clear them error things */ +YAZ_EXPORT void zebra_clearError(ZebraHandle zh); /************** * Searching @@ -129,14 +125,14 @@ YAZ_EXPORT void zebra_result (ZebraHandle zh, int *code, char **addinfo); /* Search using PQF Query */ YAZ_EXPORT int zebra_search_PQF (ZebraHandle zh, const char *pqf_query, - const char *setname); + const char *setname, int *numhits); /* Search using RPN Query */ -YAZ_EXPORT void zebra_search_RPN (ZebraHandle zh, ODR o, Z_RPNQuery *query, - const char *setname, int *hits); +YAZ_EXPORT int zebra_search_RPN (ZebraHandle zh, ODR o, Z_RPNQuery *query, + const char *setname, int *hits); /* Retrieve record(s) */ -YAZ_EXPORT void zebra_records_retrieve (ZebraHandle zh, ODR stream, +YAZ_EXPORT int zebra_records_retrieve (ZebraHandle zh, ODR stream, const char *setname, Z_RecordComposition *comp, oid_value input_format, int num_recs, ZebraRetrievalRecord *recs); @@ -148,7 +144,7 @@ YAZ_EXPORT int zebra_deleleResultSet(ZebraHandle zh, int function, /* Browse */ -YAZ_EXPORT void zebra_scan (ZebraHandle zh, ODR stream, +YAZ_EXPORT int zebra_scan (ZebraHandle zh, ODR stream, Z_AttributesPlusTerm *zapt, oid_value attributeset, int *position, int *num_entries, @@ -175,24 +171,23 @@ YAZ_EXPORT int zebra_string_norm (ZebraHandle zh, unsigned reg_id, * Admin */ -YAZ_EXPORT void zebra_create_database (ZebraHandle zh, const char *db); - +YAZ_EXPORT int zebra_create_database (ZebraHandle zh, const char *db); +YAZ_EXPORT int zebra_drop_database (ZebraHandle zh, const char *db); -YAZ_EXPORT void zebra_admin_shutdown (ZebraHandle zh); -YAZ_EXPORT void zebra_admin_start (ZebraHandle zh); +YAZ_EXPORT int zebra_admin_shutdown (ZebraHandle zh); +YAZ_EXPORT int zebra_admin_start (ZebraHandle zh); -YAZ_EXPORT void zebra_shutdown (ZebraService zs); +YAZ_EXPORT int zebra_shutdown (ZebraService zs); -YAZ_EXPORT void zebra_admin_import_begin (ZebraHandle zh, const char *database, +YAZ_EXPORT int zebra_admin_import_begin (ZebraHandle zh, const char *database, const char *record_type); -YAZ_EXPORT void zebra_admin_import_segment (ZebraHandle zh, +YAZ_EXPORT int zebra_admin_import_segment (ZebraHandle zh, Z_Segment *segment); -void zebra_admin_import_end (ZebraHandle zh); +YAZ_EXPORT int zebra_admin_import_end (ZebraHandle zh); int zebra_admin_exchange_record (ZebraHandle zh, - const char *database, const char *rec_buf, size_t rec_len, const char *recid_buf, size_t recid_len, @@ -207,26 +202,39 @@ int zebra_clean (ZebraHandle zh); int zebra_init (ZebraHandle zh); int zebra_compact (ZebraHandle zh); -void zebra_repository_update (ZebraHandle zh); -void zebra_repository_delete (ZebraHandle zh); -void zebra_repository_show (ZebraHandle zh); -int zebra_record_insert (ZebraHandle zh, const char *buf, int len); - -YAZ_EXPORT void zebra_set_group (ZebraHandle zh, struct recordGroup *rg); - +int zebra_repository_update (ZebraHandle zh, const char *path); +int zebra_repository_delete (ZebraHandle zh, const char *path); +int zebra_repository_show (ZebraHandle zh, const char *path); + +int zebra_add_record (ZebraHandle zh, const char *buf, int buf_size); + +int zebra_insert_record (ZebraHandle zh, + const char *recordType, + int *sysno, const char *match, const char *fname, + const char *buf, int buf_size, + int force_update); +int zebra_update_record (ZebraHandle zh, + const char *recordType, + int* sysno, const char *match, const char *fname, + const char *buf, int buf_size, + int force_update); +int zebra_delete_record (ZebraHandle zh, + const char *recordType, + int *sysno, const char *match, const char *fname, + const char *buf, int buf_size, + int force_update); YAZ_EXPORT int zebra_resultSetTerms (ZebraHandle zh, const char *setname, int no, int *count, int *type, char *out, size_t *len); -YAZ_EXPORT void zebra_sort (ZebraHandle zh, ODR stream, +YAZ_EXPORT int zebra_sort (ZebraHandle zh, ODR stream, int num_input_setnames, const char **input_setnames, const char *output_setname, Z_SortKeySpecList *sort_sequence, int *sort_status); - YAZ_EXPORT int zebra_select_databases (ZebraHandle zh, int num_bases, const char **basenames); @@ -235,21 +243,23 @@ YAZ_EXPORT int zebra_select_database (ZebraHandle zh, const char *basename); YAZ_EXPORT -void zebra_shadow_enable (ZebraHandle zh, int value); +int zebra_shadow_enable (ZebraHandle zh, int value); YAZ_EXPORT -void zebra_register_statistics (ZebraHandle zh, int dumpdict); +int zebra_register_statistics (ZebraHandle zh, int dumpdict); YAZ_EXPORT int zebra_record_encoding (ZebraHandle zh, const char *encoding); /* Resources */ YAZ_EXPORT -void zebra_set_resource(ZebraHandle zh, const char *name, const char *value); +int zebra_set_resource(ZebraHandle zh, const char *name, const char *value); YAZ_EXPORT const char *zebra_get_resource(ZebraHandle zh, const char *name, const char *defaultvalue); +YAZ_EXPORT void zebra_pidfname(ZebraService zs, char *path); + YAZ_END_CDECL #endif