- zebra_records_retrieve(zh, stream, setname, comp, input_format,
- num_recs, recs);
-}
-
-/* ---------------------------------------------------------------------------
- Record insert(=update), delete
-
- If sysno is provided, then it's used to identify the record.
- If not, and match_criteria is provided, then sysno is guessed
- If not, and a record is provided, then sysno is got from there
-NOTE: Now returns 0 at success and updates sysno, which is an int*
- 20-jun-2003 Heikki
-*/
-
-int zebra_add_record(ZebraHandle zh,
- const char *buf, int buf_size)
-{
- return zebra_update_record(zh, 0, 0 /* sysno */, 0, 0, buf, buf_size, 0);
-}
-
-ZEBRA_RES zebra_insert_record (ZebraHandle zh,
- const char *recordType,
- SYSNO *sysno, const char *match,
- const char *fname,
- const char *buf, int buf_size, int force_update)
-{
- ZEBRA_RES res;
- ASSERTZH;
- assert(sysno);
- assert(buf);
- yaz_log(log_level, "zebra_insert_record sysno=" ZINT_FORMAT, *sysno);
-
- if (buf_size < 1)
- buf_size = strlen(buf);
-
- if (zebra_begin_trans(zh, 1) == ZEBRA_FAIL)
- return ZEBRA_FAIL;
- res = buffer_extract_record (zh, buf, buf_size,
- 0, /* delete_flag */
- 0, /* test_mode */
- recordType,
- sysno,
- match, fname,
- 0,
- 0); /* allow_update */
- if (zebra_end_trans(zh) != ZEBRA_OK)
- {
- yaz_log(YLOG_WARN, "zebra_end_trans failed");
- res = ZEBRA_FAIL;
- }
- return res;