Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Licensed to the Apache Software Foundation (ASF) under one or more
   * contributor license agreements. See the NOTICE file distributed with this
   * work for additional information regarding copyright ownership. The ASF
   * licenses this file to You under the Apache License, Version 2.0 (the
   * "License"); you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   * 
   * http://www.apache.org/licenses/LICENSE-2.0
  * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
  * License for the specific language governing permissions and limitations under
  * the License.
  */
 package org.apache.sling.engine.impl.helper;
 
 import java.net.URL;
 import java.util.Set;
 
 
Wrapper around a ServletContext for an external servlet context, i.e. one returned by servletContext.getContext(String)
 
 
     private final ServletContext delegate;
 
         this. = sc;
     }
 
     public ServletContext getContext(String s) {
         return .getContext(s);
     }
 
     public int getMajorVersion() {
         return .getMajorVersion();
     }
 
     public int getMinorVersion() {
         return .getMinorVersion();
     }
 
     public String getMimeType(String s) {
         return .getMimeType(s);
     }
 
     public Set getResourcePaths(String s) {
         return .getResourcePaths(s);
     }
 
     public URL getResource(String sthrows MalformedURLException {
         return .getResource(s);
     }
 
     public InputStream getResourceAsStream(String s) {
         return .getResourceAsStream(s);
     }
 
         return new RequestDispatcherWrapper(.getRequestDispatcher(s));
     }
 
         return new RequestDispatcherWrapper(.getNamedDispatcher(s));
     }
 
     public Servlet getServlet(String sthrows ServletException {
         return .getServlet(s);
     }
 
     public Enumeration getServlets() {
         return .getServlets();
     }
 
     public Enumeration getServletNames() {
         return .getServletNames();
     }
 
     public void log(String s) {
         .log(s);
    }
    public void log(Exception exceptionString s) {
        .log(exceptions);
    }
    public void log(String sThrowable throwable) {
        .log(sthrowable);
    }
    public String getRealPath(String s) {
        return .getRealPath(s);
    }
    public String getServerInfo() {
        return .getServerInfo();
    }
    public String getInitParameter(String s) {
        return .getInitParameter(s);
    }
        return .getInitParameterNames();
    }
    public Object getAttribute(String s) {
        return .getAttribute(s);
    }
    public Enumeration getAttributeNames() {
        return .getAttributeNames();
    }
    public void setAttribute(String sObject obj) {
        .setAttribute(sobj);
    }
    public void removeAttribute(String s) {
        .removeAttribute(s);
    }
    public String getServletContextName() {
        return .getServletContextName();
    }
    static class RequestDispatcherWrapper implements RequestDispatcher {
        private final RequestDispatcher delegate;
        public RequestDispatcherWrapper(final RequestDispatcher rd) {
            this. = rd;
        }
        public void forward(final ServletRequest requestfinal ServletResponse responsethrows ServletException,
                IOException {
            .forward(unwrapServletRequest(request), unwrapServletResponse(response));
        }
        public void include(final ServletRequest requestfinal ServletResponse responsethrows ServletException,
                IOException {
            .include(unwrapServletRequest(request), unwrapServletResponse(response));
        }
        RequestDispatcher getDelegate() {
            return ;
        }
        static ServletRequest unwrapServletRequest(ServletRequest request) {
            ServletRequest lastRequest = request;
            while (request != null) {
                if (request instanceof SlingHttpServletRequestImpl) {
                    return ((SlingHttpServletRequestImplrequest).getRequest();
                } else if (request instanceof ServletRequestWrapper) {
                    lastRequest = request;
                    request = ((ServletRequestWrapperrequest).getRequest();
                } else {
                    return request;
                }
            }
            return lastRequest;
        }
        static ServletResponse unwrapServletResponse(ServletResponse response) {
            ServletResponse lastResponse = response;
            while (response != null) {
                if (response instanceof SlingHttpServletResponseImpl) {
                    return ((SlingHttpServletResponseImplresponse).getResponse();
                } else if (response instanceof ServletResponseWrapper) {
                    lastResponse = response;
                    response = ((ServletResponseWrapperresponse).getResponse();
                } else {
                    return response;
                }
            }
            return lastResponse;
        }
    }
New to GrepCode? Check out our FAQ X