Package filters

Source Code of filters.OrderFilter

/*
*
* Copyright 2001 Sun Microsystems, Inc. All Rights Reserved.
*
* This software is the proprietary information of Sun Microsystems, Inc. 
* Use is subject to license terms.
*
*/

package filters;

import java.io.IOException;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.sql.Timestamp;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import database.BookDetails;
import cart.*;
import java.util.*;
import util.*;

public final class OrderFilter implements Filter {

      private FilterConfig filterConfig = null;

      public void init(FilterConfig filterConfig) throws ServletException {
          this.filterConfig = filterConfig;
      }
   
      public void destroy() {
          this.filterConfig = null;
      }
      public void doFilter(ServletRequest request, ServletResponse response,
                               FilterChain chain) throws IOException, ServletException {

      if (filterConfig == null)
          return;

      // Render the generic servlet request properties
      StringWriter sw = new StringWriter();
      PrintWriter writer = new PrintWriter(sw);
      ServletContext context = filterConfig.getServletContext();
      Counter counter = (Counter)context.getAttribute("orderCounter");
      HttpServletRequest hsr = (HttpServletRequest)request;
      HttpSession session = hsr.getSession();
      ShoppingCart cart =
          (ShoppingCart)session.getAttribute("cart");
            Currency c = new Currency();
            c.setLocale(request.getLocale());
            c.setAmount(cart.getTotal());
      writer.println();
      writer.println("=======================================================");
      writer.println("The total number of orders is: " + counter.incCounter());
      writer.println("This order Received at " +
          (new Timestamp(System.currentTimeMillis())));
      writer.println();
      writer.print("Purchased by: " + request.getParameter("cardname"));
      writer.println();
      writer.print("Total: "  + c.getFormat());
      writer.println();
           
            int num = cart.getNumberOfItems();
      if (num > 0) {
            Iterator i = cart.getItems().iterator();
            while (i.hasNext()) {
                  ShoppingCartItem item = (ShoppingCartItem) i.next();
                  BookDetails bookDetails = (BookDetails) item.getItem();
                  writer.print("ISBN: "  + bookDetails.getBookId());
                  writer.print("   Title: "  + bookDetails.getTitle());
                  writer.print("   Quantity: " + item.getQuantity());
                  writer.println();     
            }
      }


      writer.println("=======================================================");

      // Log the resulting string
      writer.flush();
      context.log(sw.getBuffer().toString());
      chain.doFilter(request, response);
    }

    public String toString() {
      if (filterConfig == null)
            return ("OrderFilter()");
      StringBuffer sb = new StringBuffer("OrderFilter(");
      sb.append(filterConfig);
      sb.append(")");
      return (sb.toString());

    }


}
TOP

Related Classes of filters.OrderFilter

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.