package test.info.dragonlady.scriptlet;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.security.Principal;
import java.util.Collection;
import java.util.Enumeration;
import java.util.Hashtable;
import java.util.Locale;
import java.util.Map;

import javax.servlet.AsyncContext;
import javax.servlet.DispatcherType;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.servlet.http.Part;

public class TestHttpServletRequest implements HttpServletRequest {
	
	protected HttpSession session = new TestHttpSession();
	protected Hashtable<String, String> params = new Hashtable<String, String>();
	protected Hashtable<String, String> headers = new Hashtable<String, String>();
	protected String method = "POST";
	
	public void setMethod(String m) {
		method = m;
	}
	
	public String getAuthType() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getContextPath() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public Cookie[] getCookies() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public long getDateHeader(String name) {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return 0;
	}

	public String getHeader(String name) {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public Enumeration getHeaderNames() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return headers.keys();
	}

	public Enumeration getHeaders(String name) {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public int getIntHeader(String name) {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return 0;
	}

	public String getMethod() {
		return method;
	}

	public String getPathInfo() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getPathTranslated() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getQueryString() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getRemoteUser() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getRequestURI() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public StringBuffer getRequestURL() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getRequestedSessionId() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getServletPath() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public HttpSession getSession() {
		return session;
	}

	public HttpSession getSession(boolean create) {
		if(create) {
			session = new TestHttpSession();
		}
		return session;
	}

	public Principal getUserPrincipal() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public boolean isRequestedSessionIdFromCookie() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return false;
	}

	public boolean isRequestedSessionIdFromURL() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return false;
	}

	public boolean isRequestedSessionIdFromUrl() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return false;
	}

	public boolean isRequestedSessionIdValid() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return false;
	}

	public boolean isUserInRole(String role) {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return false;
	}

	public Object getAttribute(String name) {
		return session.getAttribute(name);
	}

	public Enumeration getAttributeNames() {
		return session.getAttributeNames();
	}

	public String getCharacterEncoding() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public int getContentLength() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return 0;
	}

	public String getContentType() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public ServletInputStream getInputStream() throws IOException {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getLocalAddr() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getLocalName() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public int getLocalPort() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return 0;
	}

	public Locale getLocale() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public Enumeration getLocales() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getParameter(String name) {
		return params.get(name);
	}

	public Map getParameterMap() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public Enumeration getParameterNames() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String[] getParameterValues(String name) {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getProtocol() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public BufferedReader getReader() throws IOException {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getRealPath(String path) {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getRemoteAddr() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getRemoteHost() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public int getRemotePort() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return 0;
	}

	public RequestDispatcher getRequestDispatcher(String path) {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getScheme() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public String getServerName() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return null;
	}

	public int getServerPort() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return 0;
	}

	public boolean isSecure() {
		// TODO �����������ꂽ���\�b�h�E�X�^�u
		return false;
	}

	public void removeAttribute(String name) {
		// TODO �����������ꂽ���\�b�h�E�X�^�u

	}

	public void setAttribute(String name, Object o) {
		// TODO �����������ꂽ���\�b�h�E�X�^�u

	}

	public void setCharacterEncoding(String env)
			throws UnsupportedEncodingException {
		// TODO �����������ꂽ���\�b�h�E�X�^�u

	}

	@Override
	public AsyncContext getAsyncContext() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public DispatcherType getDispatcherType() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public ServletContext getServletContext() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public boolean isAsyncStarted() {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public boolean isAsyncSupported() {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public AsyncContext startAsync() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public AsyncContext startAsync(ServletRequest arg0, ServletResponse arg1) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public boolean authenticate(HttpServletResponse arg0) throws IOException,
			ServletException {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public Part getPart(String arg0) throws IOException, IllegalStateException,
			ServletException {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public Collection<Part> getParts() throws IOException,
			IllegalStateException, ServletException {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public void login(String arg0, String arg1) throws ServletException {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void logout() throws ServletException {
		// TODO Auto-generated method stub
		
	}

}
