1 26 27 package org.nextime.ion.frontoffice.objectSelector; 28 29 import java.util.Collection ; 30 import java.util.Hashtable ; 31 import java.util.Vector ; 32 33 import javax.servlet.http.HttpServletRequest ; 34 import javax.servlet.http.HttpServletResponse ; 35 36 import org.nextime.ion.common.IsOnline; 37 import org.nextime.ion.framework.helper.SearchResult; 38 import org.nextime.ion.framework.helper.Searcher; 39 import org.nextime.ion.framework.helper.Viewer; 40 import org.nextime.ion.framework.logger.Logger; 41 42 public class SearchPublications implements ObjectSelector { 43 44 public Collection selectObjects( 45 Hashtable params, 46 HttpServletRequest request, 47 HttpServletResponse response) 48 throws SelectException { 49 50 try { 51 String queryString = (String ) params.get("queryString"); 52 String view = (String ) params.get("view"); 53 String index = (String ) params.get("index"); 54 55 String currentLocale = 56 request.getSession().getAttribute("currentLocale") + ""; 57 58 Vector returnResults = new Vector (); 59 if (queryString.equals("") || index.equals("")) 60 return returnResults; 61 Vector results = Searcher.search(queryString, index); 62 63 int count = 0; 64 for (int i = 0; i < results.size(); i++) { 65 SearchResult result = (SearchResult) results.get(i); 66 67 if (result.getVersion() 69 == IsOnline.getMostRecentVersion(result.getPublication())) { 70 71 String viewResult = ""; 72 if (!view.equals("")) { 73 viewResult = 74 new String ( 75 Viewer.getView( 76 result.getPublication(), 77 result.getVersion(), 78 view, 79 currentLocale)); 80 } 81 82 SearchPublicationResult spr = new SearchPublicationResult(); 83 PublicationResult pr = new PublicationResult(); 84 pr.setPublication(result.getPublication()); 85 pr.setVersion(result.getVersion()); 86 pr.setView(viewResult); 87 spr.setPublicationResult(pr); 88 spr.setSearchResult(result); 89 90 returnResults.add(spr); 91 } 92 } 93 return returnResults; 94 } catch (Exception e) { 95 Logger.getInstance().error("Erreur du SelectObject", this, e); 96 throw new SelectException(e.getMessage()); 97 } 98 } 99 100 } | Popular Tags |