package web.controller; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Représente un mapping d'URL, permettant d'interpréter une requête, et de fournir une réponse * @author jc * */ public class Mapping { protected String requestURL; protected String responseURL; protected Class controllerClass; public Mapping(String requestURL, String responseURL) { //TODO à implémenter } public Mapping(String requestURL, String responseURL, Class controllerClass) { //TODO à implémenter } /** * @return l'instance de la classe de contrôle */ public IMappingControl getMappingControl(){ //TODO à implémenter return null; } /** * Retourne l'url de réponse associée à la requête * @param request requête * @return url de réponse */ protected String getResponseURL(HttpServletRequest request){ //TODO à implémenter return ""; } /** * Effectue la redirection vers la requête appropriée * @param request * @param response * @return */ protected boolean process(HttpServletRequest request,HttpServletResponse response){ //TODO à implémenter return false; } /** * Vérifie que la requête correspond à requestURL du mapping courant * @param request requête * @return vrai si la requête correspond au mapping courant */ public boolean matches(HttpServletRequest request){ //TODO à implémenter return false; } /** * Appelle le process en tenant compte de l'appel des méthode sur l'instance IMappingControl * Dans l'ordre : si beforeProcessAction alors (si isValid, process sinon onInvalidControl) * @param request requête * @param response réponse * @return vrai si le mapping a été effectué sans erreur */ public boolean execute(HttpServletRequest request,HttpServletResponse response){ //TODO à implémenter return false; } }