-/* $Id: extract.c,v 1.222 2006-06-22 09:48:08 adam Exp $
+/* $Id: extract.c,v 1.224 2006-06-23 11:21:38 adam Exp $
Copyright (C) 1995-2006
Index Data ApS
}
}
-static void extract_add_index_string (RecWord *p, const char *str, int length);
+static void extract_add_index_string (RecWord *p,
+ zinfo_index_category_t cat,
+ const char *str, int length);
static void extract_set_store_data_prepare(struct recExtractCtrl *p);
{
int i;
int ch = -1;
+ zinfo_index_category_t cat = zinfo_index_category_index;
for (i = 0; i<ws_length; i++)
ws[i] = NULL;
if (ch < 0)
- ch = zebraExplain_lookup_attr_str(zh->reg->zei, '0', index_name);
+ ch = zebraExplain_lookup_attr_str(zh->reg->zei, cat, '0', index_name);
if (ch < 0)
- ch = zebraExplain_lookup_attr_str(zh->reg->zei, 'p', index_name);
+ ch = zebraExplain_lookup_attr_str(zh->reg->zei, cat, 'p', index_name);
if (ch < 0)
- ch = zebraExplain_lookup_attr_str(zh->reg->zei, 'w', index_name);
+ ch = zebraExplain_lookup_attr_str(zh->reg->zei, cat, 'w', index_name);
if (ch < 0)
return ;
{
RecWord word;
extract_init(ctrl, &word);
- word.index_name = "allrecords";
+ word.index_name = "_ALLRECORDS";
word.index_type = 'w';
word.seqno = 1;
- extract_add_index_string (&word, "", 0);
+ extract_add_index_string (&word, zinfo_index_category_alwaysmatches,
+ "", 0);
}
static ZEBRA_RES file_extract_record(ZebraHandle zh,
}
}
-static void extract_add_index_string(RecWord *p, const char *str, int length)
+static void extract_add_index_string(RecWord *p, zinfo_index_category_t cat,
+ const char *str, int length)
{
struct it_key key;
if (!p->index_name)
return;
- ch = zebraExplain_lookup_attr_str(zei, p->index_type, p->index_name);
+ ch = zebraExplain_lookup_attr_str(zei, cat, p->index_type, p->index_name);
if (ch < 0)
- ch = zebraExplain_add_attr_str(zei, p->index_type, p->index_name);
+ ch = zebraExplain_add_attr_str(zei, cat, p->index_type, p->index_name);
key.len = 4;
key.mem[0] = ch;
ZebraHandle zh = p->extractCtrl->handle;
ZebraExplainInfo zei = zh->reg->zei;
int ch;
+ zinfo_index_category_t cat = zinfo_index_category_sort;
+
if (!p->index_name)
return;
- ch = zebraExplain_lookup_attr_str(zei, p->index_type, p->index_name);
+ ch = zebraExplain_lookup_attr_str(zei, cat, p->index_type, p->index_name);
if (ch < 0)
- ch = zebraExplain_add_attr_str(zei, p->index_type, p->index_name);
+ ch = zebraExplain_add_attr_str(zei, cat, p->index_type, p->index_name);
key.len = 4;
key.mem[0] = ch;
key.mem[1] = p->record_id;
extract_add_sort_string (p, string, length);
else
{
- extract_add_index_string(p, string, length);
+ extract_add_index_string(p, zinfo_index_category_index,
+ string, length);
if (zebra_maps_is_alwaysmatches(p->zebra_maps, p->index_type))
{
RecWord word;
memcpy(&word, p, sizeof(word));
word.seqno = 1;
- extract_add_index_string (&word, "", 0);
+ extract_add_index_string(
+ &word, zinfo_index_category_alwaysmatches, "", 0);
}
}
}