X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=src%2Fsession.c;h=4d64e327292f0deb7d17a4c121309e999afcb994;hb=ad96f98478e2e653c503ae3cbfc3a3b80f0c5a1b;hp=2dc9572ba722bfa0a4d61c3a5bc4a86a8e28dc68;hpb=3969326d80fdaec47236fb2082a0650903b65328;p=pazpar2-moved-to-github.git diff --git a/src/session.c b/src/session.c index 2dc9572..4d64e32 100644 --- a/src/session.c +++ b/src/session.c @@ -168,6 +168,8 @@ void add_facet(struct session *s, const char *type, const char *value, int count = termlist_create(s->nmem, TERMLIST_HIGH_SCORE); s->num_termlists = i + 1; } + yaz_log(YLOG_DEBUG, "Session: facets for %s: %s (%d)", type, value, count); + termlist_insert(s->termlists[i].termlist, value, count); } @@ -434,7 +436,7 @@ void session_alert_watch(struct session *s, int what) session_watchfun fun; http_remove_observer(s->watchlist[what].obs); - fun = s->watchlist[what].fun; + fun = s->watchlist[what].fun; data = s->watchlist[what].data; /* reset watch before fun is invoked - in case fun wants to set @@ -444,6 +446,7 @@ void session_alert_watch(struct session *s, int what) s->watchlist[what].obs = 0; session_leave(s); + yaz_log(YLOG_DEBUG, "session_alert_watch: %d calling function: %p", what, fun); fun(data); } else @@ -507,6 +510,19 @@ int session_active_clients(struct session *s) return res; } +int session_is_preferred_clients_ready(struct session *s) +{ + struct client_list *l; + int res = 0; + + for (l = s->clients; l; l = l->next) + if (client_is_active_preferred(l->client)) + res++; + yaz_log(YLOG_DEBUG, "%p Session has %d active preferred clients.", s, res); + return res == 0; +} + + enum pazpar2_error_code search(struct session *se, const char *query,