⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 adminprotocolhandler.java

📁 J2ME MIDP_Example_Applications
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
// Copyright 2002 Nokia Corporation. 
// 
// THIS SOURCE CODE IS PROVIDED 'AS IS', WITH NO WARRANTIES WHATSOEVER, 
// EXPRESS OR IMPLIED, INCLUDING ANY WARRANTY OF MERCHANTABILITY, FITNESS 
// FOR ANY PARTICULAR PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE 
// OR TRADE PRACTICE, RELATING TO THE SOURCE CODE OR ANY WARRANTY OTHERWISE 
// ARISING OUT OF ANY PROPOSAL, SPECIFICATION, OR SAMPLE AND WITH NO 
// OBLIGATION OF NOKIA TO PROVIDE THE LICENSEE WITH ANY MAINTENANCE OR 
// SUPPORT. FURTHERMORE, NOKIA MAKES NO WARRANTY THAT EXERCISE OF THE 
// RIGHTS GRANTED HEREUNDER DOES NOT INFRINGE OR MAY NOT CAUSE INFRINGEMENT 
// OF ANY PATENT OR OTHER INTELLECTUAL PROPERTY RIGHTS OWNED OR CONTROLLED 
// BY THIRD PARTIES 
// 
// Furthermore, information provided in this source code is preliminary, 
// and may be changed substantially prior to final release. Nokia Corporation 
// retains the right to make changes to this source code at 
// any time, without notice. This source code is provided for informational 
// purposes only. 
// 
// Nokia and Nokia Connecting People are registered trademarks of Nokia
// Corporation.
// Java and all Java-based marks are trademarks or registered trademarks of
// Sun Microsystems, Inc.
// Other product and company names mentioned herein may be trademarks or
// trade names of their respective owners.
// 
// A non-exclusive, non-transferable, worldwide, limited license is hereby 
// granted to the Licensee to download, print, reproduce and modify the 
// source code. The licensee has the right to market, sell, distribute and 
// make available the source code in original or modified form only when 
// incorporated into the programs developed by the Licensee. No other 
// license, express or implied, by estoppel or otherwise, to any other 
// intellectual property rights is granted herein.


package example.delivery;

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


class AdminProtocolHandler 
{
    private static final String SERVICE_NAME = "delivery";
    private static final String ADMIN_MAIN = "/admin";
    private CourierDatabase courierDatabase;
    private DeliveryOrderDatabase deliveryOrderDatabase;


    void init(CourierDatabase courierDatabase,
              DeliveryOrderDatabase deliveryOrderDatabase)
    {
        this.courierDatabase = courierDatabase;
        this.deliveryOrderDatabase = deliveryOrderDatabase;
    }


    void doGet(HttpServletRequest request, HttpServletResponse response)
        throws IOException, ServletException
    {
        try
        {
            response.setContentType("text/html");
            PrintWriter out = response.getWriter();

            String pathInfo = request.getPathInfo();
            if (pathInfo.equals("/admin"))
            {
                writeAdminPage(out, request.getContextPath());
            }
            else if (pathInfo.equals("/admin-create-courier"))
            {
                writeCreateCourierPage(out, request.getContextPath());
            }
            else if (pathInfo.equals("/admin-delete-courier"))
            {
                writeDeleteCourierPage(out, request.getContextPath());
            }
            else if (pathInfo.equals("/admin-courier"))
            {
                writeListCourierPage(out, request.getContextPath());
            }
            else if (pathInfo.equals("/admin-create-deliveryOrder"))
            {
                writeCreateDeliveryOrderPage(out, request.getContextPath());
            }
            else if (pathInfo.equals("/admin-delete-deliveryOrder"))
            {
                writeDeleteDeliveryOrderPage(out, request.getContextPath());
            }
            else if (pathInfo.equals("/admin-deliveryOrder"))
            {
                writeListDeliveryOrderPage(out, request.getContextPath());
            }
            else
            {
                response.sendError(HttpServletResponse.SC_BAD_REQUEST,
                                   "Unexpected path info");
            }
            out.close();
        }
        catch(Exception e)
        {
            writeErrorPage(response, e.getMessage(), request.getContextPath());
        }
    }


    private void writeCreateCourierPage(PrintWriter out, String contextPath)
        throws IOException
    {
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Create Courier</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Create Courier</h1>");
        out.println("<form method=\"POST\" action=\"" +
                    contextPath +
                    "/admin-create-courier\">");
        out.println("<table>");
        out.println("<tr><td>Name:</td>");
        out.println("<td><input type=text size=16 maxlength=16 " +
                    "name=name></td></tr>");
        out.println("<tr><td>Password:</td>");
        out.println("<td><input type=password size=8 maxlength=8 " +
                    "name=password></td></tr>");
        out.println("<tr><td colspan=2 align=center>");
        out.println("<input type=submit value=\"Create\">");
        out.println("</td></tr>");
        out.println("</table>");
        out.println("</form>");
        out.println("<br><p><font color=\"red\">" +
                    "Note: couriers are not stored persistently in" +
                    " this prototype.</font></p>");
        out.println("<p><a href=\"" + contextPath + ADMIN_MAIN + 
                    "\">Courier and Delivery Order Administration</a></p>");
        out.println("</body>");
        out.println("</html>");
    }


    private void writeDeleteCourierPage(PrintWriter out, String contextPath)
        throws IOException
    {
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Delete Courier</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Delete Courier</h1>");
        out.println("<form method=\"POST\" action=\"" +
                    contextPath +
                    "/admin-delete-courier\">");
        out.println("Delete an existing courier :");
        out.println("<table>");
        out.println("<tr><td>Name:</td>");
        out.println("<td><input type=text size=16 maxlength=16 " +
                    "name=name></td></tr>");
        out.println("<tr><td>Password:</td>");
        out.println("<td><input type=password size=8 maxlength=8 " +
                    "name=password></td></tr>");
        out.println("<tr><td colspan=2 align=center>");
        out.println("<input type=submit value=\"Delete\">");
        out.println("</td></tr>");
        out.println("</table>");
        out.println("</form>");
        out.println("<p><font color=\"red\">" +
                    "Note: couriers are not stored persistently in" +
                    " this prototype.</font></p>");
        out.println("<br><p><a href=\"" + contextPath + ADMIN_MAIN +
                    "\">Courier and Delivery Order Administration</a></p>");
        out.println("</body>");
        out.println("</html>");
    }


    private void writeListCourierPage(PrintWriter out, String contextPath)
        throws IOException
    {
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Couriers</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Couriers</h1>");

        out.println("<form method=\"GET\" action=\"" +
                    contextPath +
                    "/admin-create-courier\">");
        out.println("<input type=submit value=\"Courier Create\">");
        out.println("</form>");
        out.println("<form method=\"GET\" action=\"" +
                    contextPath +
                    "/admin-delete-courier\">");
        out.println("<input type=submit value=\"Courier Delete\">");
        out.println("</form>");


        out.println("<table cellpadding=\"3\" border=\"3\">");
        out.println("<tr><th>Name</th></tr>");
        Iterator iter = courierDatabase.getAllCouriers().iterator();
        while (iter.hasNext())
        {
            Courier courier = (Courier)(iter.next());
            String name = courier.getUsername();
            out.println("<tr><td>" + name + "</td></tr>");
        }
        out.println("</table>");


        out.println("<br><p><font color=\"red\">" +
                    "Note: couriers are not stored persistently in" +
                    " this prototype.</font></p>");
        out.println("<p><a href=\"" + contextPath + ADMIN_MAIN +
                    "\">Courier and Delivery Order Administration</a></p>");
        out.println("</body>");
        out.println("</html>");
    }


    private void writeCreateDeliveryOrderPage(PrintWriter out,
                                              String contextPath)
        throws IOException
    {
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Create Delivery Order</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Create Delivery Order</h1>");
        out.println("<form method=\"POST\" action=\"" +
                    contextPath +
                    "/admin-create-deliveryOrder\">");

        out.println("<table>");
        out.println("<tr><td>Description:</td>");
        out.println("<td><input type=text size=75 maxlength=75 " +
                    "name=description></td></tr>");
        out.println("<tr><td>Sender Address:</td>");
        out.println("<td><input type=text size=75 maxlength=75 " +
                    "name=senderAddress></td></tr>");
        out.println("<tr><td>Recipient Address:</td>");
        out.println("<td><input type=text size=75 maxlength=75 " +
                    "name=recipientAddress></td></tr>");
        out.println("<tr><td>Note:</td>");
        out.println("<td><input type=text size=75 maxlength=75 " +
                    "name=note></td></tr>");
        out.println("<tr><td colspan=2 align=center>");
        out.println("<input type=submit value=\"Create\">");
        out.println("</td></tr>");
        out.println("</table>");

        out.println("</form>");
        out.println("<br><p><font color=\"red\">" +
                    "Note: delivery requests are not stored " +
                    " persistently in this prototype.</font></p>");
        out.println("<p><a href=\"" + contextPath + ADMIN_MAIN +
                    "\">Courier and Delivery Order Administration</a></p>");
        out.println("</body>");
        out.println("</html>");
    }


    private void writeDeleteDeliveryOrderPage(PrintWriter out,
                                              String contextPath)
        throws IOException
    {
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Delete Delivery Order</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Delete Delivery Order</h1>");
        out.println("<form method=\"POST\" action=\"" +
                    contextPath +
                    "/admin-delete-deliveryOrder\">");
        out.println("Delete an existing deliveryOrder :");
        out.println("<table>");
        out.println("<tr><td>Delivery Order Id:</td>");
        out.println("<td><input type=text size=40 maxlength=40 " +
                    "name=id></td></tr>");
        out.println("<tr><td colspan=2 align=center>");
        out.println("<input type=submit value=\"Delete\">");
        out.println("</td></tr>");
        out.println("</table>");
        out.println("</form>");
        out.println("<p><font color=\"red\">" +
                    "Note: delivery requests are not stored" +
                    " persistently in this prototype.</font></p>");
        out.println("<br><p><a href=\"" + contextPath + ADMIN_MAIN +
                    "\">Courier and Delivery Order Administration</a></p>");
        out.println("</body>");
        out.println("</html>");
    }


    private void writeListDeliveryOrderPage(PrintWriter out, String contextPath)
        throws IOException
    {
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Delivery Orders</title>");
        out.println("</head>");
        out.println("<body>");

        out.println("<h1>Delivery Orders</h1>");
        out.println("<form method=\"GET\" action=\"" +
                    contextPath +
                    "/admin-create-deliveryOrder\">");
        out.println("<input type=submit value=\"Create Delivery Order\">");
        out.println("</form>");
        out.println("<form method=\"GET\" action=\"" +
                    contextPath +
                    "/admin-delete-deliveryOrder\">");
        out.println("<input type=submit value=\"Delete Delivery Order\">");
        out.println("</form>");

        out.println("<table cellpadding=\"3\" border=\"3\">");
        out.println("<tr>");
        out.println("<th>Id</th>");
        out.println("<th>Opened Date</th>");
        out.println("<th>Closed Date</th>");
        out.println("<th>Status</th>");
        out.println("<th>Courier<br>Name</th>");
        out.println("<th>Description</th>");
        out.println("<th>Sender Address</th>");
        out.println("<th>Recipient Address</th>");
        out.println("<th>Note</th>");
        out.println("</tr>");

        Iterator iter = deliveryOrderDatabase.
                            getAllDeliveryOrders().iterator();
        while (iter.hasNext())
        {
            DeliveryOrder deliveryOrder = (DeliveryOrder)(iter.next());
            out.println("<tr>");
            out.println("<td>" + deliveryOrder.getId() + "</td>");
            out.println("<td>" + deliveryOrder.getOpenedTime() + "</td>");
            out.println("<td>" + deliveryOrder.getClosedTime() + "</td>");
            out.println("<td>" + deliveryOrder.getStatus() + "</td>");

            String courierName = deliveryOrder.getCourierName();
            if (courierName == null)
            {
               courierName = "";

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -