package com.marinilli.b2.c5;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;

/**
 * Chapter 5 - A Simple Servlet License Manager
 *
 * @author Mauro Marinilli
 * @version 1.0
 */

public class LicenseServlet extends HttpServlet {

  /**
   * Initialize global variables
   */
  public void init(ServletConfig config) throws ServletException {
    super.init(config);
  }

  /**
   * Process the HTTP Get request
   */
  public void doGet(HttpServletRequest request,
                    HttpServletResponse response)
                        throws ServletException, IOException {

    String id = unscramble(request.getParameter("license-id"));
    String pwd = unscramble(request.getParameter("license-pwd"));
    Boolean outcome =  new Boolean(check(id, pwd));
    response.setContentType("text/html");
    response.addHeader("outcome", outcome.toString());
    PrintWriter out = response.getWriter();
    if (outcome.booleanValue()){
      out.println("Congratulations for registering your copy!"+
                  " Thank You for your choice. Please visit our web site.");
    } else {
      out.println("Sorry. License Not Valid.");
      out.println("Please Try Again.");
    }
  }

  /**
   * Clean up resources
   */
  public void destroy() {
  }

  /**
   * un-scramble a string
   */
  private String unscramble(String s) {
    return s;
  }

  /**
   * check if this pair is a valid license
   */
  private boolean check(String id, String pwd) {
    //
    return (id.charAt(0)==pwd.charAt(0));
  }

}