/* This file is part of the YAZ toolkit. * Copyright (C) Index Data * See the file LICENSE for details. */ #include #include #include #include const char *my_callback (void *handle, const char *name) { if (!strcmp (name, "async")) return "1"; return 0; } int main(int argc, char **argv) { int i; int no = argc-3; ZOOM_connection z[500]; /* allow at most 500 connections */ ZOOM_resultset r[500]; /* and result sets .. */ ZOOM_query q; ZOOM_options o = ZOOM_options_create (); if (argc < 4) { fprintf (stderr, "usage:\n%s proxy target1 .. targetN query\n", *argv); exit (2); } if (no > 500) no = 500; /* function my_callback called when reading options .. */ ZOOM_options_set_callback (o, my_callback, 0); /* get 20 (at most) records from offset 5 */ ZOOM_options_set (o, "start", "5"); ZOOM_options_set (o, "count", "20"); ZOOM_options_set (o, "schema", "gils-schema"); ZOOM_options_set (o, "elementSetName", "F"); /* set proxy */ ZOOM_options_set (o, "proxy", argv[1]); /* create query */ q = ZOOM_query_create (); if (ZOOM_query_prefix (q, argv[argc-1])) { printf ("bad PQF: %s\n", argv[argc-1]); exit (1); } /* connect - and search all */ for (i = 0; i