Ignore:
Timestamp:
2013-08-29T15:03:53+12:00 (11 years ago)
Author:
kjdon
Message:

making search param defaults able to be set in config file. uses <paramDefault name=xx value=yy> element. Now all defaults are set in paramDefaults HashMap instead of individual variables. have left index etc ones for now as they are more complicated.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/greenstone3/src/java/org/greenstone/gsdl3/service/AbstractTextSearch.java

    r26249 r28181  
    6060    public AbstractTextSearch()
    6161    {
     62      super();
    6263        // the search service
    6364        QUERY_SERVICE = "TextQuery";
     65        paramDefaults.put(CASE_PARAM, BOOLEAN_PARAM_ON);
     66        paramDefaults.put(STEM_PARAM, BOOLEAN_PARAM_OFF);
     67        paramDefaults.put(ACCENT_PARAM, BOOLEAN_PARAM_ON);
     68        paramDefaults.put(MATCH_PARAM, MATCH_PARAM_SOME);
    6469    }
    6570
     
    8792        Element param = null;
    8893        String param_default = default_value;
     94        if (default_value == null) {
     95          // have we got a stored up default? will be null if not there
     96          param_default = paramDefaults.get(name);
     97        }
    8998
    9099        if (super.createParameterChain(name, param_list, lang, default_value))
     
    94103        }
    95104        // otherwise look to see if it is a text specific parameter
    96         else if (name.equals(INDEX_SUBCOLLECTION_PARAM))
     105        if (name.equals(INDEX_SUBCOLLECTION_PARAM))
    97106        {
    98107            Element index_sub_list = (Element) GSXML.getChildByTagName(this.config_info, INDEX_SUBCOLLECTION_ELEM + GSXML.LIST_MODIFIER);
     
    137146        }
    138147    else if (name.equals(CASE_PARAM) || name.equals(STEM_PARAM) || name.equals(ACCENT_PARAM)) {
    139       if (param_default == null) {
    140         param_default = BOOLEAN_PARAM_OFF;
    141       }
    142148        String[] bool_ops = {"0", "1"};
    143149        String[] bool_texts = {getTextString("param.boolean.off", lang),getTextString("param.boolean.on", lang)};
     
    146152        return true;
    147153    } else if (name.equals(MATCH_PARAM)) {
    148       if (param_default == null) {
    149         param_default = MATCH_PARAM_SOME;
    150       }
    151154     
    152155        String[] vals = {MATCH_PARAM_SOME, MATCH_PARAM_ALL };
Note: See TracChangeset for help on using the changeset viewer.