New optional argument, maxrecs, for cmd=search
[pazpar2-moved-to-github.git] / src / client.h
index a410078..d996cd6 100644 (file)
@@ -1,5 +1,5 @@
 /* This file is part of Pazpar2.
-   Copyright (C) 2006-2008 Index Data
+   Copyright (C) 2006-2009 Index Data
 
 Pazpar2 is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free
@@ -30,16 +30,11 @@ struct connection;
 enum client_state
 {
     Client_Connecting,
-    Client_Connected,
     Client_Idle,
-    Client_Initializing,
-    Client_Searching,
-    Client_Presenting,
+    Client_Working,
     Client_Error,
     Client_Failed,
-    Client_Disconnected,
-    Client_Stopped,
-    Client_Continue
+    Client_Disconnected
 };
 
 int client_show_raw_begin(struct client *cl, int position,
@@ -48,8 +43,8 @@ int client_show_raw_begin(struct client *cl, int position,
                           void (*error_handler)(void *data, const char *addinfo),
                           void (*record_handler)(void *data, const char *buf,
                                                  size_t sz),
-                          void **data2,
                           int binary);
+
 void client_show_raw_remove(struct client *cl, void *rr);
 
 const char *client_get_state_str(struct client *cl);
@@ -62,11 +57,9 @@ void client_set_database(struct client *cl, struct session_database *db);
 struct session *client_get_session(struct client *cl);
 const char *client_get_pquery(struct client *cl);
 
-void client_set_requestid(struct client *cl, int id);
-
 void client_init_response(struct client *cl, Z_APDU *a);
-void client_search_response(struct client *cl, Z_APDU *a);
-void client_present_response(struct client *cl, Z_APDU *a);
+void client_search_response(struct client *cl);
+void client_record_response(struct client *cl);
 void client_close_response(struct client *cl, Z_APDU *a);
 
 int client_is_our_response(struct client *cl);
@@ -78,7 +71,9 @@ void client_destroy(struct client *c);
 
 void client_set_connection(struct client *cl, struct connection *con);
 void client_disconnect(struct client *cl);
-int client_prep_connection(struct client *cl);
+int client_prep_connection(struct client *cl,
+                           int operation_timeout, int session_timeout);
+void client_start_search(struct client *cl);
 void client_set_session(struct client *cl, struct session *se);
 int client_is_active(struct client *cl);
 struct client *client_next_in_session(struct client *cl);
@@ -90,13 +85,16 @@ int client_get_diagnostic(struct client *cl);
 void client_set_database(struct client *cl, struct session_database *db);
 struct host *client_get_host(struct client *cl);
 const char *client_get_url(struct client *cl);
+void client_set_maxrecs(struct client *cl, int v);
 
 #endif
 
 /*
  * Local variables:
  * c-basic-offset: 4
+ * c-file-style: "Stroustrup"
  * indent-tabs-mode: nil
  * End:
  * vim: shiftwidth=4 tabstop=8 expandtab
  */
+