40 #include <libmemcached/memcached.h>
43 #include <hiredis/hiredis.h>
62 #define STATE_CONNECTING 1
63 #define STATE_ESTABLISHED 2
119 #if HAVE_LIBMEMCACHED
123 redisContext *redis_c;
131 #define RECORD_HASH_SIZE 131
197 #define ZOOM_TASK_SEARCH 1
206 #define ZOOM_TASK_CONNECT 3
207 #define ZOOM_TASK_SCAN 4
211 #define ZOOM_TASK_PACKAGE 5
213 #define ZOOM_TASK_SORT 6
233 const char *addinfo,
const char *addinfo2);
255 const char *elementSetName,
259 const char *syntax,
const char *elementSetName,
278 const char *addinfo,
const char *addinfo2);
295 const char *syntax,
const char *elementSetName,
300 const char *elementSetName,
304 const char *elementSetName,
Header for Mutex functions.
int options(const char *desc, char **argv, int argc, char **arg)
command-line options parsing for main
Header for Z39.50 Protocol.
int preferred_message_size
ZOOM_resultset resultsets
int support_named_resultsets
struct facet_term_p * facet_terms
ZOOM_connection connection
ZOOM_facet_field * res_facets
Z_SortKeySpecList * r_sort_spec
ZOOM_record_cache record_hash[RECORD_HASH_SIZE]
ZOOM_connection connection
struct WRBUF_shptr * record_wrbuf
Z_SRW_scanResponse * srw_scan_response
ZOOM_connection connection
Z_ScanResponse * scan_response
struct ZOOM_task_p::@133::@134 search
struct ZOOM_task_p::@133::@136 sort
union ZOOM_task_p::@133 u
Header for WRBUF (growing buffer)
struct ZOOM_record_cache_p * ZOOM_record_cache
struct ZOOM_Event_p * ZOOM_Event
ZOOM_Event ZOOM_Event_create(int kind)
struct ZOOM_task_p * ZOOM_task
void ZOOM_handle_search_result(ZOOM_connection c, ZOOM_resultset resultset, Z_OtherInformation *o)
Z_NamePlusRecord * ZOOM_memcached_lookup(ZOOM_resultset r, int pos, const char *syntax, const char *elementSetName, const char *schema)
zoom_ret ZOOM_send_GDU(ZOOM_connection c, Z_GDU *gdu)
void ZOOM_handle_facet_result(ZOOM_connection c, ZOOM_resultset r, Z_OtherInformation *o)
zoom_ret ZOOM_send_buf(ZOOM_connection c)
ZOOM_record ZOOM_record_cache_lookup(ZOOM_resultset r, int pos, const char *syntax, const char *elementSetName, const char *schema)
int ZOOM_handle_sru(ZOOM_connection c, Z_HTTP_Response *hres, zoom_ret *cret, char **addinfo)
void ZOOM_memcached_destroy(ZOOM_connection c)
int ZOOM_uri_to_code(const char *uri)
int ZOOM_test_reconnect(ZOOM_connection c)
zoom_ret ZOOM_connection_srw_send_search(ZOOM_connection c)
void ZOOM_set_error(ZOOM_connection c, int error, const char *addinfo)
void ZOOM_handle_Z3950_apdu(ZOOM_connection c, Z_APDU *apdu)
zoom_ret ZOOM_connection_Z3950_send_scan(ZOOM_connection c)
int ZOOM_memcached_configure(ZOOM_connection c)
void ZOOM_options_addref(ZOOM_options opt)
const char * ZOOM_query_get_query_string(ZOOM_query s)
void ZOOM_memcached_add(ZOOM_resultset r, Z_NamePlusRecord *npr, int pos, const char *syntax, const char *elementSetName, const char *schema, Z_SRW_diagnostic *diag)
void ZOOM_connection_remove_task(ZOOM_connection c)
Z_SortKeySpecList * ZOOM_query_get_sortspec(ZOOM_query s)
zoom_ret send_Z3950_sort(ZOOM_connection c, ZOOM_resultset resultset)
void ZOOM_handle_facet_list(ZOOM_resultset r, Z_FacetList *fl)
void ZOOM_record_cache_add(ZOOM_resultset r, Z_NamePlusRecord *npr, int pos, const char *syntax, const char *elementSetName, const char *schema, Z_SRW_diagnostic *diag)
zoom_ret ZOOM_connection_Z3950_send_init(ZOOM_connection c)
void ZOOM_memcached_hitcount(ZOOM_connection c, ZOOM_resultset result, Z_OtherInformation *oi, const char *precision)
ZOOM_task ZOOM_connection_add_task(ZOOM_connection c, int which)
Z_Query * ZOOM_query_get_Z_Query(ZOOM_query s)
void ZOOM_query_get_hash(ZOOM_query s, WRBUF w)
ZOOM_Event ZOOM_connection_get_event(ZOOM_connection c)
zoom_ret ZOOM_connection_srw_send_scan(ZOOM_connection c)
zoom_ret ZOOM_connection_Z3950_search(ZOOM_connection c)
ZOOM_record ZOOM_record_cache_lookup_i(ZOOM_resultset r, int pos, const char *syntax, const char *elementSetName, const char *schema)
void ZOOM_connection_put_event(ZOOM_connection c, ZOOM_Event event)
void ZOOM_memcached_resultset(ZOOM_resultset r, ZOOM_query q)
void ZOOM_memcached_search(ZOOM_connection c, ZOOM_resultset r)
void ZOOM_set_HTTP_error(ZOOM_connection c, int error, const char *addinfo, const char *addinfo2)
char ** ZOOM_connection_get_databases(ZOOM_connection con, ZOOM_options options, int *num, ODR odr)
void ZOOM_connection_remove_tasks(ZOOM_connection c)
const char * ZOOM_query_get_sru11(ZOOM_query s)
void ZOOM_Event_destroy(ZOOM_Event event)
void ZOOM_set_dset_error(ZOOM_connection c, int error, const char *dset, const char *addinfo, const char *addinfo2)
void ZOOM_memcached_init(ZOOM_connection c)
void ZOOM_connection_remove_events(ZOOM_connection c)
typedefZOOM_BEGIN_CDECL struct ZOOM_options_p * ZOOM_options