📄 managesearch.java
字号:
HttpSession session ) throws IOException, ServletException, JahiaException { // set the default action request.setAttribute("subAction","chooseoperation"); // set the default step request.setAttribute("go","change"); // default values String operation = "doindex"; String val = null; val = (String)values.get("operation"); if ( val != null ) { operation = val; } // check if the index exists yet for the current site. String indexPath = searchServ.getSiteIndex(site.getID()); boolean indexExists = (indexPath != null ); values.put("operation",operation); request.setAttribute("operation",operation); request.setAttribute("indexExists",new Boolean(indexExists)); doRedirect( request, response, JSP + "operations" ); } //-------------------------------------------------------------------------- /** * Process the form choose operations. * * @author Khue Nguyen <a href="mailto:khue@jahia.org">khue@jahia.org</a> * * @param request Servlet request. * @param response Servlet response. * @param session Servlet session for the current user. */ private void processChooseOperation( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException, JahiaException { // get submitted data String operation = request.getParameter("operation"); if ( operation == null ) displayMain(request,response,session); values.put("operation",operation); if ( operation.equals("doindex") ){ displayIndexForm(request,response,session); } else if ( operation.equals("dooptimize") ){ displayOptimizeForm(request,response,session); } else { displayMain( request, response, session ); } } //-------------------------------------------------------------------------- /** * Index the site. * * @author Khue Nguyen <a href="mailto:khue@jahia.org">khue@jahia.org</a> * * @param request Servlet request. * @param response Servlet response. * @param session Servlet session for the current user. */ private void processDoIndex( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException, JahiaException { if ( !user.isRoot() ){ displayError(request,response,"You must be logged as Root Administrator for this operation"); return; } synchronized (mLock){ // get submitted data String go = request.getParameter("go"); if ( go == null ) displayMain(request,response,session); if ( go.equals("ok") ){ boolean result = false; byte[] jahiaLock = null; try { try { jahiaLock = Jahia.getLock(user,session); if ( jahiaLock == null ){ session.setAttribute(CLASS_NAME + "jahiaDisplayMessage", "Cannot lock jahia in exclusive access mode"); JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "menu.jsp" ); return; } } catch ( JahiaException je ){ session.setAttribute(CLASS_NAME + "jahiaDisplayMessage", je.getMessage()); JahiaAdministration.doRedirect( request, response, session, JSP_PATH + "menu.jsp" ); return; } // process the indexation of the full site. result = searchServ.indexSite(site.getID()); searchServ.optimizeIndex(site.getID()); } finally { Jahia.releaseLock(jahiaLock); } request.setAttribute("result",new Boolean(result)); // set the default action request.setAttribute("subAction","display"); // set the default step request.setAttribute("go","change"); doRedirect( request, response, JSP + "indexresult" ); } else { displayMain(request,response,session); } } } //-------------------------------------------------------------------------- /** * Display the indexation form. * * @author Khue Nguyen <a href="mailto:khue@jahia.org">khue@jahia.org</a> * * @param request Servlet request. * @param response Servlet response. * @param session Servlet session for the current user. */ private void displayIndexForm( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException, JahiaException { // set the default action request.setAttribute("subAction","doindex"); // set the default event request.setAttribute("go","change"); doRedirect( request, response, JSP + "index" ); } //-------------------------------------------------------------------------- /** * Display the optimization form. * * @author Khue Nguyen <a href="mailto:khue@jahia.org">khue@jahia.org</a> * * @param request Servlet request. * @param response Servlet response. * @param session Servlet session for the current user. */ private void displayOptimizeForm( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException, JahiaException { // set the default action request.setAttribute("subAction","dooptimize"); // set the default event request.setAttribute("go","change"); doRedirect( request, response, JSP + "optimize" ); } //-------------------------------------------------------------------------- /** * Optimize the index. * * @author Khue Nguyen <a href="mailto:khue@jahia.org">khue@jahia.org</a> * * @param request Servlet request. * @param response Servlet response. * @param session Servlet session for the current user. */ private void processDoOptimize( HttpServletRequest request, HttpServletResponse response, HttpSession session ) throws IOException, ServletException, JahiaException { // get submitted data String go = request.getParameter("go"); if ( go == null ) displayMain(request,response,session); if ( go.equals("ok") ){ // process the indexation of the full site. boolean result = searchServ.optimizeIndex(site.getID()); request.setAttribute("result",new Boolean(result)); // set the default action request.setAttribute("subAction","display"); // set the default step request.setAttribute("go","change"); doRedirect( request, response, JSP + "optimizeresult" ); } else { displayMain(request,response,session); } } //-------------------------------------------------------------------------- /** * Forward to error page. * * @author Khue Nguyen <a href="mailto:khue@jahia.org">khue@jahia.org</a> * * @param request Servlet request. * @param response Servlet response. * @param String the warning msg. */ private void displayError( HttpServletRequest request, HttpServletResponse response, String msg ) throws IOException, ServletException { request.setAttribute("warningMsg",msg); doRedirect( request, response, JSP + "error" ); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -