X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Fbackend.h;h=278978b5da4e335e5a560d8857472cbc33425818;hb=cdea632bd515af06beaa311c8569180da1e082da;hp=b531fe35ed7399d5e4eb34d4bd411d8fbe069f4a;hpb=102fffd24eb36b4b8322b3f139166ce5f5a4b7d4;p=yaz-moved-to-github.git diff --git a/include/backend.h b/include/backend.h index b531fe3..278978b 100644 --- a/include/backend.h +++ b/include/backend.h @@ -24,7 +24,17 @@ * OF THIS SOFTWARE. * * $Log: backend.h,v $ - * Revision 1.24 1999-03-31 11:18:24 adam + * Revision 1.27 1999-10-11 10:01:24 adam + * Implemented bend_sort_rr handler for frontend server. + * + * Revision 1.26 1999/06/17 10:54:44 adam + * Added facility to specify implementation version - and name + * for server. + * + * Revision 1.25 1999/06/01 14:29:12 adam + * Work on Extended Services. + * + * Revision 1.24 1999/03/31 11:18:24 adam * Implemented odr_strdup. Added Reference ID to backend server API. * * Revision 1.23 1998/10/13 16:12:23 adam @@ -189,6 +199,23 @@ typedef struct bend_scanresult char *errstring; } bend_scanresult; +typedef struct bend_scan_rr { + int num_bases; /* number of elements in databaselist */ + char **basenames; /* databases to search */ + oid_value attributeset; + Z_ReferenceId *referenceId; /* reference ID */ + Z_AttributesPlusTerm *term; + ODR stream; /* encoding stream - memory source if required */ + + int term_position; /* desired index of term in result list/returned */ + int num_entries; /* number of entries requested/returned */ + + struct scan_entry *entries; + bend_scan_status status; + int errcode; + char *errstring; +} bend_scan_rr; + YAZ_EXPORT bend_scanresult *bend_scan(void *handle, bend_scanrequest *r, int *fd); YAZ_EXPORT bend_scanresult *bend_scanresponse(void *handle); @@ -231,7 +258,7 @@ typedef struct bend_esrequest_rr Z_ReferenceId *referenceId;/* reference ID */ bend_request request; bend_association association; - int errcode; /* 0==success */ + int errcode; /* 0==success, -1==accepted, >0 = failure */ char *errstring; /* system error string or NULL */ } bend_esrequest_rr; @@ -242,11 +269,14 @@ typedef struct bend_initrequest ODR stream; /* encoding stream */ Z_ReferenceId *referenceId;/* reference ID */ + char *implementation_name; + char *implementation_version; int (*bend_sort) (void *handle, bend_sort_rr *rr); int (*bend_search) (void *handle, bend_search_rr *rr); int (*bend_present) (void *handle, bend_present_rr *rr); int (*bend_esrequest) (void *handle, bend_esrequest_rr *rr); int (*bend_delete)(void *handle, bend_delete_rr *rr); + int (*bend_scan)(void *handle, bend_scan_rr *rr); } bend_initrequest; typedef struct bend_initresult