/* * Copyright (C) 2009 eXo Platform SAS. * * This is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation; either version 2.1 of * the License, or (at your option) any later version. * * This software is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this software; if not, write to the Free * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301 USA, or see the FSF site: http://www.fsf.org. */ package org.exoplatform.test; import org.exoplatform.services.log.ExoLogger; import org.exoplatform.services.log.Log; import java.io.IOException; import java.io.InputStream; import java.net.MalformedURLException; import java.net.URL; import java.util.Enumeration; import java.util.EventListener; import java.util.HashMap; import java.util.HashSet; import java.util.Map; import java.util.Set; import java.util.Vector; import javax.servlet.Filter; import javax.servlet.FilterRegistration; import javax.servlet.RequestDispatcher; import javax.servlet.Servlet; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.ServletRegistration; import javax.servlet.SessionCookieConfig; import javax.servlet.SessionTrackingMode; import javax.servlet.descriptor.JspConfigDescriptor; /** * Created by The eXo Platform SARL . Author : Mestrallet Benjamin * benjmestrallet@users.sourceforge.net Date: Jul 25, 2003 Time: 12:26:58 AM */ public class MockServletContext implements ServletContext { private static final Log LOG = ExoLogger.getLogger("org.exoplatform.test.MockServletContext"); private String name_; private Map<String, String> initParams_; private Map<String, Object> attributes_; private String contextPath_; private StringBuffer logBuffer = new StringBuffer(); public MockServletContext() { this("portlet_app_1"); } public MockServletContext(String name) { this(name, "/" + name); } public MockServletContext(String name, String path) { this.name_ = name; this.contextPath_ = path; this.initParams_ = new HashMap<String, String>(); this.attributes_ = new HashMap<String, Object>(); this.attributes_.put("javax.servlet.context.tempdir", path); } public void setName(String name) { name_ = name; } public String getLogBuffer() { try { return logBuffer.toString(); } finally { logBuffer = new StringBuffer(); } } public ServletContext getContext(String s) { return null; } public int getMajorVersion() { return 3; } public int getMinorVersion() { return 0; } public String getMimeType(String s) { return "text/html"; } public Set<String> getResourcePaths(String s) { Set<String> set = new HashSet<String>(); set.add("/test1"); set.add("/WEB-INF"); set.add("/test2"); return set; } public URL getResource(String s) throws MalformedURLException { String path = "file:" + contextPath_ + s; URL url = new URL(path); return url; } public InputStream getResourceAsStream(String s) { try { return getResource(s).openStream(); } catch (IOException e) { LOG.error(e); } return null; } public RequestDispatcher getRequestDispatcher(String s) { return null; } public RequestDispatcher getNamedDispatcher(String s) { return null; } public Servlet getServlet(String s) throws ServletException { return null; } public Enumeration<Servlet> getServlets() { return null; } public Enumeration<String> getServletNames() { return null; } public void log(String s) { logBuffer.append(s); } public void log(Exception e, String s) { logBuffer.append(s + e.getMessage()); } public void log(String s, Throwable throwable) { logBuffer.append(s + throwable.getMessage()); } public void setContextPath(String s) { contextPath_ = s; } public String getRealPath(String s) { return contextPath_ + s; } public String getServerInfo() { return null; } public boolean setInitParameter(String name, String value) { initParams_.put(name, value); return true; } public String getInitParameter(String name) { return (String)initParams_.get(name); } public Enumeration<String> getInitParameterNames() { Vector<String> keys = new Vector<String>(initParams_.keySet()); return keys.elements(); } public Object getAttribute(String name) { return attributes_.get(name); } public Enumeration<String> getAttributeNames() { Vector<String> keys = new Vector<String>(attributes_.keySet()); return keys.elements(); } public void setAttribute(String name, Object value) { attributes_.put(name, value); } public void removeAttribute(String name) { attributes_.remove(name); } public String getServletContextName() { return name_; } public String getContextPath() { return contextPath_; } // servlet 3.0 API public int getEffectiveMajorVersion() { return 3; } public int getEffectiveMinorVersion() { return 0; } public javax.servlet.ServletRegistration.Dynamic addServlet(String servletName, String className) { return null; } public javax.servlet.ServletRegistration.Dynamic addServlet(String servletName, Servlet servlet) { return null; } public javax.servlet.ServletRegistration.Dynamic addServlet(String servletName, Class<? extends Servlet> servletClass) { return null; } public <T extends Servlet> T createServlet(Class<T> clazz) throws ServletException { return null; } public ServletRegistration getServletRegistration(String servletName) { return null; } public Map<String, ? extends ServletRegistration> getServletRegistrations() { return null; } public javax.servlet.FilterRegistration.Dynamic addFilter(String filterName, String className) { return null; } public javax.servlet.FilterRegistration.Dynamic addFilter(String filterName, Filter filter) { return null; } public javax.servlet.FilterRegistration.Dynamic addFilter(String filterName, Class<? extends Filter> filterClass) { return null; } public <T extends Filter> T createFilter(Class<T> clazz) throws ServletException { return null; } public FilterRegistration getFilterRegistration(String filterName) { return null; } public Map<String, ? extends FilterRegistration> getFilterRegistrations() { return null; } public SessionCookieConfig getSessionCookieConfig() { return null; } public void setSessionTrackingModes(Set<SessionTrackingMode> sessionTrackingModes) { } public Set<SessionTrackingMode> getDefaultSessionTrackingModes() { return null; } public Set<SessionTrackingMode> getEffectiveSessionTrackingModes() { return null; } public void addListener(String className) { } public <T extends EventListener> void addListener(T t) { } public void addListener(Class<? extends EventListener> listenerClass) { } public <T extends EventListener> T createListener(Class<T> clazz) throws ServletException { return null; } public JspConfigDescriptor getJspConfigDescriptor() { return null; } public ClassLoader getClassLoader() { return null; } public void declareRoles(String... roleNames) { } }