Package com.alibaba.citrus.util.internal.webpagelite

Examples of com.alibaba.citrus.util.internal.webpagelite.ServletRequestContext


        page.processRequest(getRequestContext("/path/to/notFound"));
        assertEquals(-1, getResponseLastModified());
    }

    private ServletRequestContext getRequestContext(String name) {
        return new ServletRequestContext(request, response, servletContext, "http://localhost/myservlet", name) {
        };
    }
View Full Code Here


            }
        });
    }

    private void checkLastModified(RC request, long lastModified, Runnable runner) throws IOException {
        ServletRequestContext servletRequest = getServletRequestContext(request);

        // 假如:
        // 1. request为servlet request;
        //    并且,lastModified >= 0;
        //    并且,GET方法;
        // 2. 或者,lastModified > ifModifiedSince
        // 执行runner
        if (lastModified < 0 || servletRequest == null
            || !"get".equalsIgnoreCase(servletRequest.getRequest().getMethod())) {
            runner.run();
        } else {
            long ifModifiedSince = servletRequest.getRequest().getDateHeader("If-Modified-Since");

            if (ifModifiedSince < lastModified / 1000 * 1000) {
                if (lastModified >= 0) {
                    servletRequest.getResponse().setDateHeader("Last-Modified", lastModified);
                }

                runner.run();
            } else {
                servletRequest.getResponse().setStatus(SC_NOT_MODIFIED);
            }
        }
    }
View Full Code Here

    }

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        exporter.processRequest(new ServletRequestContext(request, response, getServletContext()));
    }
View Full Code Here

    }

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        exporter.processRequest(new ServletRequestContext(request, response, getServletContext()));
    }
View Full Code Here

            }
        });
    }

    private void checkLastModified(RC request, long lastModified, Runnable runner) throws IOException {
        ServletRequestContext servletRequest = getServletRequestContext(request);

        // ���磺
        // 1. requestΪservlet request��
        //    ���ң�lastModified >= 0��
        //    ���ң�GET������
        // 2. ���ߣ�lastModified > ifModifiedSince
        // ִ��runner
        if (lastModified < 0 || servletRequest == null
                || !"get".equalsIgnoreCase(servletRequest.getRequest().getMethod())) {
            runner.run();
        } else {
            long ifModifiedSince = servletRequest.getRequest().getDateHeader("If-Modified-Since");

            if (ifModifiedSince < lastModified / 1000 * 1000) {
                if (lastModified >= 0) {
                    servletRequest.getResponse().setDateHeader("Last-Modified", lastModified);
                }

                runner.run();
            } else {
                servletRequest.getResponse().setStatus(SC_NOT_MODIFIED);
            }
        }
    }
View Full Code Here

        exporter = new SchemaExporterWEB();
    }

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        exporter.processRequest(new ServletRequestContext(request, response, getServletContext()));
    }
View Full Code Here

TOP

Related Classes of com.alibaba.citrus.util.internal.webpagelite.ServletRequestContext

Copyright © 2018 www.massapicom. 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.