X-Git-Url: http://git.indexdata.com/?p=idzebra-moved-to-github.git;a=blobdiff_plain;f=perl%2FIDZebra.i;h=c9294aef47d4721029a1563ccf7e0943c37cb2c5;hp=8cd8382a9badba67319531ad5232c1f4c67a8a67;hb=2e4e9c6def27f1e1463dcb6f205fab6a98054f38;hpb=03e275196b3f82415a965d0bdd6bfa52a15d7446 diff --git a/perl/IDZebra.i b/perl/IDZebra.i index 8cd8382..c9294ae 100644 --- a/perl/IDZebra.i +++ b/perl/IDZebra.i @@ -88,20 +88,6 @@ /*%include "zebra_perl.h" */ -typedef struct { - char *groupName; - char *databaseName; - char *path; - char *recordId; - char *recordType; - int flagStoreData; - int flagStoreKeys; - int flagRw; - int fileVerboseLimit; - int databaseNamePath; - int explainDatabase; - int followLinks; -} recordGroup; typedef struct { int noOfRecords; @@ -113,7 +99,7 @@ typedef struct { char *errString; /* error string */ int position; /* position of record in result set (1,2,..) */ char *base; - int sysno; + long long sysno; int score; char *format; /* record syntax */ RetrievalRecordBuf *buf; @@ -216,18 +202,16 @@ const char * zebra_errString (ZebraHandle zh); char * zebra_errAdd (ZebraHandle zh); -/* == Record groups and database selection ================================= */ +/* == Zebra resources and database selection =============================== */ -/* initialize a recordGroup (zebra_api_ext.c); */ -void init_recordGroup (recordGroup *rg); +/* set a resource */ +%name(set_resource) +void zebra_set_resource(ZebraHandle zh, const char *name, const char *value); -/* set up a recordGroup for a specific file extension from zebra.cfg - (zebra_api_ext.c); */ -void res_get_recordGroup (ZebraHandle zh, recordGroup *rg, - const char *ext); -/* set current record group for update purposes (zebraapi.c) */ -%name(set_group) -void zebra_set_group (ZebraHandle zh, struct recordGroup *rg); +/* get a resource */ +%name(get_resource) +const char *zebra_set_resource(ZebraHandle zh, const char *name, + const char *defaultvalue); /* select database for update purposes (zebraapi.c) */ %name(select_database) @@ -274,13 +258,13 @@ int zebra_init (ZebraHandle zh); int zebra_compact (ZebraHandle zh); %name(repository_update) -void zebra_repository_update (ZebraHandle zh); +void zebra_repository_update (ZebraHandle zh, const char *path); %name(repository_delete) -void zebra_repository_delete (ZebraHandle zh); +void zebra_repository_delete (ZebraHandle zh, const char *path); %name(repository_show) -void zebra_repository_show (ZebraHandle zh); +void zebra_repository_show (ZebraHandle zh, const char *path); /* == Record update/delete (zebra_api_ext.c) =============================== */ @@ -289,23 +273,21 @@ void zebra_repository_show (ZebraHandle zh); If not, and match_criteria is provided, then sysno is guessed If not, and a record is provided, then sysno is got from there */ -%apply int *REFERENCE { int *sysno }; +%apply int *REFERENCE { long long *sysno }; %name(insert_record) int zebra_insert_record (ZebraHandle zh, - recordGroup *rGroup, const char *recordType, - int *sysno, + long long *sysno, const char *match, const char *fname, const char *buf, int buf_size, - int force_update); + int force_update); %name(update_record) int zebra_update_record (ZebraHandle zh, - recordGroup *rGroup, const char *recordType, - int *sysno, + long long *sysno, const char *match, const char *fname, const char *buf, @@ -314,16 +296,14 @@ int zebra_update_record (ZebraHandle zh, %name(delete_record) int zebra_delete_record (ZebraHandle zh, - recordGroup *rGroup, const char *recordType, - int *sysno, + long long *sysno, const char *match, const char *fname, const char *buf, int buf_size, int force_update); - /* == Search (zebraapi.c) ================================================== */ %include "typemaps.i" %apply int *REFERENCE { int *hits };