Changeset 13916
- Timestamp:
- 2007-02-15T10:53:23+13:00 (17 years ago)
- Location:
- trunk/gsdl3/src/java/org/greenstone/gsdl3/service
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gsdl3/src/java/org/greenstone/gsdl3/service/AbstractGS2FieldSearch.java
r13911 r13916 75 75 76 76 protected static final String DEFAULT_LEVEL_ELEM = "defaultLevel"; 77 protected static final String DEFAULT_GDBM_LEVEL_ELEM = "defaultGDBMLevel"; 77 78 protected static final String LEVEL_ELEM = "level"; 78 79 protected static final String FIELD_ATT = "field"; … … 87 88 protected String NOT_OPERATOR = "!"; 88 89 89 // the default level for retrieval - and we'll use it for searching too90 // the default level for searching 90 91 protected String default_level=null; 91 92 // default level for gdbm db 93 protected String default_gdbm_level = null; 92 94 // which search services will we offer?? 93 95 protected boolean plain_search = false; … … 153 155 Element def = (Element) GSXML.getChildByTagName(info, DEFAULT_LEVEL_ELEM); 154 156 if (def != null) { 155 this.default_level = def.getAttribute(GSXML. NAME_ATT);157 this.default_level = def.getAttribute(GSXML.SHORTNAME_ATT); 156 158 } 157 159 if (this.default_level == null || this.default_level.equals("")) { 158 logger.error("default level not specified!"); 159 return false; 160 } 161 162 160 logger.error("default level not specified!, assuming Doc"); 161 this.default_level = "Doc"; 162 } 163 164 // Get the default GDBM level 165 def = (Element) GSXML.getChildByTagName(info, DEFAULT_GDBM_LEVEL_ELEM); 166 if (def != null) { 167 this.default_gdbm_level = def.getAttribute(GSXML.SHORTNAME_ATT); 168 } 169 if (this.default_gdbm_level == null || this.default_gdbm_level.equals("")) { 170 logger.error("default gdbm level not specified!, assuming Sec"); 171 this.default_gdbm_level = "Sec"; 172 } 173 174 // get display info from extra info - for levels 175 if (extra_info !=null) { 176 Document owner = info.getOwnerDocument(); 177 178 NodeList levels = info.getElementsByTagName(GSXML.LEVEL_ELEM); 179 Element config_search = (Element)GSXML.getChildByTagName(extra_info, GSXML.SEARCH_ELEM); 180 181 for (int i=0; i<levels.getLength();i++) { 182 Element lev = (Element)levels.item(i); 183 String name = lev.getAttribute(GSXML.NAME_ATT); 184 Element node_extra = GSXML.getNamedElement(config_search, 185 GSXML.LEVEL_ELEM, 186 GSXML.NAME_ATT, 187 name); 188 if (node_extra == null) { 189 logger.error("haven't found extra info for level named "+name); 190 continue; 191 } 192 193 // get the display elements if any - displayName 194 NodeList display_names = node_extra.getElementsByTagName(GSXML.DISPLAY_TEXT_ELEM); 195 if (display_names !=null) { 196 for (int j=0; j<display_names.getLength(); j++) { 197 Element e = (Element)display_names.item(j); 198 lev.appendChild(owner.importNode(e, true)); 199 } 200 } 201 } // for each level 202 } 203 163 204 // the format info is the same for all services 164 205 Element format_info = (Element)format_info_map.get(TEXT_QUERY_SERVICE); … … 330 371 NodeList levels = level_list.getElementsByTagName(LEVEL_ELEM); 331 372 for (int i=0; i<levels.getLength(); i++) { 332 level_ids.add(((Element)levels.item(i)).getAttribute(GSXML.NAME_ATT)); 333 level_names.add(getTextString("level."+level_ids.get(i), lang)); 334 } 335 373 Element level = (Element)levels.item(i); 374 String shortname = level.getAttribute(GSXML.SHORTNAME_ATT); 375 if (shortname.equals("")) { 376 continue; 377 } 378 level_ids.add(shortname); 379 String display_name = GSXML.getDisplayText(level, GSXML.DISPLAY_TEXT_NAME, lang, "en"); 380 if (display_name.equals("")) { 381 // we'll use the name, and the dictionary 382 display_name = level.getAttribute(GSXML.NAME_ATT); 383 if (display_name.equals("")) { 384 display_name = shortname; 385 } else { 386 display_name = getTextString("level."+display_name, lang); 387 } 388 } 389 level_names.add(display_name); 390 } 336 391 } 337 392 -
trunk/gsdl3/src/java/org/greenstone/gsdl3/service/GS2LuceneRetrieve.java
r13576 r13916 87 87 Element def = (Element) GSXML.getChildByTagName(info, DEFAULT_LEVEL_ELEM); 88 88 if (def != null) { 89 this.default_level = def.getAttribute(GSXML. NAME_ATT);89 this.default_level = def.getAttribute(GSXML.SHORTNAME_ATT); 90 90 } 91 91 if (this.default_level == null || this.default_level.equals("")) { -
trunk/gsdl3/src/java/org/greenstone/gsdl3/service/GS2MGPPRetrieve.java
r13575 r13916 72 72 Element def = (Element) GSXML.getChildByTagName(info, DEFAULT_LEVEL_ELEM); 73 73 if (def != null) { 74 this.default_level = def.getAttribute(GSXML. NAME_ATT);74 this.default_level = def.getAttribute(GSXML.SHORTNAME_ATT); 75 75 } 76 76 if (this.default_level == null || this.default_level.equals("")) { -
trunk/gsdl3/src/java/org/greenstone/gsdl3/service/GS2MGPPSearch.java
r13911 r13916 74 74 // the default level is also the level which gdbm is expecting 75 75 // this must not be overwritten 76 this.mgpp_src.setReturnLevel(this.default_ level);76 this.mgpp_src.setReturnLevel(this.default_gdbm_level); 77 77 // return term info 78 78 this.mgpp_src.setReturnTerms(true);
Note:
See TracChangeset
for help on using the changeset viewer.