X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fsettings.c;h=ac66c5a8d35d5226bfe5920fcf5cc412891e0ed3;hb=44981e9f52420f6a42bb1ac55712f74a31d17020;hp=57d31689768317a9e5fa9d9d472f50ebd9153d5e;hpb=b72c950b16346bc9c653fe9419ee7ce25a4645bd;p=pazpar2-moved-to-github.git diff --git a/src/settings.c b/src/settings.c index 57d3168..ac66c5a 100644 --- a/src/settings.c +++ b/src/settings.c @@ -1,5 +1,5 @@ /* This file is part of Pazpar2. - Copyright (C) 2006-2010 Index Data + Copyright (C) 2006-2011 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 @@ -41,7 +41,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #include #include -#include "pazpar2.h" +#include "session.h" #include "database.h" #include "settings.h" @@ -59,7 +59,6 @@ static char *hard_settings[] = { "pz:id", "pz:name", "pz:queryencoding", - "pz:ip", "pz:zproxy", "pz:apdulog", "pz:sru", @@ -69,6 +68,15 @@ static char *hard_settings[] = { "pz:recordfilter", "pz:pqf_strftime", "pz:negotiation_charset", + "pz:max_connections", + "pz:reuse_connections", + "pz:termlist_term_factor", + "pz:preferred", + "pz:extra_args", + "pz:query_syntax", + "pz:facetmap:", + "pz:limitmap:", + "pz:url", 0 }; @@ -326,7 +334,7 @@ void expand_settings_array(struct setting ***set_ar, int *num, int offset, // This is called from grep_databases -- adds/overrides setting for a target // This is also where the rules for precedence of settings are implemented -static void update_database(void *context, struct database *db) +static void update_database_fun(void *context, struct database *db) { struct setting *set = ((struct update_database_context *) context)->set; @@ -336,7 +344,7 @@ static void update_database(void *context, struct database *db) int offset; // Is this the right database? - if (!match_zurl(db->url, set->target)) + if (!match_zurl(db->id, set->target)) return; offset = settings_create_offset(service, set->name); @@ -394,7 +402,7 @@ static void update_databases(void *client_data, struct setting *set) struct update_database_context context; context.set = set; context.service = service; - predef_grep_databases(&context, service, update_database); + predef_grep_databases(&context, service, update_database_fun); } // This simply copies the 'hard' (application-specific) settings @@ -435,7 +443,7 @@ static void prepare_target_dictionary(void *client_data, struct setting *set) // If target address is not wildcard, add the database if (*set->target && !zurl_wildcard(set->target)) - find_database(set->target, service); + create_database_for_service(set->target, service); // Determine if we already have a dictionary entry if (!strncmp(set->name, "pz:", 3) && (p = strchr(set->name + 3, ':')))