X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Fzebraapi.h;h=1b822b3e5da7ef41c39eace34613ba6f3e244f19;hb=3e72747f4b28856e5f684dbe8984f8fb28680e62;hp=f05541aa75e7953487a1f64784135dc0a880126c;hpb=4247c4670f5bc5ad61e458734a590d57be5a9f34;p=idzebra-moved-to-github.git diff --git a/index/zebraapi.h b/index/zebraapi.h index f05541a..1b822b3 100644 --- a/index/zebraapi.h +++ b/index/zebraapi.h @@ -1,23 +1,34 @@ /* - * Copyright (C) 1994-1998, Index Data I/S + * Copyright (C) 1994-2002, Index Data * All rights reserved. * Sebastian Hammer, Adam Dickmeiss * - * $Log: zebraapi.h,v $ - * Revision 1.3 1998-06-22 11:36:48 adam - * Added authentication check facility to zebra. - * - * Revision 1.2 1998/06/13 00:14:09 adam - * Minor changes. - * - * Revision 1.1 1998/06/12 12:22:13 adam - * Work on Zebra API. - * + * $Id: zebraapi.h,v 1.16 2002-04-26 08:44:47 adam Exp $ */ -#include -#include -#include +#ifndef ZEBRAAPI_H +#define ZEBRAAPI_H + +#include +#include +#include +#include + +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; +}; /* Retrieval Record Descriptor */ typedef struct { @@ -36,15 +47,16 @@ typedef struct { char *term; /* scan term string */ } ZebraScanEntry; -typedef struct zebra_info *ZebraHandle; +typedef struct zebra_session *ZebraHandle; +typedef struct zebra_service *ZebraService; /* Open Zebra using file 'configName' (usually zebra.cfg) */ -YAZ_EXPORT ZebraHandle zebra_open (const char *configName); +YAZ_EXPORT ZebraHandle zebra_open (ZebraService zs); /* Search using RPN-Query */ -YAZ_EXPORT void zebra_search_rpn (ZebraHandle zh, ODR stream, - Z_RPNQuery *query, int num_bases, char **basenames, - const char *setname); +YAZ_EXPORT void zebra_search_rpn (ZebraHandle zh, ODR input, ODR output, + Z_RPNQuery *query, + const char *setname, int *hits); /* Retrieve record(s) */ YAZ_EXPORT void zebra_records_retrieve (ZebraHandle zh, ODR stream, @@ -56,10 +68,14 @@ YAZ_EXPORT void zebra_records_retrieve (ZebraHandle zh, ODR stream, YAZ_EXPORT void zebra_scan (ZebraHandle zh, ODR stream, Z_AttributesPlusTerm *zapt, oid_value attributeset, - int num_bases, char **basenames, int *position, int *num_entries, ZebraScanEntry **list, int *is_partial); + +/* Delete Result Set(s) */ +YAZ_EXPORT int zebra_deleleResultSet(ZebraHandle zh, int function, + int num_setnames, char **setnames, + int *statuses); /* Close zebra and destroy handle */ YAZ_EXPORT void zebra_close (ZebraHandle zh); @@ -72,9 +88,72 @@ YAZ_EXPORT const char *zebra_errString (ZebraHandle zh); /* extra information associated with error */ YAZ_EXPORT char *zebra_errAdd (ZebraHandle zh); -/* number of hits (after search) */ -YAZ_EXPORT int zebra_hits (ZebraHandle zh); - /* do authentication */ YAZ_EXPORT int zebra_auth (ZebraHandle zh, const char *user, const char *pass); +/* Character normalisation on specific register . + This routine is subject to change - do not use. */ +YAZ_EXPORT int zebra_string_norm (ZebraHandle zh, unsigned reg_id, + const char *input_str, int input_len, + char *output_str, int output_len); + +YAZ_EXPORT void zebra_admin_create (ZebraHandle zh, const char *db); + +YAZ_EXPORT ZebraService zebra_start (const char *configName); +YAZ_EXPORT void zebra_stop (ZebraService zs); + +YAZ_EXPORT void zebra_admin_shutdown (ZebraHandle zh); +YAZ_EXPORT void zebra_admin_start (ZebraHandle zh); + +YAZ_EXPORT void zebra_shutdown (ZebraService zs); + +YAZ_EXPORT void zebra_admin_import_begin (ZebraHandle zh, const char *database); + +YAZ_EXPORT void zebra_admin_import_segment (ZebraHandle zh, + Z_Segment *segment); + +void zebra_admin_import_end (ZebraHandle zh); + +void zebra_begin_trans (ZebraHandle zh); +void zebra_end_trans (ZebraHandle zh); + +int zebra_commit (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); + +YAZ_EXPORT void zebra_result (ZebraHandle zh, int *code, char **addinfo); + +YAZ_EXPORT const char *zebra_resultSetTerms (ZebraHandle zh, + const char *setname, + int no, int *count, int *no_max); + +YAZ_EXPORT void 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); + +YAZ_EXPORT +int zebra_select_database (ZebraHandle zh, const char *basename); + +YAZ_EXPORT +void zebra_shadow_enable (ZebraHandle zh, int value); + +YAZ_EXPORT +void zebra_register_statistics (ZebraHandle zh); + +YAZ_END_CDECL +#endif