/*
 * OrderVerifier.java
 *
 * Created on 10 de agosto de 2004, 18:03
 */

package com.fenalco.servlets.shopkeeper;

import java.io.*;
import java.net.*;

import javax.servlet.*;
import javax.servlet.http.*;

/**
 * Este servlet verifica que la orden de pedido generada pueda ser cubierta por
 * los proveedores para el establecimiento seleccionado. Recibe de la página pedido.jsp
 * el parámetro storeId que es el id del establecimiento seleccionado por el minorista.
 * @author  Mario Linares Vásquez
 * 
 */
public class OrderVerifier extends HttpServlet {
    
    /** Inicializa el servlet.
     */
    public void init(ServletConfig config) throws ServletException {
        super.init(config);
        
    }
    
    /** Destructor de el servlet.
     */
    public void destroy() {
        
    }
    
    /** Procesa las solicitudes de los métodos HTTP <code>GET</code> y <code>POST</code>.
     *  Crea una instancia de Order con el constructor por omisión, toma los productos
     * del carrito y los agrega a la orden con setProducts, luego fija a la orden 
     * el id del establecimiento con el parámetro storeId del request y por último
     * invoca el método verifyOrder que retorna un false en caso que un producto no
     * pueda ser suplido por el proveedor.
     * En el caso que el resultado de la verificación sea falso se redirecciona el
     * flujo a la página pedido.jsp, en caso contrario se redirecciona al servlet
     * hecer pedido con el parámetro storeId.
     * @param request servlet request
     * @param response servlet response
     */
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        
    }
    
    /** Procesa el método HTTP <code>GET</code>.
     * @param request servlet request
     * @param response servlet response
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        processRequest(request, response);
    }
    
    /** Procesa el método HTTP  <code>POST</code> method.
     * @param request servlet request
     * @param response servlet response
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        processRequest(request, response);
    }
    
    /** Retorna una breve descripción de el servlet.
     */
    public String getServletInfo() {
        return "Short description";
    }
    
}
