X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Fidzebra%2Frecctrl.h;h=92f46e45382000b62457a8b3e4062bcfbed17fca;hb=4b903c542156253ebb2a4f004b528fe9e3af5212;hp=4a8f3846045c67eaac27392d48c43042c1cd57ba;hpb=852d5f1f9aa0a70f7e54a68143ee86752394a2f2;p=idzebra-moved-to-github.git diff --git a/include/idzebra/recctrl.h b/include/idzebra/recctrl.h index 4a8f384..92f46e4 100644 --- a/include/idzebra/recctrl.h +++ b/include/idzebra/recctrl.h @@ -1,5 +1,5 @@ -/* $Id: recctrl.h,v 1.29 2006-08-22 13:39:25 adam Exp $ - Copyright (C) 1995-2006 +/* $Id: recctrl.h,v 1.36 2007-10-29 13:43:57 adam Exp $ + Copyright (C) 1995-2007 Index Data ApS This file is part of the Zebra server. @@ -25,7 +25,6 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #include #include -#include #include #include #include @@ -85,6 +84,13 @@ struct ZebraRecStream { void (*destroy)(struct ZebraRecStream *s); }; +enum zebra_recctrl_action_t { + action_insert = 1, + action_replace, + action_delete, + action_update /* insert or replace as needed */ +}; + /** \brief record extract for indexing */ struct recExtractCtrl { struct ZebraRecStream *stream; @@ -100,6 +106,7 @@ struct recExtractCtrl { void (*schemaAdd)(struct recExtractCtrl *p, Odr_oid *oid); data1_handle dh; void *handle; + enum zebra_recctrl_action_t action; }; /* Retrieve record control */ @@ -108,7 +115,7 @@ struct recRetrieveCtrl { /* Input parameters ... */ Res res; /* Resource pool */ ODR odr; /* ODR used to create response */ - oid_value input_format; /* Preferred record syntax */ + const Odr_oid * input_format; /* Preferred record syntax OID */ Z_RecordComposition *comp; /* formatting instructions */ char *encoding; /* preferred character encoding */ zint localno; /* local id of record */ @@ -121,11 +128,11 @@ struct recRetrieveCtrl { zebra_snippets *doc_snippet; /* response */ - oid_value output_format; - void *rec_buf; + const Odr_oid * output_format; /* output format OID */ + void * rec_buf; int rec_len; int diagnostic; - char *addinfo; + char * addinfo; }; typedef struct recType *RecType; @@ -147,6 +154,7 @@ struct recType #define RECCTRL_EXTRACT_EOF 1 #define RECCTRL_EXTRACT_ERROR_GENERIC 2 #define RECCTRL_EXTRACT_ERROR_NO_SUCH_FILTER 3 +#define RECCTRL_EXTRACT_SKIP 4 typedef struct recTypeClass *RecTypeClass; typedef struct recTypes *RecTypes;