Exemplo n.º 1
0
 public ServletWorkerRequest(HttpServlet servlet, HttpServletRequest req, HttpServletResponse resp)
     : base(req.getContextPath(), req.getServletPath(), req.getRequestURI())
 {
     _HttpServlet         = servlet;
     _HttpServletRequest  = req;
     _HttpServletResponse = resp;
 }
Exemplo n.º 2
0
        public void RegisterServlet(Type servletType)
        {
            try {
                HttpServlet httpServlet = (HttpServlet)Activator.CreateInstance(servletType);

                httpServlet.OnCreated();

                WebServletAttribute servletAttribute
                    = httpServlet.GetType().GetCustomAttribute(typeof(WebServletAttribute)) as WebServletAttribute;
                if (servletAttribute != null)
                {
                    AddMapping(servletAttribute.GetMappingRoute(), httpServlet);
                }
            }
            catch {
                // TODO Add Logger
            }
        }
Exemplo n.º 3
0
        private void InvokeServlet(HttpServlet resource, string remainingURL, HttpRequest request, HttpResponse response)
        {
            response.SetHeader(HeaderFields.CacheControl, HeaderFields.CacheControl_NoCahe);

            ServletPathPatternAttribute pattern =
                resource.GetType().GetCustomAttribute(typeof(ServletPathPatternAttribute))
                as ServletPathPatternAttribute;

            if (pattern != null)
            {
                foreach (var item in PathURLExtractor.ExtractPathVariable(pattern.PathPattern, remainingURL))
                {
                    request.AddParameter(item.Key, item.Value);
                }
            }

            resource?.Dispatch(request, response);
        }