X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=perl%2FIDZebra.i;h=020e8db0d9b0c1b257f98805fed5c149107b4122;hb=cd3f39bbae63668b8806ed205132da166e73102f;hp=288166167deb35aecb886d683c93a4418b985f67;hpb=b547f7eb4e4ae29d08a2c0fb7e2108b22ade3dd7;p=idzebra-moved-to-github.git diff --git a/perl/IDZebra.i b/perl/IDZebra.i index 2881661..020e8db 100644 --- a/perl/IDZebra.i +++ b/perl/IDZebra.i @@ -274,13 +274,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,22 +289,20 @@ 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 }; %name(insert_record) int zebra_insert_record (ZebraHandle zh, - recordGroup *rGroup, const char *recordType, - int sysno, + int *sysno, const char *match, const char *fname, const char *buf, - int buf_size, - int force_update); + int buf_size); %name(update_record) int zebra_update_record (ZebraHandle zh, - recordGroup *rGroup, const char *recordType, - int sysno, + int *sysno, const char *match, const char *fname, const char *buf, @@ -313,22 +311,22 @@ int zebra_update_record (ZebraHandle zh, %name(delete_record) int zebra_delete_record (ZebraHandle zh, - recordGroup *rGroup, const char *recordType, - int sysno, + int *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 }; %name(search_PQF) int zebra_search_PQF (ZebraHandle zh, const char *pqf_query, - const char *setname); + const char *setname, + int *hits); /* == YAZ - query tools ==================================================== */ @@ -370,8 +368,15 @@ int zebra_deleleResultSet(ZebraHandle zh, int function, int *statuses); +/* Resultset terms */ +%name(resultSetTerms) +int zebra_resultSetTerms (ZebraHandle zh, const char *setname, + int no, int *REFERENCE, + int *REFERENCE, char *out, int *REFERENCE); + /* == Sort ================================================================= */ -int sort (ZebraHandle zh, +%name(sort) +int zebra_sort_by_specstr (ZebraHandle zh, ODR stream, const char *sort_spec, const char *output_setname, @@ -387,6 +392,10 @@ void zebra_scan_PQF (ZebraHandle zh, scanEntry *getScanEntry(ScanObj *so, int pos); +%typemap(in) int * (int dvalue); +%typemap(argout) int *; + + /* Admin functionality */ /* %name(admin_start) void zebra_admin_start (ZebraHandle zh);