01: /*
02: * $Header: /cvsroot/mvnforum/mvnforum/src/com/mvnforum/RequestProcessor.java,v 1.7 2007/10/09 11:09:22 lexuanttkhtn Exp $
03: * $Author: lexuanttkhtn $
04: * $Revision: 1.7 $
05: * $Date: 2007/10/09 11:09:22 $
06: *
07: * ====================================================================
08: *
09: * Copyright (C) 2002-2007 by MyVietnam.net
10: *
11: * All copyright notices regarding mvnForum MUST remain
12: * intact in the scripts and in the outputted HTML.
13: * The "powered by" text/logo with a link back to
14: * http://www.mvnForum.com and http://www.MyVietnam.net in
15: * the footer of the pages MUST remain visible when the pages
16: * are viewed on the internet or intranet.
17: *
18: * This program is free software; you can redistribute it and/or modify
19: * it under the terms of the GNU General Public License as published by
20: * the Free Software Foundation; either version 2 of the License, or
21: * any later version.
22: *
23: * This program is distributed in the hope that it will be useful,
24: * but WITHOUT ANY WARRANTY; without even the implied warranty of
25: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
26: * GNU General Public License for more details.
27: *
28: * You should have received a copy of the GNU General Public License
29: * along with this program; if not, write to the Free Software
30: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
31: *
32: * Support can be obtained from support forums at:
33: * http://www.mvnForum.com/mvnforum/index
34: *
35: * Correspondence and Marketing Questions can be sent to:
36: * info at MyVietnam net
37: *
38: * @author: Luis Miguel Hernanz
39: * @author: Minh Nguyen
40: */
41: package com.mvnforum;
42:
43: import javax.servlet.http.HttpServletRequest;
44: import javax.servlet.http.HttpServletResponse;
45:
46: /**
47: * Interface to hook additional preprocessing to the user request.
48: * This interface is meatn as extension points to ease the integration
49: * of the forum system with external systems.
50: *
51: * @author <a href="luish@germinus.com">Luis Miguel Hernanz</a>
52: * @version $Revision: 1.7 $
53: */
54: public interface RequestProcessor {
55:
56: /**
57: * This is the first method called in the request processing.
58: *
59: * @param request a <code>HttpServletRequest</code> value
60: * @param response a <code>HttpServletResponse</code> value
61: * @return the new responseURI to redirect to. The control will be
62: * forwarded to this page (if responseURI is an jsp). No furher
63: * processing will take place.
64: */
65: public String preLogin(HttpServletRequest request,
66: HttpServletResponse response);
67:
68: /**
69: * The method receives teh user request just before the
70: * authentication has been checked.
71: *
72: * @param request a <code>HttpServletRequest</code> value
73: * @param response a <code>HttpServletResponse</code> value
74: * @return the new responseURI to redirect to.
75: */
76: public String preProcess(HttpServletRequest request,
77: HttpServletResponse response);
78:
79: /**
80: * This method is called just before the call to the final request
81: * dispatcher forward.
82: *
83: * @param request a <code>HttpServletRequest</code> value
84: * @param response a <code>HttpServletResponse</code> value
85: * @param responseURI the path to which the control will be
86: * forwarded after this method has finished.
87: * @return the new responseURI to redirect to.
88: */
89: public String postProcess(HttpServletRequest request,
90: HttpServletResponse response, String responseURI);
91:
92: }
|