IDZEBRA  2.2.7
Data Structures | Macros | Typedefs | Enumerations | Functions
recctrl.h File Reference
#include <sys/types.h>
#include <yaz/proto.h>
#include <yaz/odr.h>
#include <idzebra/res.h>
#include <idzebra/data1.h>
#include <idzebra/snippet.h>

Go to the source code of this file.

Data Structures

struct  RecWord
 
struct  ZebraRecStream
 record reader stream More...
 
struct  recExtractCtrl
 record extract for indexing More...
 
struct  recRetrieveCtrl
 
struct  recType
 

Macros

#define ZEBRA_XPATH_ELM_BEGIN   "_XPATH_BEGIN"
 
#define ZEBRA_XPATH_ELM_END   "_XPATH_END"
 
#define ZEBRA_XPATH_CDATA   "_XPATH_CDATA"
 
#define ZEBRA_XPATH_ATTR_NAME   "_XPATH_ATTR_NAME"
 
#define ZEBRA_XPATH_ATTR_CDATA   "_XPATH_ATTR_CDATA"
 
#define ZEBRA_GROUP_INDEX_NAME   "_GROUP_"
 
#define RECCTRL_EXTRACT_OK   0
 
#define RECCTRL_EXTRACT_EOF   1
 
#define RECCTRL_EXTRACT_ERROR_GENERIC   2
 
#define RECCTRL_EXTRACT_ERROR_NO_SUCH_FILTER   3
 
#define RECCTRL_EXTRACT_SKIP   4
 

Typedefs

typedef struct recTypeRecType
 
typedef struct recTypeClassRecTypeClass
 
typedef struct recTypesRecTypes
 

Enumerations

enum  zebra_recctrl_action_t {
  action_insert = 1 , action_replace , action_delete , action_update ,
  action_a_delete
}
 

Functions

RecTypeClass recTypeClass_create (Res res, NMEM nmem)
 
void recTypeClass_load_modules (RecTypeClass *rts, NMEM nmem, const char *module_path)
 
RecTypeClass recTypeClass_add_modules (Res res, NMEM nmem, const char *module_path)
 
void recTypeClass_destroy (RecTypeClass rtc)
 
void recTypeClass_info (RecTypeClass rtc, void *cd, void(*cb)(void *cd, const char *s))
 
RecTypes recTypes_init (RecTypeClass rtc, data1_handle dh)
 
void recTypes_destroy (RecTypes recTypes)
 
void recTypes_default_handlers (RecTypes recTypes, Res res)
 
RecType recType_byName (RecTypes rts, Res res, const char *name, void **clientDataP)
 

Macro Definition Documentation

◆ RECCTRL_EXTRACT_EOF

#define RECCTRL_EXTRACT_EOF   1

Definition at line 164 of file recctrl.h.

◆ RECCTRL_EXTRACT_ERROR_GENERIC

#define RECCTRL_EXTRACT_ERROR_GENERIC   2

Definition at line 165 of file recctrl.h.

◆ RECCTRL_EXTRACT_ERROR_NO_SUCH_FILTER

#define RECCTRL_EXTRACT_ERROR_NO_SUCH_FILTER   3

Definition at line 166 of file recctrl.h.

◆ RECCTRL_EXTRACT_OK

#define RECCTRL_EXTRACT_OK   0

Definition at line 163 of file recctrl.h.

◆ RECCTRL_EXTRACT_SKIP

#define RECCTRL_EXTRACT_SKIP   4

Definition at line 167 of file recctrl.h.

◆ ZEBRA_GROUP_INDEX_NAME

#define ZEBRA_GROUP_INDEX_NAME   "_GROUP_"

Definition at line 47 of file recctrl.h.

◆ ZEBRA_XPATH_ATTR_CDATA

#define ZEBRA_XPATH_ATTR_CDATA   "_XPATH_ATTR_CDATA"

Definition at line 45 of file recctrl.h.

◆ ZEBRA_XPATH_ATTR_NAME

#define ZEBRA_XPATH_ATTR_NAME   "_XPATH_ATTR_NAME"

Definition at line 42 of file recctrl.h.

◆ ZEBRA_XPATH_CDATA

#define ZEBRA_XPATH_CDATA   "_XPATH_CDATA"

Definition at line 39 of file recctrl.h.

◆ ZEBRA_XPATH_ELM_BEGIN

#define ZEBRA_XPATH_ELM_BEGIN   "_XPATH_BEGIN"

Definition at line 33 of file recctrl.h.

◆ ZEBRA_XPATH_ELM_END

#define ZEBRA_XPATH_ELM_END   "_XPATH_END"

Definition at line 36 of file recctrl.h.

Typedef Documentation

◆ RecType

typedef struct recType* RecType

Definition at line 148 of file recctrl.h.

◆ RecTypeClass

typedef struct recTypeClass* RecTypeClass

Definition at line 169 of file recctrl.h.

◆ RecTypes

typedef struct recTypes* RecTypes

Definition at line 170 of file recctrl.h.

Enumeration Type Documentation

◆ zebra_recctrl_action_t

record update action

Enumerator
action_insert 

insert record (fail if it exists already)

action_replace 

replace record (fail it it does not exist)

action_delete 

delete record (fail if it does not exist)

action_update 

insert or replace

action_a_delete 

delete record (ignore if it does not exist)

Definition at line 87 of file recctrl.h.

Function Documentation

◆ recType_byName()

RecType recType_byName ( RecTypes  rts,
Res  res,
const char *  name,
void **  clientDataP 
)

◆ recTypeClass_add_modules()

RecTypeClass recTypeClass_add_modules ( Res  res,
NMEM  nmem,
const char *  module_path 
)

◆ recTypeClass_create()

RecTypeClass recTypeClass_create ( Res  res,
NMEM  nmem 
)

Definition at line 58 of file recctrl.c.

References recTypeClass_add().

Referenced by zebra_start_res().

◆ recTypeClass_destroy()

void recTypeClass_destroy ( RecTypeClass  rtc)

Definition at line 223 of file recctrl.c.

References recTypeClass::module_handle, and recTypeClass::next.

Referenced by zebra_stop().

◆ recTypeClass_info()

void recTypeClass_info ( RecTypeClass  rtc,
void *  cd,
void(*)(void *cd, const char *s)  cb 
)

Definition at line 216 of file recctrl.c.

References recType::name, recTypeClass::next, and recTypeClass::recType.

Referenced by zebra_filter_info().

◆ recTypeClass_load_modules()

void recTypeClass_load_modules ( RecTypeClass rts,
NMEM  nmem,
const char *  module_path 
)

Definition at line 177 of file recctrl.c.

References FILENAME_MAX, and load_from_dir().

Referenced by zebra_start_res().

◆ recTypes_default_handlers()

void recTypes_default_handlers ( RecTypes  recTypes,
Res  res 
)

◆ recTypes_destroy()

void recTypes_destroy ( RecTypes  recTypes)

◆ recTypes_init()

RecTypes recTypes_init ( RecTypeClass  rtc,
data1_handle  dh 
)